Packets/80221Bundle: fixed error in MIHF_ID-TLV; restructured TLV finalize()
[senf.git] / senf / Packets / 80211Bundle / WLANPacket.cc
index 1eb13e9..47011b2 100644 (file)
 
 // Definition of non-inline non-template functions
 
-// Custom includes
 #include "WLANPacket.hh"
-#include <senf/Packets/Packets.hh>
+//#include "WLANPacket.ih"
+
+// Custom includes
 #include <boost/io/ios_state.hpp>
 
 #define prefix_
+///////////////////////////////cc.p///////////////////////////////////////
 
 namespace {
-    
     void dumpBase(senf::WLANPacketParser const & p, std::ostream & os)
     {
         os << "  version                 : " << unsigned(p.version()) <<"\n"
@@ -57,23 +58,23 @@ namespace {
 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 Mangement Frame:\n";
     dumpBase(p.parser(), os);
-    os     << "  destination             : " << p->destinationAddress() << "\n"
-           << "  source                  : " << p->sourceAddress() << "\n"
-           << "  bss id                  : " << p->bssid() << "\n"
-           << "  sequence number         : " << p->sequenceNumber() << "\n"
-           << "  fragment number         : " << p->fragmentNumber() << "\n";
+    os << senf::fieldName("destination")           << p->destinationAddress() << "\n"
+       << senf::fieldName("source")                << p->sourceAddress() << "\n"
+       << senf::fieldName("bss id")                << p->bssid() << "\n"
+       << senf::fieldName("sequence number")       << p->sequenceNumber() << "\n"
+       << senf::fieldName("fragment number")       << p->fragmentNumber() << "\n";
 }
 
 prefix_ void senf::WLANPacket_CtrlFrameType::dump(packet p, std::ostream &os)
 {
     boost::io::ios_all_saver ias(os);
-    os     << "802.11 MAC Control Frame:\n";
+    os << "802.11 MAC Control Frame:\n";
     dumpBase(p.parser(), os);
-    os     << "  receiver                : " << p->receiverAddress() << "\n";
+    os << senf::fieldName("receiver")              << p->receiverAddress() << "\n";
     if (p->is_rts())
-        os << "  source                  : " << p->sourceAddress() << "\n";
+        os << senf::fieldName("source")                << p->sourceAddress() << "\n";
 }
 
 prefix_ senf::MACAddressParser senf::WLANPacket_DataFrameParser::destinationAddress()
@@ -81,56 +82,62 @@ prefix_ senf::MACAddressParser senf::WLANPacket_DataFrameParser::destinationAddr
 {
     switch (dsBits()) {
     case 0 :
-    case 2 : return addr1();
-    default: return addr3();
+    case 2 : 
+        return addr1();
+    default: 
+        return addr3();
     }
 }
 
 prefix_ senf::MACAddressParser senf::WLANPacket_DataFrameParser::sourceAddress()
     const
 {
-    switch (dsBits())
-    {
+    switch (dsBits()) {
     case 0 :
-    case 1 : return addr2();
+    case 1 :
+        return addr2();
     // TODO wds frames
     // case 3 : return addr4();
-    default: return addr3();
+    default: 
+        return addr3();
     }
 }
 
 prefix_ senf::MACAddressParser senf::WLANPacket_DataFrameParser::bssid()
     const
 {
-    switch (dsBits())
-    {
-    case 0 : return addr3();
-    case 1 : return addr1();
-    default: return addr2();
+    switch (dsBits()) {
+    case 0 :
+        return addr3();
+    case 1 :
+        return addr1();
+    default:
+        return addr2();
     }
 }
 
 prefix_ void senf::WLANPacket_DataFrameType::dump(packet p, std::ostream &os)
 {
     boost::io::ios_all_saver ias(os);
-    os     << "802.11 MAC Data Frame:\n";
+    os << "802.11 MAC Data Frame:\n";
     dumpBase(p.parser(), os);
-    os     << "  destination             : " << p->destinationAddress();
+    os << senf::fieldName("destination")               << p->destinationAddress();
     if (p->dsBits()==0 || p->dsBits()==2) os << " (receiver)";
-    os     << "\n"
-           << "  source                  : " << p->sourceAddress();
+    os << "\n"
+       << senf::fieldName("source")                    << p->sourceAddress();
     if (p->dsBits()==0 || p->dsBits()==1) os << " (transmitter)";
-    os     << "\n"
-           << "  bss id                  : " << p->bssid();
+    os << "\n"
+       << senf::fieldName("bss id")                    << p->bssid();
     if (p->dsBits()==1) os << " (receiver)";
     else if (p->dsBits()!=0) os << " (transmitter)";
-    os     << "\n"
-           << "  sequence number         : " << p->sequenceNumber() << "\n"
-           << "  fragment number         : " << p->fragmentNumber() << "\n";
+    os << "\n"
+       << senf::fieldName("sequence number")           << p->sequenceNumber() << "\n"
+       << senf::fieldName("fragment number")           << p->fragmentNumber() << "\n";
     if (p->has_qosField())
-        os << "  QOS data                : " << p->qosField() << "\n";
+        os << senf::fieldName("QOS data")              << p->qosField() << "\n";
 }
 
+///////////////////////////////cc.e////////////////////////////////////////
 #undef prefix_
 
 \f