/* * ipv6cp.h * * Written by Alexander Motin */ #ifndef _IPV6CP_H_ #define _IPV6CP_H_ #include #include #include #include "command.h" /* * DEFINITONS */ /* Configuration options */ /* enum { };*/ struct ipv6cpconf { struct optinfo options; /* Configuraion options */ }; typedef struct ipv6cpconf *Ipv6cpConf; struct ipv6cpstate { struct ipv6cpconf conf; /* Configuration */ u_char myintid[8]; u_char hisintid[8]; struct in6_addr want_addr; /* IPv6 address I'm willing to use */ struct in6_addr peer_addr; /* IPv6 address he is willing to use */ uint32_t peer_reject; /* Request codes rejected by peer */ struct fsm fsm; }; typedef struct ipv6cpstate *Ipv6cpState; /* * VARIABLES */ extern const struct cmdtab Ipv6cpSetCmds[]; /* * FUNCTIONS */ extern void Ipv6cpInit(Bund b); extern void Ipv6cpInst(Bund b, Bund bt); extern void Ipv6cpUp(Bund b); extern void Ipv6cpDown(Bund b); extern void Ipv6cpOpen(Bund b); extern void Ipv6cpClose(Bund b); extern int Ipv6cpOpenCmd(Context ctx); extern int Ipv6cpCloseCmd(Context ctx); extern void Ipv6cpInput(Bund b, Mbuf bp); extern void Ipv6cpDefAddress(void); extern int Ipv6cpStat(Context ctx, int ac, char *av[], void *arg); #endif