Browse Source

Устранено дублирование: storage_total_size/unit_size вместо storage_maxsize_gb/autoload_maxsize_mb

topo_upd
Evgeny 2 months ago
parent
commit
876155688f
  1. 10
      src/chat/chat_msg.c
  2. 2
      src/chat/chat_setting.c
  3. 2
      src/config_parser.c
  4. 2
      utun.conf.sample

10
src/chat/chat_msg.c

@ -516,15 +516,15 @@ static void md_auto_download(struct UTUN_INSTANCE* inst,
uint64_t ts, const uint8_t* author_sig, uint64_t ts, const uint8_t* author_sig,
uint64_t author, int64_t msg_id) { uint64_t author, int64_t msg_id) {
if (!chat_setting_get_int("storage_autoload", 1)) return; if (!chat_setting_get_int("storage_autoload", 1)) return;
int max_mb = chat_setting_get_int("storage_autoload_maxsize_mb", 10); uint64_t max_size = g_cc.inst->config->global.chatserver_storage_unit_size;
const char* p = data_str; const char* p = data_str;
while (*p && *p != '|') p++; /* skip base filename */ while (*p && *p != '|') p++;
if (!*p) return; p++; if (!*p) return; p++;
long long fsize = strtoll(p, (char**)&p, 10); long long fsize = strtoll(p, (char**)&p, 10);
if (fsize > (long long)max_mb * 1024 * 1024) { if (max_size > 0 && fsize > (long long)max_size) {
DEBUG_INFO(DEBUG_CATEGORY_DB_SYNC, "%s: media too large (%lld > %d MB), skip auto-download", DEBUG_INFO(DEBUG_CATEGORY_DB_SYNC, "%s: media too large (%lld > %llu bytes), skip auto-download",
CC_ID, fsize, max_mb); CC_ID, fsize, (unsigned long long)max_size);
return; return;
} }
md_start_download(inst, data_str, data_len, ch_id, base_filename, ts, author_sig, author, msg_id); md_start_download(inst, data_str, data_len, ch_id, base_filename, ts, author_sig, author, msg_id);

2
src/chat/chat_setting.c

@ -35,8 +35,6 @@ struct chat_setting_def {
static const struct chat_setting_def g_setting_defs[] = { static const struct chat_setting_def g_setting_defs[] = {
{"storage_autoload", CHAT_SETTING_BOOL, 1, 0, 1}, {"storage_autoload", CHAT_SETTING_BOOL, 1, 0, 1},
{"storage_autoload_maxsize_mb", CHAT_SETTING_INT, 10, 1, 500},
{"storage_maxsize_gb", CHAT_SETTING_INT, 1, 1, 100},
{"opus_codec_preset", CHAT_SETTING_INT, 1, 0, 4}, {"opus_codec_preset", CHAT_SETTING_INT, 1, 0, 4},
{"compressor_enabled", CHAT_SETTING_BOOL, 0, 0, 1}, {"compressor_enabled", CHAT_SETTING_BOOL, 0, 0, 1},
{"compressor_max_gain_db", CHAT_SETTING_INT, 25, 1, 100}, {"compressor_max_gain_db", CHAT_SETTING_INT, 25, 1, 100},

2
src/config_parser.c

@ -759,7 +759,7 @@ static int parse_chatserver(const char *key, const char *value, struct global_co
global->chatserver_storage_unit_size = sz; global->chatserver_storage_unit_size = sz;
return 0; return 0;
} }
DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, "%s:%d: Unknown chatserver option '%s'. Valid: db_path, join_password, allowed_groups, storage_total_size, storage_unit_size, storage_autoload, storage_autoload_maxsize_mb, storage_maxsize_gb, opus_codec_preset, compressor_enabled, compressor_max_gain_db, compressor_rise_rate, media_download_max_peers", filename, line_num, key); DEBUG_ERROR(DEBUG_CATEGORY_CONFIG, "%s:%d: Unknown chatserver option '%s'. Valid: db_path, join_password, allowed_groups, storage_total_size, storage_unit_size, storage_autoload, opus_codec_preset, compressor_enabled, compressor_max_gain_db, compressor_rise_rate, media_download_max_peers", filename, line_num, key);
return -1; return -1;
} }

2
utun.conf.sample

@ -116,6 +116,4 @@ allow=all
#storage_total_size=500M # общий лимит медиакеша (0=безлимит) #storage_total_size=500M # общий лимит медиакеша (0=безлимит)
#storage_unit_size=50M # лимит одного медиафайла (0=отключено) #storage_unit_size=50M # лимит одного медиафайла (0=отключено)
#storage_autoload=1 # автозагрузка медиавложений (0/1) #storage_autoload=1 # автозагрузка медиавложений (0/1)
#storage_autoload_maxsize_mb=10 # макс. размер файла для автозагрузки (МБ)
#storage_maxsize_gb=1 # квота хранилища (ГБ)
#media_download_max_peers=3 # макс. одновременных пиров для загрузки #media_download_max_peers=3 # макс. одновременных пиров для загрузки

Loading…
Cancel
Save