diff options
author | Luis Ontanon <luis.ontanon@gmail.com> | 2007-01-28 01:24:20 +0000 |
---|---|---|
committer | Luis Ontanon <luis.ontanon@gmail.com> | 2007-01-28 01:24:20 +0000 |
commit | 6a2d87516a0f8a915c953e117641b9d8699b616e (patch) | |
tree | 54dae4e064121a09e4efd3ee0a07ca023d168518 /wiretap | |
parent | db9803fdd0708a7b0b8daf67361bebc4ca3b474d (diff) |
from Kriang Lerdsuwanakij
I found out the reason Wireshark refuses to read some .rf file I have.
Those files have zero extra_len in SRCDEST header structure. See the
attached file for example. It was created by selecting some frames from
a larger .rf5 file (within Tektronix's own reader) and save as a
separate file.
svn path=/trunk/; revision=20579
Diffstat (limited to 'wiretap')
-rw-r--r-- | wiretap/k12.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/wiretap/k12.c b/wiretap/k12.c index 5b4bf4446d..00dd00997a 100644 --- a/wiretap/k12.c +++ b/wiretap/k12.c @@ -627,11 +627,11 @@ int k12_open(wtap *wth, int *err, gchar **err_info _U_) { k12_dbg(5,"k12_open: INTERFACE RECORD offset=%x interface=%x",offset,rec->input); #endif - if (extra_len == 0 || name_len == 0 || stack_len == 0 + if (name_len == 0 || stack_len == 0 || 0x20 + extra_len + name_len + stack_len > rec_len ) { g_free(rec); #ifdef DEBUG_K12 - k12_dbg(5,"k12_open: failed (extra_len == 0 || name_len == 0 || stack_len == 0 " + k12_dbg(5,"k12_open: failed (name_len == 0 || stack_len == 0 " "|| 0x20 + extra_len + name_len + stack_len > rec_len) extra_len=%i name_len=%i stack_len=%i"); #endif |