From c9b0e9c81335e098cdb256b1c58597cda96703b1 Mon Sep 17 00:00:00 2001 From: Peter Wu Date: Thu, 25 May 2017 00:28:45 +0200 Subject: Report syntax errors in UAT prefs parsing Add the cause for a syntax error while parsing UATs. Example output: $ tshark -ouat:ssl_keys:, tshark: Invalid -o flag "uat:ssl_keys:,": ssl_keys:1: No IP address given. $ tshark -ouat:unknown:, tshark: Invalid -o flag "uat:unknown:,": Unknown preference Change-Id: I549406c4e31a81d29f487ef47bdb3c22da084947 Reviewed-on: https://code.wireshark.org/review/21748 Petri-Dish: Peter Wu Tested-by: Petri Dish Buildbot Reviewed-by: Jakub Zawadzki Reviewed-by: Michael Mann --- tfshark.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'tfshark.c') diff --git a/tfshark.c b/tfshark.c index bad0ab3b46..b91afb6272 100644 --- a/tfshark.c +++ b/tfshark.c @@ -689,13 +689,18 @@ main(int argc, char *argv[]) line_buffered = TRUE; break; case 'o': /* Override preference from command line */ - switch (prefs_set_pref(optarg)) { + { + char *errmsg = NULL; + + switch (prefs_set_pref(optarg, &errmsg)) { case PREFS_SET_OK: break; case PREFS_SET_SYNTAX_ERR: - cmdarg_err("Invalid -o flag \"%s\"", optarg); + cmdarg_err("Invalid -o flag \"%s\"%s%s", optarg, + errmsg ? ": " : "", errmsg ? errmsg : ""); + g_free(errmsg); return 1; break; @@ -707,6 +712,7 @@ main(int argc, char *argv[]) break; } break; + } case 'q': /* Quiet */ quiet = TRUE; break; -- cgit v1.2.1