X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=pppd%2Feui64.h;h=f29200b818d7efd0fbfb1e2914a39255f99954b6;hb=509f04959ad891d7f981f035ed461d51bd1f74b0;hp=c48d689eda7b0dcf40df2e0bd83c7199d66705b0;hpb=5ece6e68baaf9fdbd6e73daa7b27335f8852d85b;p=ppp.git diff --git a/pppd/eui64.h b/pppd/eui64.h index c48d689..f29200b 100644 --- a/pppd/eui64.h +++ b/pppd/eui64.h @@ -33,44 +33,14 @@ * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * */ +#ifndef PPP_EUI64_H +#define PPP_EUI64_H -#ifndef __EUI64_H__ -#define __EUI64_H__ +#include "pppdconf.h" -#if !defined(INET6) -#error "this file should only be included when INET6 is defined" -#endif /* not defined(INET6) */ - -#if defined(SOL2) -#include - -typedef union { - uint8_t e8[8]; /* lower 64-bit IPv6 address */ - uint32_t e32[2]; /* lower 64-bit IPv6 address */ -} eui64_t; - -/* - * Declare the two below, since in.h only defines them when _KERNEL - * is declared - which shouldn't be true when dealing with user-land programs - */ -#define s6_addr8 _S6_un._S6_u8 -#define s6_addr32 _S6_un._S6_u32 - -#else /* else if not defined(SOL2) */ - -/* - * TODO: - * - * Maybe this should be done by processing struct in6_addr directly... - */ -typedef union -{ - u_int8_t e8[8]; - u_int16_t e16[4]; - u_int32_t e32[2]; -} eui64_t; - -#endif /* defined(SOL2) */ +#if !defined(PPP_WITH_IPV6CP) +#error "this file should only be included when PPP_WITH_IPV6CP is defined" +#endif /* not defined(PPP_WITH_IPV6CP) */ #define eui64_iszero(e) (((e).e32[0] | (e).e32[1]) == 0) #define eui64_equals(e, o) (((e).e32[0] == (o).e32[0]) && \ @@ -109,5 +79,4 @@ typedef union char *eui64_ntoa(eui64_t); /* Returns ascii representation of id */ -#endif /* __EUI64_H__ */ - +#endif /* PPP_EUI64_H */