X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=pppd%2Feui64.h;h=f29200b818d7efd0fbfb1e2914a39255f99954b6;hb=607d8eadccfd62c1fa84a36bd1440bd48b4e55ca;hp=2ea42ce1e74e4156b9522776dc3777e66ca5598e;hpb=a8c240d24e1b254284c06b06de06a66828eeec57;p=ppp.git diff --git a/pppd/eui64.h b/pppd/eui64.h index 2ea42ce..f29200b 100644 --- a/pppd/eui64.h +++ b/pppd/eui64.h @@ -1,34 +1,46 @@ /* * eui64.h - EUI64 routines for IPv6CP. * - * (c) 1999 Tommi Komulainen + * Copyright (c) 1999 Tommi Komulainen. All rights reserved. * - * Redistribution and use in source and binary forms are permitted - * provided that the above copyright notice and this paragraph are - * duplicated in all such forms and that any documentation, - * advertising materials, and other materials related to such - * distribution and use acknowledge that the software was developed - * by Carnegie Mellon University. The name of the - * University may not be used to endorse or promote products derived - * from this software without specific prior written permission. - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED - * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: * - * $Id: eui64.h,v 1.1 1999/08/13 01:58:43 paulus Exp $ - */ - -/* - * TODO: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. The name(s) of the authors of this software must not be used to + * endorse or promote products derived from this software without + * prior written permission. + * + * 4. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by Tommi Komulainen + * ". + * + * THE AUTHORS OF THIS SOFTWARE DISCLAIM ALL WARRANTIES WITH REGARD TO + * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS, IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY + * SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN + * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING + * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * 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; +#ifndef PPP_EUI64_H +#define PPP_EUI64_H + +#include "pppdconf.h" + +#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]) && \ @@ -65,4 +77,6 @@ typedef union } while (0) #define eui64_setlo32(e, l) eui64_set32(e, l) -char *eui64_ntoa __P((eui64_t)); /* Returns ascii representation of id */ +char *eui64_ntoa(eui64_t); /* Returns ascii representation of id */ + +#endif /* PPP_EUI64_H */