aboutsummaryrefslogtreecommitdiffstats
path: root/wiretap/erf.c
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2010-02-02 04:56:39 +0000
committerAnders Broman <anders.broman@ericsson.com>2010-02-02 04:56:39 +0000
commit6dfde6891119b45e7ae543c4601ba69d5b833127 (patch)
treec15997d50f80ba59fc42d1992321cd17db6087b1 /wiretap/erf.c
parentda757e0833659186d2bf443e29cbfad7dc8f883c (diff)
From Stephen Donnelly:
Endace ATM and AAL2 enhancements. https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4447 svn path=/trunk/; revision=31766
Diffstat (limited to 'wiretap/erf.c')
-rw-r--r--wiretap/erf.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/wiretap/erf.c b/wiretap/erf.c
index d2076dc71e..c581490248 100644
--- a/wiretap/erf.c
+++ b/wiretap/erf.c
@@ -197,6 +197,7 @@ extern int erf_open(wtap *wth, int *err, gchar **err_info _U_)
case ERF_TYPE_MC_AAL5:
case ERF_TYPE_MC_AAL2:
case ERF_TYPE_COLOR_MC_HDLC_POS:
+ case ERF_TYPE_AAL2: /* not an MC type but has a similar 'AAL2 ext' header */
if (file_read(&mc_hdr,1,sizeof(mc_hdr),wth->fh) != sizeof(mc_hdr)) {
*err = file_error(wth->fh);
return -1;
@@ -358,6 +359,7 @@ static int erf_read_header(FILE_T fh,
}
/* Copy the ERF pseudo header */
+ memset(&pseudo_header->erf, 0, sizeof(pseudo_header->erf));
pseudo_header->erf.phdr.ts = pletohll(&erf_header->ts);
pseudo_header->erf.phdr.type = erf_header->type;
pseudo_header->erf.phdr.flags = erf_header->flags;
@@ -399,7 +401,6 @@ static int erf_read_header(FILE_T fh,
case ERF_TYPE_DSM_COLOR_HDLC_POS:
case ERF_TYPE_ATM:
case ERF_TYPE_AAL5:
- case ERF_TYPE_AAL2:
break;
case ERF_TYPE_ETH:
@@ -420,6 +421,7 @@ static int erf_read_header(FILE_T fh,
case ERF_TYPE_MC_AAL5:
case ERF_TYPE_MC_AAL2:
case ERF_TYPE_COLOR_MC_HDLC_POS:
+ case ERF_TYPE_AAL2: /* not an MC type but has a similar 'AAL2 ext' header */
wtap_file_read_expected_bytes(&mc_hdr, sizeof(mc_hdr), fh, err);
if (bytes_read != NULL)
*bytes_read += (guint32)sizeof(mc_hdr);