Define canonical avatar names and size limits

This commit is contained in:
evgeny committed 2026-10-06 12:27:32 +02:00
1 parent 61ef23b885
commit cbb1a03ccd
3 files changed
+9

No files matched your search

+1
View File
@@ -9,6 +9,7 @@
#include "chat_member.h"
#include "chat_event.h"
#include "member_sync.h"
#include "../member_files/protocol.h"
#include "../utun_instance.h"
#include "../routing_layer/topo_group.h"
+6
View File
@@ -3,6 +3,12 @@
#include <string.h>
#include <ctype.h>
int mf_avatar_file_valid(const char* file) {
if (!file || strlen(file) != 68 || strcmp(file + 64, ".png")) return 0;
for (unsigned i = 0; i < 64; i++) if (!((file[i] >= '0' && file[i] <= '9') || (file[i] >= 'a' && file[i] <= 'f'))) return 0;
return 1;
}
uint64_t mf_get64(const uint8_t* p) {
uint64_t v = 0;
for (unsigned i = 0; i < 8; i++) v |= (uint64_t)p[i] << (8 * i);
+2
View File
@@ -22,6 +22,8 @@ extern "C" {
#define MF_WIRE_MAX (MF_WIRE_HEADER + 2 * MF_PATH_MAX + MF_BLOCK_SIZE)
#define MF_ENTRY_HEADER 35
#define MF_QUOTA_BYTES 40 /* used/limit/reserved в байтах, files/directories; пять u64 LE */
#define MF_AVATAR_MAX_BYTES (1024 * 1024)
int mf_avatar_file_valid(const char* file);
#define MF_IDLE_TB 100000ULL /* 10 секунд */
#define MF_REQUEST 1
#define MF_RESPONSE 2