diff options
author | vincent <vincent> | 2005-03-25 13:08:53 +0000 |
---|---|---|
committer | vincent <vincent> | 2005-03-25 13:08:53 +0000 |
commit | 7cee1bb15089e4e994958651bd45a6f81c4215aa (patch) | |
tree | 2f7d9b8a24411d06c80dbeb023069c1e3a2f4c2e /zebra/rtadv.h | |
parent | 29c4c9bd11aaf36a0b3ed2414c816cdb8d4178bd (diff) |
2005-03-25 Jean-Mickael Guerin <jean-mickael.guerin@6wind.com>
* interface.c, interface.h, rtadv.c, rtadv.h: extensions to Neighbor
discovery for Mobile IPv6.
Diffstat (limited to 'zebra/rtadv.h')
-rw-r--r-- | zebra/rtadv.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/zebra/rtadv.h b/zebra/rtadv.h index 859b2d7e..d52c2c08 100644 --- a/zebra/rtadv.h +++ b/zebra/rtadv.h @@ -1,4 +1,5 @@ /* Router advertisement + * Copyright (C) 2005 6WIND <jean-mickael.guerin@6wind.com> * Copyright (C) 1999 Kunihiro Ishiguro * * This file is part of GNU Zebra. @@ -42,8 +43,51 @@ struct rtadv_prefix /* The value to be placed in the Autonomous Flag. */ int AdvAutonomousFlag; + + /* The value to be placed in the Router Address Flag (RFC3775 7.2). */ + int AdvRouterAddressFlag; +#ifndef ND_OPT_PI_FLAG_RADDR +#define ND_OPT_PI_FLAG_RADDR 0x20 +#endif + }; void rtadv_config_write (struct vty *, struct interface *); +/* draft-ietf-mip6-mipext-advapi-03 */ + +#ifndef ND_OPT_ADV_INTERVAL +#define ND_OPT_ADV_INTERVAL 7 /* Adv Interval Option */ +#endif +#ifndef ND_OPT_HA_INFORMATION +#define ND_OPT_HA_INFORMATION 8 /* HA Information Option */ +#endif + +#ifndef HAVE_ND_OPT_ADV_INTERVAL +struct nd_opt_adv_interval { /* Advertisement interval option */ + uint8_t nd_opt_ai_type; + uint8_t nd_opt_ai_len; + uint16_t nd_opt_ai_reserved; + uint32_t nd_opt_ai_interval; +} __attribute__((__packed__)); +#else +#ifndef HAVE_ND_OPT_ADV_INTERVAL_AI_FIELDS +/* fields may have to be renamed */ +#define nd_opt_ai_type nd_opt_adv_interval_type +#define nd_opt_ai_len nd_opt_adv_interval_len +#define nd_opt_ai_reserved nd_opt_adv_interval_reserved +#define nd_opt_ai_interval nd_opt_adv_interval_ival +#endif +#endif + +#ifndef HAVE_ND_OPT_HOMEAGENT_INFO +struct nd_opt_homeagent_info { /* Home Agent info */ + u_int8_t nd_opt_hai_type; + u_int8_t nd_opt_hai_len; + u_int16_t nd_opt_hai_reserved; + u_int16_t nd_opt_hai_preference; + u_int16_t nd_opt_hai_lifetime; +} __attribute__((__packed__)); +#endif + #endif /* _ZEBRA_RTADV_H */ |