-------------------
The Ethereal project is being continued at a new site. Please go to
http://www.wireshark.org and subscribe to wireshark-dev@xxxxxxxxxxxxx.
Don't forget to unsubscribe from this list at
http://www.ethereal.com/mailman/listinfo/ethereal-dev
-------------------
There is a small bug in the function dissect_ppp() which prevents proper
demuxing of packets. Patch is attached.
Don
--- packet-ppp.c.orig 2006-04-17 07:46:42.000000000 -0700
+++ packet-ppp.c 2006-08-27 20:31:09.207622400 -0700
@@ -2994,7 +2994,7 @@
flags = tvb_get_guint8(tvb,offset) & PPPMUX_FLAGS_MASK;
- if (flags && PPPMUX_LXT_BIT_SET ) {
+ if (flags & PPPMUX_LXT_BIT_SET ) {
length = tvb_get_ntohs(tvb,offset) & 0x3fff;
length_field = 2;
} else {
@@ -3002,9 +3002,9 @@
length_field = 1;
}
- if (flags && PPPMUX_PFF_BIT_SET) {
+ if (flags & PPPMUX_PFF_BIT_SET) {
byte = tvb_get_guint8(tvb,offset + length_field);
- if (byte && PFC_BIT) { /* Compressed PID field*/
+ if (byte & PFC_BIT) { /* Compressed PID field*/
pid = byte;
pid_field = 1;
} else { /*PID field is 2 bytes*/
@@ -3038,7 +3038,7 @@
ti = proto_tree_add_text(hdr_tree,tvb,offset,length_field,"Sub-frame Length = %u",length);
- if (flags && PPPMUX_PFF_BIT_SET)
+ if (flags & PPPMUX_PFF_BIT_SET)
proto_tree_add_text(hdr_tree,tvb,offset + length_field,pid_field,"%s: %s(0x%02x)",
"Protocol ID",val_to_str(pid,ppp_vals,"Unknown"), pid);
_______________________________________________
Ethereal-dev mailing list
Ethereal-dev@xxxxxxxxxxxx
http://www.ethereal.com/mailman/listinfo/ethereal-dev