@@ -154,6 +154,10 @@ conf_update_var2(const char *fpath, const char *key1, const char *key2,
154154{
155155 size_t sz = strlen (key1 ) + strlen (key2 ) + strlen (key3 ) + 2 ;
156156 char * key = nni_zalloc (sz );
157+ if (key == NULL ) {
158+ log_error ("Cannot allocate memory" );
159+ return ;
160+ }
157161 snprintf (key , sz , "%s%s%s" , key1 , key2 , key3 );
158162 conf_update_var (fpath , key , type , var );
159163 nng_free (key , sz );
@@ -232,6 +236,10 @@ conf_update2(const char *fpath, const char *key1, const char *key2,
232236{
233237 size_t sz = strlen (key1 ) + strlen (key2 ) + strlen (key3 ) + 2 ;
234238 char * key = nni_zalloc (sz );
239+ if (key == NULL ) {
240+ log_error ("Cannot allocate memory" );
241+ return ;
242+ }
235243 snprintf (key , sz , "%s%s%s" , key1 , key2 , key3 );
236244 conf_update (fpath , key , value );
237245 nng_free (key , sz );
@@ -258,8 +266,19 @@ get_conf_value(char *line, size_t len, const char *key)
258266 }
259267
260268 char * prefix = nni_zalloc (len );
261- char * trim = strtrim_head_tail (line , len );
269+ if (prefix == NULL ) {
270+ log_error ("Cannot allocate memory" );
271+ return NULL ;
272+ }
273+
262274 char * value = nni_zalloc (len );
275+ if (value == NULL ) {
276+ nni_free (prefix , len );
277+ log_error ("Cannot allocate memory" );
278+ return NULL ;
279+ }
280+
281+ char * trim = strtrim_head_tail (line , len );
263282 int match = sscanf (trim , "%[^=]=%[^\n]s" , prefix , value );
264283 char * res = NULL ;
265284 nni_strfree (trim );
@@ -281,6 +300,10 @@ get_conf_value_with_prefix(
281300{
282301 size_t sz = strlen (prefix ) + strlen (key ) + 2 ;
283302 char * str = nni_zalloc (sz );
303+ if (str == NULL ) {
304+ log_error ("Cannot allocate memory" );
305+ return NULL ;
306+ }
284307 snprintf (str , sz , "%s%s" , prefix , key );
285308 char * value = get_conf_value (line , len , str );
286309 free (str );
@@ -296,6 +319,10 @@ get_conf_value_with_prefix2(char *line, size_t len, const char *prefix,
296319 size_t sz = prefix_sz + name_sz + strlen (key ) + 2 ;
297320
298321 char * str = nni_zalloc (sz );
322+ if (str == NULL ) {
323+ log_error ("Cannot allocate memory" );
324+ return NULL ;
325+ }
299326 snprintf (str , sz , "%s%s%s" , prefix , name ? name : "" , key ? key : "" );
300327 char * value = get_conf_value (line , len , str );
301328 free (str );
@@ -1750,6 +1777,10 @@ conf_rule_fdb_parse(conf_rule *cr, char *path)
17501777 size_t sz = 0 ;
17511778 FILE * fp ;
17521779 rule_key * rk = (rule_key * ) nni_zalloc (sizeof (rule_key ));
1780+ if (rk == NULL ) {
1781+ log_error ("Cannot allocate memory" );
1782+ return ;
1783+ }
17531784 memset (rk , 0 , sizeof (rule_key ));
17541785
17551786 if (NULL == (fp = fopen (path , "r" ))) {
@@ -2464,6 +2495,10 @@ get_bridge_group_names(const char *path, const char *prefix, size_t *count)
24642495
24652496 size_t len = strlen (prefix ) + 34 ;
24662497 char * pattern = nni_zalloc (len );
2498+ if (pattern == NULL ) {
2499+ log_error ("Cannot allocate memory" );
2500+ return NULL ;
2501+ }
24672502 snprintf (
24682503 pattern , len , "%sbridge.mqtt.%%[^.].%%*[^=]=%%*[^\n]" , prefix );
24692504
@@ -2699,6 +2734,10 @@ conf_bridge_content_parse(conf *nanomq_conf, conf_bridge *bridge,
26992734 // 1. parse sqlite config from nanomq_bridge.conf
27002735 size_t sz = strlen (prefix ) + 15 ;
27012736 char * key = nni_zalloc (sz );
2737+ if (key == NULL ) {
2738+ log_error ("Cannot allocate memory" );
2739+ return ;
2740+ }
27022741 snprintf (key , sz , "%sbridge.sqlite" , prefix );
27032742 conf_sqlite_parse (& bridge -> sqlite , path , "bridge.sqlite" );
27042743 nni_strfree (key );
@@ -3260,6 +3299,10 @@ conf_parse_http_headers(
32603299
32613300 size_t len = strlen (key_prefix ) + 23 ;
32623301 char * pattern = nni_zalloc (len );
3302+ if (pattern == NULL ) {
3303+ log_error ("Cannot allocate memory" );
3304+ return NULL ;
3305+ }
32633306 snprintf (pattern , len , "%s.headers.%%[^=]=%%[^\n]" , key_prefix );
32643307
32653308 size_t header_count = 0 ;
0 commit comments