commit 25aeb79
uint
·
2026-01-31 05:17:25 +0000 UTC
parent 40c43e7
improve config logging (set_kv)
1 files changed,
+38,
-14
+38,
-14
1@@ -90,11 +90,15 @@ static int set_kv(const char* k, const char* v)
2 if (strcmp(k, "server_port") == 0) {
3 char* end = NULL;
4 long p = strtol(v, &end, 10);
5- if (!end || *end != '\0')
6- return -1;
7
8- if (p < 1 || p > 65535)
9+ if (end == v || *end != '\0') {
10+ LOG(true, "CONF", "Config Error %s invalid integer '%s'", k, v);
11+ return -1;
12+ }
13+ if (p < 1 || p > 65535) {
14+ LOG(true, "CONF", "Config Error server_port out of bounds (1..65535)");
15 return -1;
16+ }
17
18 server_port = (int)p;
19 return 0;
20@@ -102,8 +106,10 @@ static int set_kv(const char* k, const char* v)
21
22 if (strcmp(k, "verbose_log") == 0) {
23 bool b;
24- if (parse_bool(v, &b) < 0)
25+ if (parse_bool(v, &b) < 0){
26+ LOG(true, "CONF", "Config Error verbose_log invalid bool \"%s\"", v);
27 return -1;
28+ }
29
30 verbose_log = b;
31 return 0;
32@@ -117,11 +123,15 @@ static int set_kv(const char* k, const char* v)
33 if (strcmp(k, "http_io_timeout") == 0) {
34 char* end = NULL;
35 long t = strtol(v, &end, 10);
36- if (!end || *end != '\0')
37- return -1;
38
39- if (t < 1 || t > 300)
40+ if (end == v || *end != '\0') {
41+ LOG(true, "CONF", "Config Error %s invalid integer '%s'", k, v);
42 return -1;
43+ }
44+ if (t < 1 || t > 300) {
45+ LOG(true, "CONF", "Config Error http_io_timeout too %s (1..300)", t > 300 ? "high" : "low");
46+ return -1;
47+ }
48
49 http_io_timeout = (int)t;
50 return 0;
51@@ -130,11 +140,15 @@ static int set_kv(const char* k, const char* v)
52 if (strcmp(k, "max_clients") == 0) {
53 char* end = NULL;
54 long n = strtol(v, &end, 10);
55- if (!end || *end != '\0')
56- return -1;
57
58- if (n < 1 || n > 1024)
59+ if (end == v || *end != '\0') {
60+ LOG(true, "CONF", "Config Error %s invalid integer '%s'", k, v);
61+ return -1;
62+ }
63+ if (n < 1 || n > 1024) {
64+ LOG(true, "CONF", "Config Error max_clients too %s (1..1024)", n > 1024 ? "high" : "low");
65 return -1;
66+ }
67
68 max_clients = (int)n;
69 return 0;
70@@ -142,18 +156,28 @@ static int set_kv(const char* k, const char* v)
71
72 /* auth */
73 if (strcmp(k, "user") == 0) {
74- return users_push(v);
75+ int r = users_push(v);
76+ if (r < 0)
77+ LOG(true, "CONF", "Config Error user invalid '%s'", v);
78+ return r;
79 }
80
81 if (strcmp(k, "pass") == 0) {
82- return users_set_pass(v);
83+ int r = users_set_pass(v);
84+ if (r < 0)
85+ LOG(true, "CONF", "Config Error pass invalid '%s'", v);
86+ return r;
87 }
88
89 if (strcmp(k, "allow") == 0) {
90- return users_add_allow(v);
91+ int r = users_add_allow(v);
92+ if (r < 0)
93+ LOG(true, "CONF", "Config Error allow invalid '%s'", v);
94+ return r;
95 }
96
97 /* unknown key */
98+ LOG(true, "CONF", "Unknown Key Value %s=%s", k, v);
99 return 0;
100 }
101
102@@ -193,7 +217,7 @@ void config_load(void)
103 goto log;
104 }
105
106- LOG(true, "CONF", "Unable to load configuration... using defaults", e);
107+ LOG(true, "CONF", "Unable to load configuration... using defaults");
108 return;
109
110 log: