diff options
author | gerald <gerald@f5534014-38df-0310-8fa8-9805f1628bb7> | 2005-04-16 21:54:32 +0000 |
---|---|---|
committer | gerald <gerald@f5534014-38df-0310-8fa8-9805f1628bb7> | 2005-04-16 21:54:32 +0000 |
commit | f28c4f91866d5b15074da29e09759c74e53a74c2 (patch) | |
tree | 6c5bfed8fc78f85ff40462f798d09689464b18d9 /gtk/smb_stat.c | |
parent | 920b60a82830b9ea9014458d91cff034e86ee499 (diff) |
Add an extra_info_type field to smb_extra_info_t so that we can make
sure we're not referencing a fid when we think we're referencing an
smb_nt_transact_info_t pointer. (A fuzzed capture I have triggers
this behavior).
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@14107 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'gtk/smb_stat.c')
-rw-r--r-- | gtk/smb_stat.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gtk/smb_stat.c b/gtk/smb_stat.c index 4b87d871d7..f4036d22c8 100644 --- a/gtk/smb_stat.c +++ b/gtk/smb_stat.c @@ -101,13 +101,13 @@ smbstat_packet(void *pss, packet_info *pinfo, epan_dissect_t *edt _U_, const voi add_srt_table_data(&ss->smb_srt_table, si->cmd, &si->sip->req_time, pinfo); - if(si->cmd==0xA0){ + if(si->cmd==0xA0 && si->sip->extra_info_type == SMB_EI_NTI){ smb_nt_transact_info_t *sti=(smb_nt_transact_info_t *)si->sip->extra_info; if(sti){ add_srt_table_data(&ss->nt_trans_srt_table, sti->subcmd, &si->sip->req_time, pinfo); } - } else if(si->cmd==0x32){ + } else if(si->cmd==0x32 && si->sip->extra_info == SMB_EI_T2I){ smb_transact2_info_t *st2i=(smb_transact2_info_t *)si->sip->extra_info; if(st2i){ |