> 1) LLC 1.
> --------
> In frame 185 and 186, i have a trouble with summary line, protocole
> display and filters. The info say 'response' for command' and 'command'
> for 'response'.
We got the order of "Command" and "Response" wrong in the line that sets
them; elsewhere, we correctly treated the C/R bit in the SSAP as meaning
"Command" if not set, and "Response" if set, but we did it the other way
around in that one line.
> If you try to make a 'match selected' after selected Data in protocole
> window,
> the filter take also DSAP, SSAP, Control field and data ( 6 bytes
> instead of 3 ).
When dissecting the contents of non-SNAP frames that didn't contain
higher-level protocol data, we didn't correctly start the dissection at
the octet *after* the LLC header.
I've attached a patch that should fix those problems.
Index: packet-llc.c
===================================================================
RCS file: /usr/local/cvsroot/ethereal/packet-llc.c,v
retrieving revision 1.50
diff -c -r1.50 packet-llc.c
*** packet-llc.c 2000/04/08 07:55:11 1.50
--- packet-llc.c 2000/04/09 18:29:22
***************
*** 445,451 ****
"Group" : "Individual",
val_to_str(pd[offset+1] & SAP_MASK, sap_vals, "%02x"),
pd[offset+1] & SSAP_CR_BIT ?
! "Command" : "Response"
);
}
--- 445,451 ----
"Group" : "Individual",
val_to_str(pd[offset+1] & SAP_MASK, sap_vals, "%02x"),
pd[offset+1] & SSAP_CR_BIT ?
! "Response" : "Command"
);
}
***************
*** 461,468 ****
else {
dissect_data(pd, offset, fd, tree);
}
! } else
dissect_data(pd, offset, fd, tree);
}
}
--- 461,470 ----
else {
dissect_data(pd, offset, fd, tree);
}
! } else {
! offset += llc_header_len;
dissect_data(pd, offset, fd, tree);
+ }
}
}