summaryrefslogtreecommitdiff
path: root/print-juniper.c
diff options
context:
space:
mode:
authorhannes <hannes>2006-06-14 21:40:00 +0000
committerhannes <hannes>2006-06-14 21:40:00 +0000
commitb0d4e1f955f91a53de2851d1727496ae0aab5bac (patch)
tree2b8f99d7e2d254a81ab8dd9ab8e77ae8437f4fbb /print-juniper.c
parent476bd0e900978da41d4764fc3aea0e01e6b73871 (diff)
downloadtcpdump-b0d4e1f955f91a53de2851d1727496ae0aab5bac.tar.gz
bugfix: ggsn: parse against cookies and not the ip header
Diffstat (limited to 'print-juniper.c')
-rw-r--r--print-juniper.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/print-juniper.c b/print-juniper.c
index 58cdd999..a4f70ada 100644
--- a/print-juniper.c
+++ b/print-juniper.c
@@ -15,7 +15,7 @@
#ifndef lint
static const char rcsid[] _U_ =
- "@(#) $Header: /tcpdump/master/tcpdump/print-juniper.c,v 1.32 2006-06-14 16:13:51 hannes Exp $ (LBL)";
+ "@(#) $Header: /tcpdump/master/tcpdump/print-juniper.c,v 1.33 2006-06-14 21:40:00 hannes Exp $ (LBL)";
#endif
#ifdef HAVE_CONFIG_H
@@ -467,13 +467,14 @@ juniper_ggsn_print(const struct pcap_pkthdr *h, register const u_char *p)
return l2info.header_len;
p+=l2info.header_len;
- gh = (struct juniper_ggsn_header *)p;
+ gh = (struct juniper_ggsn_header *)&l2info.cookie;
- if (eflag)
+ if (eflag) {
printf("proto %s (%u), vlan %u: ",
tok2str(juniper_protocol_values,"Unknown",gh->proto),
gh->proto,
EXTRACT_16BITS(&gh->vlan_id[0]));
+ }
switch (gh->proto) {
case JUNIPER_PROTO_IPV4: