add Mac48Address::IsBroadcast/IsMulticast
authorMathieu Lacage <mathieu.lacage@sophia.inria.fr>
Mon, 08 Oct 2007 14:43:29 +0200
changeset 1907 34f117b7a03b
parent 1906 c0901f40bd7e
child 1908 af48a02fe9a2
add Mac48Address::IsBroadcast/IsMulticast
src/node/mac48-address.cc
src/node/mac48-address.h
--- a/src/node/mac48-address.cc	Mon Oct 08 14:33:29 2007 +0200
+++ b/src/node/mac48-address.cc	Mon Oct 08 14:43:29 2007 +0200
@@ -133,6 +133,17 @@
   return type;
 }
 
+bool
+Mac48Address::IsBroadcast (void) const
+{
+  static Mac48Address broadcast = Mac48Address ("ff:ff:ff:ff:ff:ff");
+  return *this == broadcast;
+}
+bool 
+Mac48Address::IsMulticast (void) const
+{
+  return (m_address[0] & 0x01) == 0x01;
+}
 bool operator == (const Mac48Address &a, const Mac48Address &b)
 {
   uint8_t ada[6];
--- a/src/node/mac48-address.h	Mon Oct 08 14:33:29 2007 +0200
+++ b/src/node/mac48-address.h	Mon Oct 08 14:43:29 2007 +0200
@@ -79,6 +79,9 @@
    * Allocate a new Mac48Address.
    */
   static Mac48Address Allocate (void);
+
+  bool IsBroadcast (void) const;
+  bool IsMulticast (void) const;
 private:
   /**
    * \returns a new Address instance