X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FPackets%2F80211Bundle%2FInformationElements.hh;h=69fa2a93f64ac35db4213c4b134aee841e30d961;hb=cf48e83de9d4793ca5bd67d1e5acdb5b20968638;hp=21911d556810f622bee2bbe702ea4918841b1807;hpb=2571369f6d1701b241a56a78c6a3d6d7569799c7;p=senf.git diff --git a/senf/Packets/80211Bundle/InformationElements.hh b/senf/Packets/80211Bundle/InformationElements.hh index 21911d5..69fa2a9 100644 --- a/senf/Packets/80211Bundle/InformationElements.hh +++ b/senf/Packets/80211Bundle/InformationElements.hh @@ -56,9 +56,40 @@ namespace senf { SENF_PARSER_FINALIZE ( WLANSSIDInfoElementParser ); SENF_PARSER_INIT() { - type() = TYPEID; + type() = typeId; } - static const type_t::value_type TYPEID = 0x00u; + static const type_t::value_type typeId = 0x00u; + }; + + struct WLANSupportedRatesInfoElementParser + : public WLANInfoElementParser + { + # include SENF_PARSER() + SENF_PARSER_INHERIT ( WLANInfoElementParser ); + // we just skip the value here. If somebody needs the information he has to implement + // this strange information element hisself. + SENF_PARSER_SKIP ( length(), 0 ); + SENF_PARSER_FINALIZE ( WLANSupportedRatesInfoElementParser ); + + SENF_PARSER_INIT() { + type() = typeId; + } + static const type_t::value_type typeId = 0x01u; + }; + + struct WLANPowerConstraintInfoElementParser + : public WLANInfoElementParser + { + # include SENF_PARSER() + SENF_PARSER_INHERIT ( WLANInfoElementParser ); + SENF_PARSER_FIELD ( value, UInt8Parser ); + SENF_PARSER_FINALIZE ( WLANPowerConstraintInfoElementParser ); + + SENF_PARSER_INIT() { + type() = typeId; + length() = 1; + } + static const type_t::value_type typeId = 0x20u; }; }