-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Formatstring/v3 #13901
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Formatstring/v3 #13901
Conversation
util-pidfile.c: In function ‘SCPidfileCreate’: util-pidfile.c:49:18: error: ‘%lu’ directive output may be truncated writing between 1 and 20 bytes into a region of size 16 [-Werror=format-truncation=] 49 | size_t len = snprintf(val, sizeof(val), "%"PRIuMAX"\n", (uintmax_t)getpid()); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ util-pidfile.c:49:18: note: using the range [0, 18446744073709551615] for directive argument util-pidfile.c:49:18: note: ‘snprintf’ output between 3 and 22 bytes into a destination of size 16 49 | size_t len = snprintf(val, sizeof(val), "%"PRIuMAX"\n", (uintmax_t)getpid()); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors Ticket: OISF#7905.
detect-datarep.c: In function ‘SetupLoadPath’: detect-datarep.c:262:9: error: ‘%s’ directive output may be truncated writing likely 1 or more bytes into a region of size between 0 and 4095 [-Werror=format-truncation=] 262 | if (snprintf(path, sizeof(path), "%s/%s", dir, load) >= (int)sizeof(path)) // TODO windows path | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ detect-datarep.c:262:9: note: assuming directive output of 1 byte detect-datarep.c:262:9: note: ‘snprintf’ output 2 or more bytes (assuming 4098) into a destination of size 4096 cc1: all warnings being treated as errors Ticket: OISF#7905.
detect-dataset.c: In function ‘SetupLoadPath’: detect-dataset.c:391:9: error: ‘%s’ directive output may be truncated writing likely 1 or more bytes into a region of size between 0 and 4095 [-Werror=format-truncation=] 391 | if (snprintf(path, sizeof(path), "%s/%s", dir, load) >= (int)sizeof(path)) // TODO windows path | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ detect-dataset.c:391:9: note: assuming directive output of 1 byte detect-dataset.c:391:9: note: ‘snprintf’ output 2 or more bytes (assuming 4098) into a destination of size 4096 Ticket: OISF#7905.
detect-engine-address.c: In function ‘DetectAddressParseInternal’: detect-engine-address.c:851:35: error: ‘snprintf’ output may be truncated before the last format character [-Werror=format-truncation=] 851 | "[%s]", rule_var_address); | ^ detect-engine-address.c:850:21: note: ‘snprintf’ output 3 or more bytes (assuming 4) into a destination of size 3 850 | snprintf(temp_rule_var_address, str_size, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 851 | "[%s]", rule_var_address); | ~~~~~~~~~~~~~~~~~~~~~~~~~ detect-engine-address.c:919:34: error: ‘snprintf’ output may be truncated before the last format character [-Werror=format-truncation=] 919 | "[%s]", rule_var_address); | ^ detect-engine-address.c:918:21: note: ‘snprintf’ output 3 or more bytes (assuming 4) into a destination of size 3 918 | snprintf(temp_rule_var_address, strlen(rule_var_address) + 3, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 919 | "[%s]", rule_var_address); | ~~~~~~~~~~~~~~~~~~~~~~~~~ Ticket: OISF#7905.
detect-engine-analyzer.c: In function ‘SetupEngineAnalysis’: detect-engine-analyzer.c:493:60: error: ‘%s’ directive output may be truncated writing up to 63 bytes into a region of size 3 [-Werror=format-truncation=] 493 | snprintf(ea->file_prefix, cfg_prefix_len + 1 + 1, "%s.", de_ctx->config_prefix); | ^~ detect-engine-analyzer.c:493:9: note: ‘snprintf’ output between 2 and 65 bytes into a destination of size 3 493 | snprintf(ea->file_prefix, cfg_prefix_len + 1 + 1, "%s.", de_ctx->config_prefix); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Ticket: OISF#7905.
app-layer-smtp.c: In function 'SMTPConfigure': app-layer-smtp.c:371:69: warning: 'snprintf' output may be truncated before the last format character [-Wformat-truncation=] 371 | int r = snprintf(new_val, scheme_len + 1, "%s://", scheme->val); | ^ app-layer-smtp.c:371:29: note: 'snprintf' output 4 or more bytes (assuming 5) into a destination of size 4 371 | int r = snprintf(new_val, scheme_len + 1, "%s://", scheme->val); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Ticket: OISF#7905.
detect-engine-iponly.c: In function 'IPOnlyCIDRListParse2': detect-engine-iponly.c:721:35: warning: 'snprintf' output may be truncated before the last format character [-Wformat-truncation=] 721 | "[%s]", rule_var_address); | ^ detect-engine-iponly.c:720:21: note: 'snprintf' output 3 or more bytes (assuming 4) into a destination of size 3 720 | snprintf(temp_rule_var_address, strlen(rule_var_address) + 3, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 721 | "[%s]", rule_var_address); | ~~~~~~~~~~~~~~~~~~~~~~~~~ detect-engine-iponly.c:782:34: warning: 'snprintf' output may be truncated before the last format character [-Wformat-truncation=] 782 | "[%s]", rule_var_address); | ^ detect-engine-iponly.c:781:21: note: 'snprintf' output 3 or more bytes (assuming 4) into a destination of size 3 781 | snprintf(temp_rule_var_address, strlen(rule_var_address) + 3, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 782 | "[%s]", rule_var_address); | ~~~~~~~~~~~~~~~~~~~~~~~~~ Ticket: OISF#7905.
detect-engine-mpm.c: In function ‘BuildBasicPname’: detect-engine-mpm.c:197:43: error: ‘snprintf’ output may be truncated before the last format character [-Werror=format-truncation=] 197 | snprintf(pname, sizeof(pname), "%s", name); | ^ detect-engine-mpm.c:197:9: note: ‘snprintf’ output 1 or more bytes (assuming 2) into a destination of size 1 197 | snprintf(pname, sizeof(pname), "%s", name); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ detect-engine-mpm.c: In function ‘AppendTransformsToPname’: detect-engine-mpm.c:231:61: error: ‘%s’ directive output may be truncated writing up to 1023 bytes into a region of size 7 [-Werror=format-truncation=] 231 | snprintf(xforms_print, sizeof(xforms_print), " (%s)", xforms); | ^~ ~~~~~~ detect-engine-mpm.c:231:13: note: ‘snprintf’ output between 4 and 1027 bytes into a destination of size 9 231 | snprintf(xforms_print, sizeof(xforms_print), " (%s)", xforms); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Ticket: OISF#7905.
detect-engine-port.c: In function 'DetectPortParseDo': detect-engine-port.c:858:35: warning: 'snprintf' output may be truncated before the last format character [-Wformat-truncation=] 858 | "[%s]", rule_var_port); | ^ detect-engine-port.c:857:21: note: 'snprintf' output 3 or more bytes (assuming 4) into a destination of size 3 857 | snprintf(alloc_rule_var_port, strlen(rule_var_port) + 3, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 858 | "[%s]", rule_var_port); | ~~~~~~~~~~~~~~~~~~~~~~ detect-engine-port.c:928:34: warning: 'snprintf' output may be truncated before the last format character [-Wformat-truncation=] 928 | "[%s]", rule_var_port); | ^ detect-engine-port.c:927:21: note: 'snprintf' output 3 or more bytes (assuming 4) into a destination of size 3 927 | snprintf(alloc_rule_var_port, strlen(rule_var_port) + 3, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 928 | "[%s]", rule_var_port); | ~~~~~~~~~~~~~~~~~~~~~~ Ticket: OISF#7905.
Use proper path merging. Address format truncation warnings. log-pcap.c: In function 'PcapLogInitRingBuffer': log-pcap.c:970:13: warning: '%s' directive output may be truncated writing up to 255 bytes into a region of size between 0 and 4095 [-Wformat-truncation=] 970 | if (snprintf(path, PATH_MAX, "%s/%s", pattern, entry->d_name) == PATH_MAX) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ log-pcap.c:970:13: note: 'snprintf' output between 2 and 4352 bytes into a destination of size 4096 log-pcap.c: In function 'PcapLogOpenFileCtx': log-pcap.c:1796:56: warning: '%s' directive output may be truncated writing likely 1 or more bytes into a region of size between 0 and 4095 [-Wformat-truncation=] 1796 | ret = snprintf(filename, PATH_MAX, "%s/%s.%u.%" PRIu32 ".%" PRIu32 "%s", pl->dir, | ^~ log-pcap.c:1796:52: note: assuming directive output of 1 byte 1796 | ret = snprintf(filename, PATH_MAX, "%s/%s.%u.%" PRIu32 ".%" PRIu32 "%s", pl->dir, | ^~~~~~~~~~~~ log-pcap.c:1796:52: note: using the range [0, 4294967295] for directive argument log-pcap.c:1796:52: note: directive argument in the range [0, 1048575] log-pcap.c:1796:52: note: assuming directive output of 1 byte log-pcap.c:1796:23: note: 'snprintf' output 8 or more bytes (assuming 4111) into a destination of size 4096 1796 | ret = snprintf(filename, PATH_MAX, "%s/%s.%u.%" PRIu32 ".%" PRIu32 "%s", pl->dir, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1797 | pl->prefix, pl->thread_number, (uint32_t)SCTIME_SECS(ts), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1798 | (uint32_t)SCTIME_USECS(ts), pl->suffix); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ log-pcap.c:1793:56: warning: '%s' directive output may be truncated writing likely 1 or more bytes into a region of size between 0 and 4095 [-Wformat-truncation=] 1793 | ret = snprintf(filename, PATH_MAX, "%s/%s.%u.%" PRIu32 "%s", pl->dir, pl->prefix, | ^~ log-pcap.c:1793:52: note: assuming directive output of 1 byte 1793 | ret = snprintf(filename, PATH_MAX, "%s/%s.%u.%" PRIu32 "%s", pl->dir, pl->prefix, | ^~~~~~~~~~~~ log-pcap.c:1793:52: note: using the range [0, 4294967295] for directive argument log-pcap.c:1793:52: note: assuming directive output of 1 byte log-pcap.c:1793:23: note: 'snprintf' output 6 or more bytes (assuming 4103) into a destination of size 4096 1793 | ret = snprintf(filename, PATH_MAX, "%s/%s.%u.%" PRIu32 "%s", pl->dir, pl->prefix, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1794 | pl->thread_number, (uint32_t)SCTIME_SECS(ts), pl->suffix); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ log-pcap.c:1738:52: warning: '%s' directive output may be truncated writing likely 1 or more bytes into a region of size between 0 and 4095 [-Wformat-truncation=] 1738 | ret = snprintf(filename, PATH_MAX, "%s/%s.%" PRIu32 ".%" PRIu32 "%s", pl->dir, | ^~ log-pcap.c:1738:48: note: assuming directive output of 1 byte 1738 | ret = snprintf(filename, PATH_MAX, "%s/%s.%" PRIu32 ".%" PRIu32 "%s", pl->dir, | ^~~~~~~~~ log-pcap.c:1738:48: note: using the range [0, 4294967295] for directive argument log-pcap.c:1738:48: note: directive argument in the range [0, 1048575] log-pcap.c:1738:48: note: assuming directive output of 1 byte log-pcap.c:1738:19: note: 'snprintf' output 6 or more bytes (assuming 4109) into a destination of size 4096 1738 | ret = snprintf(filename, PATH_MAX, "%s/%s.%" PRIu32 ".%" PRIu32 "%s", pl->dir, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1739 | pl->prefix, (uint32_t)SCTIME_SECS(ts), (uint32_t)SCTIME_USECS(ts), pl->suffix); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ log-pcap.c:1735:52: warning: '%s' directive output may be truncated writing likely 1 or more bytes into a region of size between 0 and 4095 [-Wformat-truncation=] 1735 | ret = snprintf(filename, PATH_MAX, "%s/%s.%" PRIu32 "%s", pl->dir, pl->prefix, | ^~ log-pcap.c:1735:48: note: assuming directive output of 1 byte 1735 | ret = snprintf(filename, PATH_MAX, "%s/%s.%" PRIu32 "%s", pl->dir, pl->prefix, | ^~~~~~~~~ log-pcap.c:1735:48: note: using the range [0, 4294967295] for directive argument log-pcap.c:1735:48: note: assuming directive output of 1 byte log-pcap.c:1735:19: note: 'snprintf' output 4 or more bytes (assuming 4101) into a destination of size 4096 1735 | ret = snprintf(filename, PATH_MAX, "%s/%s.%" PRIu32 "%s", pl->dir, pl->prefix, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1736 | (uint32_t)SCTIME_SECS(ts), pl->suffix); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Ticket: OISF#7905.
Use PathMerge. Address format truncation warnings. log-tlsstore.c: In function 'CreateFileName': log-tlsstore.c:68:9: warning: '%s' directive output may be truncated writing likely 1 or more bytes into a region of size between 0 and 4095 [-Wformat-truncation=] 68 | if (snprintf(path, sizeof(path), "%s/%s%ld.%ld-%d.pem", tls_logfile_base_dir, dir, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 69 | (long int)SCTIME_SECS(p->ts), (long int)SCTIME_USECS(p->ts), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 70 | file_id) == sizeof(path)) | ~~~~~~~~ log-tlsstore.c:68:9: note: assuming directive output of 1 byte log-tlsstore.c:68:9: note: directive argument in the range [0, 17592186044415] log-tlsstore.c:68:9: note: directive argument in the range [0, 1048575] log-tlsstore.c:68:9: note: using the range [-2147483648, 2147483647] for directive argument log-tlsstore.c:68:9: note: 'snprintf' output 11 or more bytes (assuming 4126) into a destination of size 4096 Ticket: OISF#7905.
Use PathMerge where appropriate. Addresses format truncation warnings. output-filestore.c: In function 'OutputFilestoreFinalizeFiles': output-filestore.c:164:13: warning: '%lu' directive output may be truncated writing between 1 and 14 bytes into a region of size between 0 and 4095 [-Wformat-truncation=] 164 | if (snprintf(js_metadata_filename, sizeof(js_metadata_filename), "%s.%" PRIuMAX ".%u.json", | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 165 | final_filename, (uintmax_t)SCTIME_SECS(p->ts), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 166 | ff->file_store_id) == (int)sizeof(js_metadata_filename)) { | ~~~~~~~~~~~~~~~~~~ output-filestore.c:164:13: note: directive argument in the range [0, 17592186044415] output-filestore.c:164:13: note: 'snprintf' output between 10 and 4127 bytes into a destination of size 4096 output-filestore.c: In function 'OutputFilestoreLogInitCtx': output-filestore.c:408:67: warning: '%s' directive output may be truncated writing up to 4095 bytes into a region of size 4027 [-Wformat-truncation=] 408 | int written = snprintf(ctx->tmpdir, sizeof(ctx->tmpdir) - 1, "%s/tmp", | ^~ 409 | log_directory); | ~~~~~~~~~~~~~ output-filestore.c:408:19: note: 'snprintf' output between 5 and 4100 bytes into a destination of size 4027 408 | int written = snprintf(ctx->tmpdir, sizeof(ctx->tmpdir) - 1, "%s/tmp", | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 409 | log_directory); | ~~~~~~~~~~~~~~ Ticket: OISF#7905.
output-json-alert.c: In function 'AlertJsonReference': output-json-alert.c:188:44: warning: '%s' directive output may be truncated writing likely 1 or more bytes into a region of size between 0 and 1 [-Wformat-truncation=] 188 | snprintf(kv_store, size_needed, "%s%s", kv->key, kv->reference); | ^~ output-json-alert.c:188:41: note: assuming directive output of 1 byte 188 | snprintf(kv_store, size_needed, "%s%s", kv->key, kv->reference); | ^~~~~~ output-json-alert.c:188:9: note: 'snprintf' output 1 or more bytes (assuming 3) into a destination of size 1 188 | snprintf(kv_store, size_needed, "%s%s", kv->key, kv->reference); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Ticket: OISF#7905.
output-json-stats.c: In function 'StatsToJSON': output-json-stats.c:253:65: warning: 'snprintf' output may be truncated before the last format character [-Wformat-truncation=] 253 | snprintf(deltaname, sizeof(deltaname), "%s%s", stat_name, delta_suffix); | ^ output-json-stats.c:253:21: note: 'snprintf' output 1 or more bytes (assuming 8) into a destination of size 7 253 | snprintf(deltaname, sizeof(deltaname), "%s%s", stat_name, delta_suffix); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ output-json-stats.c:314:69: warning: 'snprintf' output may be truncated before the last format character [-Wformat-truncation=] 314 | snprintf(deltaname, sizeof(deltaname), "%s%s", stat_name, delta_suffix); | ^ output-json-stats.c:314:25: note: 'snprintf' output 1 or more bytes (assuming 8) into a destination of size 7 314 | snprintf(deltaname, sizeof(deltaname), "%s%s", stat_name, delta_suffix); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Ticket: OISF#7905.
Use PathMerge to improve path handling and address these warnings: output-lua.c: In function 'OutputLuaLogInitSub': output-lua.c:657:48: warning: '%s' directive output may be truncated writing likely 1 or more bytes into a region of size between 0 and 4096 [-Wformat-truncation=] 657 | int ret = snprintf(path, sizeof(path),"%s%s%s", dir, strlen(dir) ? "/" : "", conf->val); | ^~ output-lua.c:657:43: note: assuming directive output of 1 byte 657 | int ret = snprintf(path, sizeof(path),"%s%s%s", dir, strlen(dir) ? "/" : "", conf->val); | ^~~~~~~~ output-lua.c:657:15: note: 'snprintf' output 1 or more bytes (assuming 4098) into a destination of size 4096 657 | int ret = snprintf(path, sizeof(path),"%s%s%s", dir, strlen(dir) ? "/" : "", conf->val); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Ticket: OISF#7905.
util-runmodes.c: In function 'RunModeSetLiveCaptureAutoFp': util-runmodes.c:167:30: warning: '%02d' directive output may be truncated writing between 2 and 11 bytes into a region of size between 3 and 4 [-Wformat-truncation=] 167 | "%s#%02d-%s", thread_name, thread+1, | ^~~~ util-runmodes.c:167:26: note: directive argument in the range [-2147483647, 2147483647] 167 | "%s#%02d-%s", thread_name, thread+1, | ^~~~~~~~~~~~ util-runmodes.c:167:26: note: assuming directive output of 1 byte util-runmodes.c:166:17: note: 'snprintf' output 5 or more bytes (assuming 16) into a destination of size 5 166 | snprintf(printable_threadname, strlen(thread_name)+5+strlen(dev), | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 167 | "%s#%02d-%s", thread_name, thread+1, | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 168 | dev); | ~~~~ util-runmodes.c: In function 'RunModeSetLiveCaptureWorkersForDevice': util-runmodes.c:280:88: warning: '%02d' directive output may be truncated writing between 2 and 10 bytes into a region of size between 3 and 4 [-Wformat-truncation=] 280 | snprintf(printable_threadname, strlen(thread_name)+5+strlen(live_dev), "%s#%02d-%s", | ^~~~ util-runmodes.c:280:84: note: directive argument in the range [1, 2147483647] 280 | snprintf(printable_threadname, strlen(thread_name)+5+strlen(live_dev), "%s#%02d-%s", | ^~~~~~~~~~~~ util-runmodes.c:280:84: note: assuming directive output of 1 byte util-runmodes.c:280:13: note: 'snprintf' output 5 or more bytes (assuming 15) into a destination of size 5 280 | snprintf(printable_threadname, strlen(thread_name)+5+strlen(live_dev), "%s#%02d-%s", | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 281 | thread_name, thread+1, live_dev); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ util-runmodes.c:275:91: warning: '%s' directive output may be truncated writing likely 1 or more bytes into a region of size between 0 and 1 [-Wformat-truncation=] 275 | snprintf(printable_threadname, strlen(thread_name)+5+strlen(live_dev), "%s#01-%s", | ^~ util-runmodes.c:275:84: note: assuming directive output of 1 byte 275 | snprintf(printable_threadname, strlen(thread_name)+5+strlen(live_dev), "%s#01-%s", | ^~~~~~~~~~ util-runmodes.c:275:13: note: 'snprintf' output 5 or more bytes (assuming 7) into a destination of size 5 275 | snprintf(printable_threadname, strlen(thread_name)+5+strlen(live_dev), "%s#01-%s", | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 276 | thread_name, live_dev); | ~~~~~~~~~~~~~~~~~~~~~~ Ticket: OISF#7905.
It will be a long time before we need more than 64k threads. Update capture methods.
Use uint16_t internally and in parsing as well.
Limit to 1024 like with worker threads. General minor cleanups.
JsonBuildFileInfoRecord(p, ff, tx, tx_id, true, dir, ctx->xff_cfg, NULL); | ||
if (likely(js_fileinfo != NULL)) { | ||
SCJbClose(js_fileinfo); | ||
FILE *out = fopen(js_metadata_filename, "w"); |
Check failure
Code scanning / CodeQL
File created without restricting permissions High
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tracking this (and other similar warnings) here https://redmine.openinfosecfoundation.org/issues/7952
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
PoC for this 0dcad5c
Information: QA ran without warnings. Pipeline = 27703 |
replaced by #13920 |
https://redmine.openinfosecfoundation.org/issues/7905
#13899 with a few more cleanups and fixups for pfring/napatech plugins.