diff options
author | Martin Mathieson <martin.r.mathieson@googlemail.com> | 2018-01-26 21:05:03 +0000 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2018-01-27 08:28:30 +0000 |
commit | 98a218dcd350b420f57faa10e79525a12bda6089 (patch) | |
tree | 9a9ad95d03ef736dd7bf99f10c5d63709d725c4e /epan/dissectors/snort-config.c | |
parent | 31769615bbea590cd98b8f1926641a2ddbe04de7 (diff) |
Snort: speed up parsing of options by avoiding g_snprintf()
Change-Id: Ibe12ce69b139752e60b66a2af63e31244321bec5
Reviewed-on: https://code.wireshark.org/review/25484
Petri-Dish: Martin Mathieson <martin.r.mathieson@googlemail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan/dissectors/snort-config.c')
-rw-r--r-- | epan/dissectors/snort-config.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/epan/dissectors/snort-config.c b/epan/dissectors/snort-config.c index 9a05305eee..089175d3cc 100644 --- a/epan/dissectors/snort-config.c +++ b/epan/dissectors/snort-config.c @@ -603,17 +603,16 @@ static void process_rule_option(Rule_t *rule, char *options, int option_start_of if (colon_offset != 0) { /* Name and value */ - g_snprintf(name, colon_offset-option_start_offset, "%s", options+option_start_offset); + g_strlcpy(name, options+option_start_offset, colon_offset-option_start_offset); if (options[colon_offset] == ' ') { spaces_after_colon = 1; } - g_snprintf(value, options_end_offset-spaces_after_colon-colon_offset, "%s", - options+colon_offset+spaces_after_colon); + g_strlcpy(value, options+colon_offset+spaces_after_colon, options_end_offset-spaces_after_colon-colon_offset); value_length = (gint)strlen(value); } else { /* Just name */ - g_snprintf(name, options_end_offset-option_start_offset, "%s", options+option_start_offset); + g_strlcpy(name, options+option_start_offset, options_end_offset-option_start_offset); } /* Do this extraction in one place (may not be number but should be OK) */ |