Bugfix parsing filters out of SRT tables with parameters.

Change-Id: I5f9315b144333be789f8555f4128371994d4245b
Reviewed-on: https://code.wireshark.org/review/9141
Reviewed-by: Michael Mann <mmann78@netscape.net>
This commit is contained in:
Michael Mann 2015-06-25 14:33:28 -04:00
parent fcbf1d295b
commit 7f5717516d
4 changed files with 4 additions and 8 deletions

View File

@ -1586,7 +1586,7 @@ dcerpcstat_param(register_srt_t* srt, const char* opt_arg, char** err)
guint16 ver;
dcerpc_sub_dissector *procs;
if (sscanf(opt_arg, ",%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x,%d.%d,%n",
if (sscanf(opt_arg, ",%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x,%d.%d%n",
&d1,&d2,&d3,&d40,&d41,&d42,&d43,&d44,&d45,&d46,&d47,&major,&minor,&pos) == 13)
{
if ((major < 0) || (major > 65535)) {

View File

@ -403,7 +403,7 @@ rpcstat_param(register_srt_t* srt, const char* opt_arg, char** err)
int program, version;
rpcstat_tap_data_t* tap_data;
if (sscanf(opt_arg, ",%d,%d,%n", &program, &version, &pos) == 2)
if (sscanf(opt_arg, ",%d,%d%n", &program, &version, &pos) == 2)
{
tap_data = g_new0(rpcstat_tap_data_t, 1);

View File

@ -999,7 +999,7 @@ scsistat_param(register_srt_t* srt, const char* opt_arg, char** err)
int program;
scsistat_tap_data_t* tap_data;
if (sscanf(opt_arg, ",%d,%n", &program, &pos) == 1)
if (sscanf(opt_arg, ",%d%n", &program, &pos) == 1)
{
tap_data = g_new0(scsistat_tap_data_t, 1);
tap_data->cmdset = (guint8)program;

View File

@ -182,14 +182,10 @@ void srt_table_get_filter(register_srt_t* srt, const char *opt_arg, const char *
if (pos > 0)
pos += len;
}
else
{
pos++; /* Adjust for comma */
}
if (opt_arg[pos] == ',')
{
*filter = opt_arg + pos;
*filter = opt_arg + pos+1;
}
}