]> The Tcpdump Group git mirrors - libpcap/commit
The Prism header is in theory variable-length, but in practice it's
authorguy <guy>
Sat, 29 Dec 2007 23:15:43 +0000 (23:15 +0000)
committerguy <guy>
Sat, 29 Dec 2007 23:15:43 +0000 (23:15 +0000)
commit00862cc529cf322e0eafdf6ce327bd75e2031a31
treea68b50ee8c6028baf8f38a9a221cc62558a0fca7
parent085a778d595d2ed26ea4df040db83a583b5ec5a2
The Prism header is in theory variable-length, but in practice it's
always 144 bytes long.  However, some drivers on Linux use
ARPHRD_IEEE80211_PRISM, but sometimes or always supply an AVS header, so
we have to check whether the radio header is a Prism header or an AVS
header, so, in practice, it's variable-length.

Treat DLT_PRISM_HEADER as having a variable-length header, and generate
code to find the length of the Prism header that first checks for an AVS
header and, if we have an AVS header, gets the length from the header,
and otherwise just gets a length of 144.  This fixes Sourceforge bug
1847574.

Sort various references to the radio headers (case labels, functions,
etc.) into the same order (Prism, AVS, radiotap), for consistency.  Put
PPI after them all.

Handle 802.11 and 802.11-plus-radio-header with a common case when
initializing.
gencode.c