X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FPackets%2F80211Bundle%2FRadiotapPacket.cci;h=606d6ceb79a3bed393cf55e8a9c4e37155bdb8ad;hb=ec082e2ded82e26d02f7aa72da519cbadcb601ec;hp=2164b40a001dffbde2c218cbca9fa84edbc169b6;hpb=01e8fa6cf173c60c3deb47c29c6d56718ef9548e;p=senf.git diff --git a/senf/Packets/80211Bundle/RadiotapPacket.cci b/senf/Packets/80211Bundle/RadiotapPacket.cci index 2164b40..606d6ce 100644 --- a/senf/Packets/80211Bundle/RadiotapPacket.cci +++ b/senf/Packets/80211Bundle/RadiotapPacket.cci @@ -35,7 +35,12 @@ prefix_ senf::RadiotapPacketParser::RadiotapPacketParser(data_iterator i, state_type s) : RadiotapPacketParser_Header(i,s) -{} +{ + OffsetTable & table (offsetTable(presentFlags())); + if (! table[MAX_INDEX+1]) + parseOffsetTable(&(*data().begin()), data().size(), table); + currentTable_ = &table; +} prefix_ senf::RadiotapPacketParser::size_type senf::RadiotapPacketParser::bytes() const @@ -77,6 +82,13 @@ prefix_ senf::RadiotapPacketParser::size_type senf::RadiotapPacketParser::calcul return currentTable()[MAX_INDEX+1]; } +prefix_ senf::RadiotapPacketParser::OffsetTable const & +senf::RadiotapPacketParser::currentTable() + const +{ + return *currentTable_; +} + ///////////////////////////////cci.e/////////////////////////////////////// #undef prefix_