#include <boost/io/ios_state.hpp>
#define prefix_
-///////////////////////////////cc.p///////////////////////////////////////
+//-/////////////////////////////////////////////////////////////////////////////////////////////////
namespace {
void dumpBase(senf::WLANPacketParser const & p, std::ostream & os)
if ( p.order() ) os << " order";
if ( !(p.toDS() || p.fromDS() || p.moreFrag() || p.retry() || p.pwrMgt() ||
- p.moreData() || p.protectedFrame() || p.order()) )
+ p.moreData() || p.protectedFrame() || p.order()) )
os << " none";
os << "\n"
<< " duration : " << unsigned(p.duration()) << "\n";
}
}
+prefix_ void senf::WLANPacket_MgtFrameParser::sequenceNumber(boost::uint16_t sn)
+{
+ seqNumber_2() = 0u | (sn >> 4 ) ;
+ seqNumber_1() = 0u | sn;
+}
+
prefix_ void senf::WLANPacket_MgtFrameType::dump(packet p, std::ostream &os)
{
boost::io::ios_all_saver ias(os);
- os << "802.11 MAC Mangement Frame:\n";
+ os << "802.11 MAC Management Frame:\n";
dumpBase(p.parser(), os);
os << senf::fieldName("destination") << p->destinationAddress() << "\n"
<< senf::fieldName("source") << p->sourceAddress() << "\n"
os << senf::fieldName("source") << p->sourceAddress() << "\n";
}
+prefix_ void senf::WLANPacket_DataFrameParser::sequenceNumber(boost::uint16_t sn)
+{
+ seqNumber_2() = 0u | (sn >> 4 ) ;
+ seqNumber_1() = 0u | sn;
+}
+
+
prefix_ senf::MACAddressParser senf::WLANPacket_DataFrameParser::destinationAddress()
const
{
switch (dsBits()) {
case 0 :
- case 2 :
+ case 2 :
return addr1();
- default:
+ default:
return addr3();
}
}
return addr2();
// TODO wds frames
// case 3 : return addr4();
- default:
+ default:
return addr3();
}
}
os << senf::fieldName("QOS data") << p->qosField() << "\n";
}
-///////////////////////////////cc.e////////////////////////////////////////
+//-/////////////////////////////////////////////////////////////////////////////////////////////////
#undef prefix_
\f