X-Git-Url: https://git.ozlabs.org/?p=ppp.git;a=blobdiff_plain;f=pppd%2Fipv6cp.h;h=3be5885abbda926c42b0c2a50aee2d4c4e589ac6;hp=19bc01362f8b9a69d032ffb1be15cac89abca4e7;hb=HEAD;hpb=c58bf2e8023dd846683f09cb00e15d64143dac8c diff --git a/pppd/ipv6cp.h b/pppd/ipv6cp.h index 19bc013..3be5885 100644 --- a/pppd/ipv6cp.h +++ b/pppd/ipv6cp.h @@ -34,6 +34,15 @@ * */ +#ifndef PPP_IPV6CP_H +#define PPP_IPV6CP_H + +#include "pppdconf.h" + +#ifdef __cplusplus +extern "C" { +#endif + /* Original version, based on RFC2023 : Copyright (c) 1995, 1996, 1997 Francis.Dupont@inria.fr, INRIA Rocquencourt, @@ -155,6 +164,7 @@ typedef struct ipv6cp_options { int opt_remote; /* histoken set by option */ int use_ip; /* use IP as interface identifier */ int use_persistent; /* use uniquely persistent value for address */ + int use_remotenumber; /* use remote number value for address */ int neg_vj; /* Van Jacobson Compression? */ u_short vj_protocol; /* protocol value to use in VJ option */ eui64_t ourid, hisid; /* Interface identifiers */ @@ -167,3 +177,21 @@ extern ipv6cp_options ipv6cp_allowoptions[]; extern ipv6cp_options ipv6cp_hisoptions[]; extern struct protent ipv6cp_protent; + +/* + * Hook for a plugin to know when IPv6 protocol has come up + */ +typedef void (ipv6_up_hook_fn)(void); +extern ipv6_up_hook_fn *ipv6_up_hook; + +/* + * Hook for a plugin to know when IPv6 protocol has come down + */ +typedef void (ipv6_down_hook_fn)(void); +extern ipv6_down_hook_fn *ipv6_down_hook; + +#ifdef __cplusplus +} +#endif + +#endif