Changeset View
Changeset View
Standalone View
Standalone View
sys/netinet6/nd6.h
Show First 20 Lines • Show All 353 Lines • ▼ Show 20 Lines | |||||
VNET_DECLARE(int, ip6_temp_regen_advance); /* seconds */ | VNET_DECLARE(int, ip6_temp_regen_advance); /* seconds */ | ||||
#define V_nd6_defifindex VNET(nd6_defifindex) | #define V_nd6_defifindex VNET(nd6_defifindex) | ||||
#define V_ip6_desync_factor VNET(ip6_desync_factor) | #define V_ip6_desync_factor VNET(ip6_desync_factor) | ||||
#define V_ip6_temp_preferred_lifetime VNET(ip6_temp_preferred_lifetime) | #define V_ip6_temp_preferred_lifetime VNET(ip6_temp_preferred_lifetime) | ||||
#define V_ip6_temp_valid_lifetime VNET(ip6_temp_valid_lifetime) | #define V_ip6_temp_valid_lifetime VNET(ip6_temp_valid_lifetime) | ||||
#define V_ip6_temp_regen_advance VNET(ip6_temp_regen_advance) | #define V_ip6_temp_regen_advance VNET(ip6_temp_regen_advance) | ||||
union nd_opts { | union nd_opts { | ||||
struct nd_opt_hdr *nd_opt_array[8]; /* max = target address list */ | struct nd_opt_hdr *nd_opt_array[16]; /* max = ND_OPT_NONCE */ | ||||
struct { | struct { | ||||
struct nd_opt_hdr *zero; | struct nd_opt_hdr *zero; | ||||
struct nd_opt_hdr *src_lladdr; | struct nd_opt_hdr *src_lladdr; | ||||
struct nd_opt_hdr *tgt_lladdr; | struct nd_opt_hdr *tgt_lladdr; | ||||
struct nd_opt_prefix_info *pi_beg; /* multiple opts, start */ | struct nd_opt_prefix_info *pi_beg; /* multiple opts, start */ | ||||
struct nd_opt_rd_hdr *rh; | struct nd_opt_rd_hdr *rh; | ||||
struct nd_opt_mtu *mtu; | struct nd_opt_mtu *mtu; | ||||
struct nd_opt_hdr *__res6; | |||||
struct nd_opt_hdr *__res7; | |||||
struct nd_opt_hdr *__res8; | |||||
struct nd_opt_hdr *__res9; | |||||
struct nd_opt_hdr *__res10; | |||||
struct nd_opt_hdr *__res11; | |||||
struct nd_opt_hdr *__res12; | |||||
struct nd_opt_hdr *__res13; | |||||
struct nd_opt_nonce *nonce; | |||||
struct nd_opt_hdr *__res15; | |||||
struct nd_opt_hdr *search; /* multiple opts */ | struct nd_opt_hdr *search; /* multiple opts */ | ||||
struct nd_opt_hdr *last; /* multiple opts */ | struct nd_opt_hdr *last; /* multiple opts */ | ||||
int done; | int done; | ||||
struct nd_opt_prefix_info *pi_end;/* multiple opts, end */ | struct nd_opt_prefix_info *pi_end;/* multiple opts, end */ | ||||
} nd_opt_each; | } nd_opt_each; | ||||
}; | }; | ||||
#define nd_opts_src_lladdr nd_opt_each.src_lladdr | #define nd_opts_src_lladdr nd_opt_each.src_lladdr | ||||
#define nd_opts_tgt_lladdr nd_opt_each.tgt_lladdr | #define nd_opts_tgt_lladdr nd_opt_each.tgt_lladdr | ||||
#define nd_opts_pi nd_opt_each.pi_beg | #define nd_opts_pi nd_opt_each.pi_beg | ||||
#define nd_opts_pi_end nd_opt_each.pi_end | #define nd_opts_pi_end nd_opt_each.pi_end | ||||
#define nd_opts_rh nd_opt_each.rh | #define nd_opts_rh nd_opt_each.rh | ||||
#define nd_opts_mtu nd_opt_each.mtu | #define nd_opts_mtu nd_opt_each.mtu | ||||
#define nd_opts_nonce nd_opt_each.nonce | |||||
#define nd_opts_search nd_opt_each.search | #define nd_opts_search nd_opt_each.search | ||||
#define nd_opts_last nd_opt_each.last | #define nd_opts_last nd_opt_each.last | ||||
#define nd_opts_done nd_opt_each.done | #define nd_opts_done nd_opt_each.done | ||||
/* XXX: need nd6_var.h?? */ | /* XXX: need nd6_var.h?? */ | ||||
/* nd6.c */ | /* nd6.c */ | ||||
void nd6_init(void); | void nd6_init(void); | ||||
#ifdef VIMAGE | #ifdef VIMAGE | ||||
Show All 30 Lines | int nd6_storelladdr(struct ifnet *, struct mbuf *, | ||||
const struct sockaddr *, u_char *, uint32_t *); | const struct sockaddr *, u_char *, uint32_t *); | ||||
/* nd6_nbr.c */ | /* nd6_nbr.c */ | ||||
void nd6_na_input(struct mbuf *, int, int); | void nd6_na_input(struct mbuf *, int, int); | ||||
void nd6_na_output(struct ifnet *, const struct in6_addr *, | void nd6_na_output(struct ifnet *, const struct in6_addr *, | ||||
const struct in6_addr *, u_long, int, struct sockaddr *); | const struct in6_addr *, u_long, int, struct sockaddr *); | ||||
void nd6_ns_input(struct mbuf *, int, int); | void nd6_ns_input(struct mbuf *, int, int); | ||||
void nd6_ns_output(struct ifnet *, const struct in6_addr *, | void nd6_ns_output(struct ifnet *, const struct in6_addr *, | ||||
const struct in6_addr *, struct llentry *, int); | const struct in6_addr *, struct llentry *, uint8_t *); | ||||
caddr_t nd6_ifptomac(struct ifnet *); | caddr_t nd6_ifptomac(struct ifnet *); | ||||
void nd6_dad_init(void); | void nd6_dad_init(void); | ||||
void nd6_dad_start(struct ifaddr *, int); | void nd6_dad_start(struct ifaddr *, int); | ||||
void nd6_dad_stop(struct ifaddr *); | void nd6_dad_stop(struct ifaddr *); | ||||
/* nd6_rtr.c */ | /* nd6_rtr.c */ | ||||
void nd6_rs_input(struct mbuf *, int, int); | void nd6_rs_input(struct mbuf *, int, int); | ||||
void nd6_ra_input(struct mbuf *, int, int); | void nd6_ra_input(struct mbuf *, int, int); | ||||
Show All 17 Lines |