Firefly's raw capture tool for RAlink cards saves the result in LibPCap format. You can either look at these files using Ethereal or write a loader. Towards that end, here is C code defining the structures.

Fixme: add links to other descriptions of libpcap, etc...

#pragma pack(push)

#pragma pack(1)

typedef struct sPCapHeader {

 uint32 magicNumber;      // magic number
 uint16 version[2];       // version number
 int32  timeZone;         // difference between capture time zone and GMT
 uint32 stampAccuracy;    // accuracy of timestamps
 uint32 maxRecordLength;  // max length of captured packets (bytes)
 uint32 networkType;      // network link type

} tPCapHeader;

const uint32 PCapMagic = 0xA1B2C3D4; const uint32 PCapMagicReversed = 0xD4C3B2A1;

typedef struct sPCapRecord {

uint32 timeSecs;       // timestamp (seconds)
uint32 timeUSecs;      // timestamp (microseconds)
uint32 recordedLength; // number of bytes of packet saved in file
uint32 originalLength; // actual length of packet

} tPCapRecord;

const uint32 AVS_REVISION = 0x80211001;

typedef struct sAVSWLanHeader {

 uint32 revision;
 uint32 length;
 uint8 timestamp[8];
 uint8 hostTime[8];
 uint32 phyType;
 uint32 channel;
 uint32 dataRate;
 uint32 antenna;
 uint32 priority;
 uint32 ssiType;
 uint32 ssiSignal;
 uint32 ssiNoise;
 uint32 preamble;
 uint32 encoding;

} tAVSWLanHeader;

#pragma pack(pop)

トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2013-10-27 (日) 17:45:29 (2646d)