summaryrefslogtreecommitdiffstats
path: root/usr.sbin/rtadvd/rtadvd.h
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/rtadvd/rtadvd.h')
-rw-r--r--usr.sbin/rtadvd/rtadvd.h25
1 files changed, 23 insertions, 2 deletions
diff --git a/usr.sbin/rtadvd/rtadvd.h b/usr.sbin/rtadvd/rtadvd.h
index 3ffc7e6..c05dcf4 100644
--- a/usr.sbin/rtadvd/rtadvd.h
+++ b/usr.sbin/rtadvd/rtadvd.h
@@ -1,5 +1,5 @@
/* $FreeBSD$ */
-/* $KAME: rtadvd.h,v 1.8 2000/05/16 13:34:14 itojun Exp $ */
+/* $KAME: rtadvd.h,v 1.16 2001/04/10 15:08:31 suz Exp $ */
/*
* Copyright (C) 1998 WIDE Project.
@@ -31,7 +31,8 @@
*/
#define ALLNODES "ff02::1"
-#define ALLROUTERS "ff02::2"
+#define ALLROUTERS_LINK "ff02::2"
+#define ALLROUTERS_SITE "ff05::2"
#define ANY "::"
#define RTSOLLEN 8
@@ -74,7 +75,9 @@ struct prefix {
struct prefix *prev; /* previous link */
u_int32_t validlifetime; /* AdvValidLifetime */
+ long vltimeexpire; /* expiration of vltime; decrement case only */
u_int32_t preflifetime; /* AdvPreferredLifetime */
+ long pltimeexpire; /* expiration of pltime; decrement case only */
u_int onlinkflg; /* bool: AdvOnLinkFlag */
u_int autoconfflg; /* bool: AdvAutonomousFlag */
#ifdef MIP6
@@ -85,6 +88,16 @@ struct prefix {
struct in6_addr prefix;
};
+struct rtinfo {
+ struct rtinfo *prev; /* previous link */
+ struct rtinfo *next; /* forward link */
+
+ u_int32_t ltime; /* route lifetime */
+ u_int rtpref; /* router preference */
+ int prefixlen;
+ struct in6_addr prefix;
+};
+
struct soliciter {
struct soliciter *next;
struct sockaddr_in6 addr;
@@ -116,17 +129,21 @@ struct rainfo {
#ifdef MIP6
int haflg; /* HAFlag */
#endif
+ int rtpref; /* router preference */
u_int32_t linkmtu; /* AdvLinkMTU */
u_int32_t reachabletime; /* AdvReachableTime */
u_int32_t retranstimer; /* AdvRetransTimer */
u_int hoplimit; /* AdvCurHopLimit */
struct prefix prefix; /* AdvPrefixList(link head) */
int pfxs; /* number of prefixes */
+ long clockskew; /* used for consisitency check of lifetimes */
#ifdef MIP6
u_short hapref; /* Home Agent Preference */
u_short hatime; /* Home Agent Lifetime */
#endif
+ struct rtinfo route; /* route information option (link head) */
+ int routes; /* number of route information options */
/* actual RA packet data and its length */
size_t ra_datalen;
@@ -145,6 +162,10 @@ struct rainfo {
void ra_timeout __P((void *));
void ra_timer_update __P((void *, struct timeval *));
+int prefix_match __P((struct in6_addr *, int, struct in6_addr *, int));
+struct rainfo *if_indextorainfo __P((int));
+
+extern struct in6_addr in6a_site_allrouters;
#ifdef MIP6
extern int mobileip6;
#endif
OpenPOWER on IntegriCloud