X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=datapath%2Flinux-2.6%2Fcompat-2.6%2Finclude%2Flinux%2Fin.h;h=f91a832a7f1742f534f13daaf64cf237114f0474;hb=d43e8ef3f41160a8c45f96216faffb4afd957948;hp=2cfe6450e11f541a66498ad19500b9492306c94f;hpb=db12f2fc076e2d5bb5ae364e217ca2d84c8b0154;p=openvswitch diff --git a/datapath/linux-2.6/compat-2.6/include/linux/in.h b/datapath/linux-2.6/compat-2.6/include/linux/in.h index 2cfe6450..f91a832a 100644 --- a/datapath/linux-2.6/compat-2.6/include/linux/in.h +++ b/datapath/linux-2.6/compat-2.6/include/linux/in.h @@ -3,14 +3,34 @@ #include_next -#include -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,25) +#ifndef HAVE_IPV4_IS_MULTICAST + +static inline bool ipv4_is_loopback(__be32 addr) +{ + return (addr & htonl(0xff000000)) == htonl(0x7f000000); +} static inline bool ipv4_is_multicast(__be32 addr) { return (addr & htonl(0xf0000000)) == htonl(0xe0000000); } -#endif /* linux kernel < 2.6.25 */ +static inline bool ipv4_is_local_multicast(__be32 addr) +{ + return (addr & htonl(0xffffff00)) == htonl(0xe0000000); +} + +static inline bool ipv4_is_lbcast(__be32 addr) +{ + /* limited broadcast */ + return addr == htonl(INADDR_BROADCAST); +} + +static inline bool ipv4_is_zeronet(__be32 addr) +{ + return (addr & htonl(0xff000000)) == htonl(0x00000000); +} + +#endif /* !HAVE_IPV4_IS_MULTICAST */ #endif