From 02f8e4cddf0a9351d3bbb8775e64ad26c5af3037 Mon Sep 17 00:00:00 2001
From: tho <tho@wiback.org>
Date: Thu, 11 Dec 2008 09:36:34 +0000
Subject: [PATCH] WLANPacket: one line is better than five ;)

---
 Packets/80211Bundle/WLANPacket.cc | 21 ---------------------
 Packets/80211Bundle/WLANPacket.hh |  8 ++++++--
 2 files changed, 6 insertions(+), 23 deletions(-)

diff --git a/Packets/80211Bundle/WLANPacket.cc b/Packets/80211Bundle/WLANPacket.cc
index c4c651259..2f1c1481d 100644
--- a/Packets/80211Bundle/WLANPacket.cc
+++ b/Packets/80211Bundle/WLANPacket.cc
@@ -81,27 +81,6 @@ prefix_ senf::MACAddressParser senf::WLANPacket_DataFrameParser::bssid()
     return addr1();
 }
 
-//shift some bits to read the 12bit sequence number bit field in LSB byte order
-prefix_ boost::uint16_t senf::WLANPacket_MgtFrameParser::sequenceNumber()
-    const
-{
-    boost::uint16_t seqN = 0;
-    seqN |= seqNumber_2();
-    seqN <<= 4;
-    seqN |= seqNumber_1();
-    return seqN;
-}
-
-//shift some bits to read the 12bit sequence number bit field in LSB byte order
-prefix_ boost::uint16_t senf::WLANPacket_DataFrameParser::sequenceNumber()
-    const
-{
-    boost::uint16_t seqN = 0;
-    seqN |= seqNumber_2();
-    seqN <<= 4;
-    seqN |= seqNumber_1();
-    return seqN;
-}
 
 prefix_ void senf::WLANPacketType::dump(packet p, std::ostream &os)
 {
diff --git a/Packets/80211Bundle/WLANPacket.hh b/Packets/80211Bundle/WLANPacket.hh
index 52c71b53d..313882619 100644
--- a/Packets/80211Bundle/WLANPacket.hh
+++ b/Packets/80211Bundle/WLANPacket.hh
@@ -58,7 +58,9 @@ namespace senf
         //this is needed due to the goto in the WLANPacketParser. Don't know exactly why yet.
         SENF_PARSER_INIT() {}
 
-        boost::uint16_t sequenceNumber() const;
+        boost::uint16_t sequenceNumber() const {
+            return (uint16_t)(seqNumber_2()) << 4 | seqNumber_1();
+        };
     };
 
     /** \brief Control frame parser
@@ -136,7 +138,9 @@ namespace senf
         //this is needed to due to the goto in the WLANPacketParser. Don't know exactly why yet.
         SENF_PARSER_INIT() {}
 
-        boost::uint16_t sequenceNumber() const;
+        boost::uint16_t sequenceNumber() const {
+            return (uint16_t)(seqNumber_2()) << 4 | seqNumber_1();
+        };
 
         MACAddressParser receiverAddress() const    { return addr1(); }; //ra is always addr1
         MACAddressParser transmitterAddress() const { return addr2(); }; //ta is always addr2
-- 
GitLab