diff options
author | Anders Broman <anders.broman@ericsson.com> | 2012-03-05 09:21:36 +0000 |
---|---|---|
committer | Anders Broman <anders.broman@ericsson.com> | 2012-03-05 09:21:36 +0000 |
commit | a20cfcc745f6fc0f1bba7dbb6255bb4fbe34c6a9 (patch) | |
tree | 219c85f9500e584e7b1d1834a8906f8c80585ee8 /pcapio.c | |
parent | 995e10ef36dbd7b994adc94eaa2ba5e4bae05da7 (diff) |
Fix calculation of pading for if_filter_str.
svn path=/trunk/; revision=41351
Diffstat (limited to 'pcapio.c')
-rw-r--r-- | pcapio.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -492,7 +492,7 @@ libpcap_write_interface_description_block(FILE *fp, } /* write filter string if applicable - * We only write version 1 of the fileter, libpcap string + * We only write version 1 of the filter, libpcap string */ if ((filter != NULL) && (strlen(filter) > 0) && (strlen(filter) < G_MAXUINT16)) { option.type = IDB_FILTER; @@ -502,8 +502,8 @@ libpcap_write_interface_description_block(FILE *fp, /* The first byte of the Option Data keeps a code of the filter used, 0 = lipbpcap filter string */ WRITE_DATA(fp, &padding, 1, *bytes_written, err); WRITE_DATA(fp, filter, strlen(filter) + 1, *bytes_written, err); - if ((strlen(filter) + 1) % 4) { - WRITE_DATA(fp, &padding, 4 - (strlen(filter) + 1) % 4 , *bytes_written, err); + if ((strlen(filter) + 2) % 4) { + WRITE_DATA(fp, &padding, 4 - (strlen(filter) + 2) % 4 , *bytes_written, err); } } |