значит имеется простая программа, открывающая device 'bpf0', устанавливающая интерфейс прослушивания и datalink level. (а именно: устанавливает ath0 и DLT_IEEE802_11_RADIO соответственно) затем просто читает с него(bpf0) и пишет в stdout. не могу понять в чем ошибка, bpf передает перед 0x236-м фрэймом какие-то 2 байта из-за котоых валится анализатор: вот 0x236-й фрэйм, за ним 2 байта, а затем следующий фрэйм: (gdb) x/160xb *_start+47884 0x805703c <_start+47884>: 0xda 0xf3 0xa3 0x4a 0x24 0x6f 0x0d 0x00 0x8057044 <_start+47892>: 0x2e 0x00 0x00 0x00 0x2e 0x00 0x00 0x00 0x805704c <_start+47900>: 0x14 0x00 0x00 0x00 0x00 0x00 0x20 0x00 0x8057054 <_start+47908>: 0x67 0x08 0x04 0x00 0x04 0xd4 0x10 0x1a 0x805705c <_start+47916>: 0x00 0x00 0x00 0x00 0x32 0x16 0xaa 0xa0 0x8057064 <_start+47924>: 0x01 0x00 0x00 0x00 0x80 0x04 0x00 0x00 0x805706c <_start+47932>: 0x85 0x09 0x06 0x14 0xc4 0x00 0x3b 0x12 0x8057074 <_start+47940>: 0x00 0x21 0x27 0xe8 0x05 0x1a 0x75 0x19 0x805707c <_start+47948>: 0x98 0x5c 0x05 0x1a 0xda 0xf3 0xa3 0x4a 0x8057084 <_start+47956>: 0x2a 0x6f 0x0d 0x00 0x34 0x00 0x00 0x00 0x805708c <_start+47964>: 0x34 0x00 0x00 0x00 0x14 0x00 0x18 0x24 0x8057094 <_start+47972>: 0x00 0x00 0x20 0x00 0x67 0x08 0x04 0x00 0x805709c <_start+47980>: 0x80 0xe3 0x10 0x1a 0x00 0x00 0x00 0x00 0x80570a4 <_start+47988>: 0x32 0x16 0xa9 0xa0 0x01 0x00 0x00 0x00 0x80570ac <_start+47996>: 0x80 0x04 0x00 0x00 0x85 0x09 0x06 0x14 0x80570b4 <_start+48004>: 0xe4 0x00 0x00 0x00 0xff 0xff 0xff 0xff 0x80570bc <_start+48012>: 0xff 0xff 0x00 0x21 0x27 0xe8 0x05 0x1a 0x80570c4 <_start+48020>: 0xf3 0x0f 0xc1 0x8b 0xda 0xf3 0xa3 0x4a 0x80570cc <_start+48028>: 0x30 0x6f 0x0d 0x00 0x2e 0x00 0x00 0x00 0x80570d4 <_start+48036>: 0x2e 0x00 0x00 0x00 0x14 0x00 0x00 0x00 немного разобрал: (gdb) x/160xb *_start+47884 0x805703c <bpf header>: 0xda 0xf3 0xa3 0x4a 0x24 0x6f 0x0d 0x00 0x8057044 <_start+47892>: 0x2e 0x00 0x00 0x00 0x2e 0x00 0x00 0x00 0x805704c <_start+47900>: 0x14 0x00 0x00 0x00 0x8057050 <802.11 radio hdr>: 0x00 0x00 0x20 0x00 0x8057054 <_start+47908>: 0x67 0x08 0x04 0x00 0x04 0xd4 0x10 0x1a 0x805705c <_start+47916>: 0x00 0x00 0x00 0x00 0x32 0x16 0xaa 0xa0 0x8057064 <_start+47924>: 0x01 0x00 0x00 0x00 0x80 0x04 0x00 0x00 0x805706c <_start+47932>: 0x85 0x09 0x06 0x14 0x8057070 <802.11 frame>: 0xc4 0x00 0x3b 0x12 0x8057074 <_start+47940>: 0x00 0x21 0x27 0xe8 0x05 0x1a 0x75 0x19 0x805707c <_start+47948>: 0x98 0x5c 0x805707e <WHAT IS IT ????>: 0x05 0x1a 0x8057080 <next frame>: 0xda 0xf3 0xa3 0x4a 0x8057084 <_start+47956>: 0x2a 0x6f 0x0d 0x00 0x34 0x00 0x00 0x00 0x805708c <_start+47964>: 0x34 0x00 0x00 0x00 0x14 0x00 0x18 0x24 0x8057094 <_start+47972>: 0x00 0x00 0x20 0x00 0x67 0x08 0x04 0x00 0x805709c <_start+47980>: 0x80 0xe3 0x10 0x1a 0x00 0x00 0x00 0x00 0x80570a4 <_start+47988>: 0x32 0x16 0xa9 0xa0 0x01 0x00 0x00 0x00 0x80570ac <_start+47996>: 0x80 0x04 0x00 0x00 0x85 0x09 0x06 0x14 0x80570b4 <_start+48004>: 0xe4 0x00 0x00 0x00 0xff 0xff 0xff 0xff 0x80570bc <_start+48012>: 0xff 0xff 0x00 0x21 0x27 0xe8 0x05 0x1a 0x80570c4 <_start+48020>: 0xf3 0x0f 0xc1 0x8b 0xda 0xf3 0xa3 0x4a 0x80570cc <_start+48028>: 0x30 0x6f 0x0d 0x00 0x2e 0x00 0x00 0x00 0x80570d4 <_start+48036>: 0x2e 0x00 0x00 0x00 0x14 0x00 0x00 0x00 причем это возникает не только на wifi,- на обычной сетевухе тоже самое ps: Freebsd 7.1
все, понял (те прочитал) граница заголовка выравнивается на границу дубльворда, но остается вопрос - почему именно 0x05, 0x1a? а не 00 00?
....поторопился с выводами, забираю эти слова назад ("...граница заголовка выравнивается на границу дубльворда") чтото не так...