Go to the documentation of this file.
17#ifndef OPSICK_CONSTANTS_H
18#define OPSICK_CONSTANTS_H
43#define OPSICK_SERVER_VERSION 100
48#define OPSICK_SERVER_VERSION_STR "1.0.0"
53#define OPSICK_MAX_USER_CREATION_PASSWORD_LENGTH 256
58#define OPSICK_MAX_ARGON2_PARALLELISM 16
63#define OPSICK_2FA_STEPS 30
68#define OPSICK_2FA_DIGITS 6
73#define OPSICK_2FA_HASH_ALGO 0
75#pragma region DEFAULT CONFIG VALUES
81#define OPSICK_DEFAULT_LOG 0
86#define OPSICK_DEFAULT_PORT 6677
91#define OPSICK_DEFAULT_THREADS 2
96#define OPSICK_DEFAULT_MAX_CLIENTS 0
101#define OPSICK_DEFAULT_MAX_HEADER_SIZE (1024 * 16)
106#define OPSICK_DEFAULT_MAX_BODY_SIZE (1024 * 1024 * 16)
111#define OPSICK_DEFAULT_MAX_USERS 0
116#define OPSICK_DEFAULT_API_KEY_ALGO 0
121#define OPSICK_DEFAULT_USE_INDEX_HTML 1
126#define OPSICK_DEFAULT_ARGON2_TIME_COST 16
131#define OPSICK_DEFAULT_ARGON2_MEMORY_COST_KiB (1024 * 64)
136#define OPSICK_DEFAULT_ARGON2_PARALLELISM 2
141#define OPSICK_DEFAULT_KEY_REFRESH_INTERVAL_HOURS 72
146#define OPSICK_DEFAULT_API_KEY_PUBLIC_HEXSTR "F407F5E089CE64002EB417FB683A7302287BE84108BB8E62FD8ED647DC62805C"
151#define OPSICK_DEFAULT_USER_CREATION_PASSWORD_ARGON2_HASH "$argon2id$v=19$m=65536,t=16,p=2$kgiReuAb6UDkBgssL08W9OoHkkDzNV++5cWzHB5fUbE$JG8ODw0sHhBuROEF3iA8w9RbrUF59UGnOz3bmkY4SAy0MzJ6tL+HG9j2ipxcvHnpZC1H6HeHJqaAb1Yqplevcw"
156#define OPSICK_DEFAULT_DBCONN_FILE "C:\\opsick\\dbconn"
157#elif defined(__APPLE__)
158#define OPSICK_DEFAULT_DBCONN_FILE "/usr/local/share/opsick/dbconn"
160#define OPSICK_DEFAULT_DBCONN_FILE "/var/opt/opsick/dbconn"
163#pragma region STRING PRE - ALLOCATION IDs
168#define OPSICK_STRPREALLOC_INDEX_ED25519_SIG 0
173#define OPSICK_STRPREALLOC_INDEX_USER_ID 1
178#define OPSICK_STRPREALLOC_INDEX_PW 2
183#define OPSICK_STRPREALLOC_INDEX_TOTP 3
188#define OPSICK_STRPREALLOC_INDEX_NEW_PW 4
193#define OPSICK_STRPREALLOC_INDEX_EXP_UTC 5
198#define OPSICK_STRPREALLOC_INDEX_BODY 6
203#define OPSICK_STRPREALLOC_INDEX_PUBKEY_ED25519 7
208#define OPSICK_STRPREALLOC_INDEX_PRVKEY_ED25519 8
213#define OPSICK_STRPREALLOC_INDEX_PUBKEY_CURVE448 9
218#define OPSICK_STRPREALLOC_INDEX_PRVKEY_CURVE448 10
223#define OPSICK_STRPREALLOC_INDEX_EXT 11
228#define OPSICK_STRPREALLOC_INDEX_BODY_SHA512 12
233#define OPSICK_STRPREALLOC_INDEX_ACTION 13
238#define OPSICK_STRPREALLOC_INDEX_USER_CREATION_PW 14
243#define OPSICK_STRPREALLOC_INDEX_WWW_AUTHENTICATE_HEADER 15
254#define OPSICK_MURMUR3_SEED 133769420
261#define OPSICK_HOME_PATH_HASH 2818192833
268#define OPSICK_FAVICON_PATH_HASH 1051445893
275#define OPSICK_PUBKEY_PATH_HASH 3855421118
282#define OPSICK_PRVKEY_PATH_HASH 944329335
289#define OPSICK_PASSWD_PATH_HASH 2697305887
296#define OPSICK_USERGET_PATH_HASH 456400922
303#define OPSICK_USERCHK_PATH_HASH 4075223429
310#define OPSICK_USERADD_PATH_HASH 4242582731
317#define OPSICK_USERDEL_PATH_HASH 1184612068
324#define OPSICK_USEREXT_PATH_HASH 628309221
331#define OPSICK_USERBODY_PATH_HASH 413204006
338#define OPSICK_USER2FA_PATH_HASH 2196777087
345#define OPSICK_USERKEYS_PATH_HASH 773720762
352#define OPSICK_USERKEYS_UPDATE_PATH_HASH 589266831
359#define OPSICK_VERSION_PATH_HASH 692047655