X-Git-Url: https://hackdaworld.org/gitweb/?p=my-code%2Fhdw-sniff.git;a=blobdiff_plain;f=parse.h;fp=parse.h;h=9278dc35a96409935663291f7d2d986381e28ecb;hp=9814b01b329490f8434d0db437447e3c0a49bb16;hb=092d5875054be009b3baeb2830e1fccf1c894b88;hpb=e70ca3ea585304a1fed7475b9a9cdface81917eb diff --git a/parse.h b/parse.h index 9814b01..9278dc3 100644 --- a/parse.h +++ b/parse.h @@ -70,17 +70,17 @@ typedef struct s_prism_hdr { t_prism_val frame_len; } __attribute__ ((packed)) t_prism_hdr; -#define FCTL_VER(X) ((X&0x0003)) -#define FCTL_TYPE(X) ((X&0x000c)>>2) -#define FCTL_STYPE(X) ((X&0x00f0)>>4) -#define FCTL_TODS(X) ((X&0x0100)>>8) -#define FCTL_FROMDS(X) ((X&0x0200)>>9) -#define FCTL_MOREFRAG(X) ((X&0x0400)>>10) -#define FCTL_RETRY(X) ((X&0x0800)>>11) -#define FCTL_PWRMGT(X) ((X&1000)>>12) -#define FCTL_MOREDATA(X) ((X&0x2000)>>13) -#define FCTL_WEP(X) ((X&0x4000)>>14) -#define FCTL_ORDER(X) ((X&0x800)>>15) +#define FCTL_VER(X) (((*(u16 *)&X)&0x0003)) +#define FCTL_TYPE(X) (((*(u16 *)&X)&0x000c)>>2) +#define FCTL_STYPE(X) (((*(u16 *)&X)&0x00f0)>>4) +#define FCTL_TODS(X) (((*(u16 *)&X)&0x0100)>>8) +#define FCTL_FROMDS(X) (((*(u16 *)&X)&0x0200)>>9) +#define FCTL_MOREFRAG(X) (((*(u16 *)&X)&0x0400)>>10) +#define FCTL_RETRY(X) (((*(u16 *)&X)&0x0800)>>11) +#define FCTL_PWRMGT(X) (((*(u16 *)&X)&1000)>>12) +#define FCTL_MOREDATA(X) (((*(u16 *)&X)&0x2000)>>13) +#define FCTL_WEP(X) (((*(u16 *)&X)&0x4000)>>14) +#define FCTL_ORDER(X) (((*(u16 *)&X)&0x800)>>15) #define FCTL_TYPE_MGMT 0 #define FCTL_TYPE_CTRL 1