ifaddr
struct in_addr ifaddr;
if (inet_aton(optarg, &ifaddr) == 0)
if (setsockopt(s, IPPROTO_IP, IP_MULTICAST_IF, &ifaddr,
sizeof(ifaddr)) < 0) {
void arp_ifinit(struct arpcom *, struct ifaddr *);
void arp_ifinit(struct arpcom *, struct ifaddr *);
struct ifaddr *ifa = (struct ifaddr *)data;
struct ifaddr *ifa = (struct ifaddr *)data;
struct ifaddr *ifa;
if (((struct ifaddr *)data)->ifa_addr->sa_family == AF_INET) {
struct ifaddr *ifa;
ifa = (struct ifaddr *)data;
struct ifaddr *ifa;
ifa_maintain_loopback_route(int cmd, struct ifaddr *ifa, struct sockaddr *ia)
struct ifaddr *rti_ifa;
ifa_add_loopback_route(struct ifaddr *ifa, struct sockaddr *ia)
ifa_del_loopback_route(struct ifaddr *ifa, struct sockaddr *ia)
ifa_match_withmask(const struct ifaddr *ifa, const struct sockaddr *addr)
ifa_prefer(const struct ifaddr *cur_ifa, const struct ifaddr *old_ifa)
struct ifaddr *
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *
struct ifaddr *ifa_maybe = NULL;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *
struct ifaddr *ifa_maybe = NULL;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = msg->ifa;
ifa_iflink(struct ifaddr *ifa, struct ifnet *ifp, int tail)
struct ifaddr *ifa = msg->ifa;
ifa_ifunlink(struct ifaddr *ifa, struct ifnet *ifp)
ifa_destroy(struct ifaddr *ifa)
struct ifaddr *ifa;
struct ifaddr *ifa;
ifa = ifa_create(sizeof(struct ifaddr) + 2 * socksize);
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa;
struct ifaddr *ifa = (struct ifaddr *) data;
struct ifaddr *ifa;
ifa = (struct ifaddr *)data;
struct ifaddr *if_lladdr;
struct ifaddr *ifa;
(struct ifaddr *, struct sockaddr *);
struct ifaddr ifa;
enum ifaddr_event, struct ifaddr *);
_IFAREF(struct ifaddr *_ifa, int _cpu_id)
IFAREF(struct ifaddr *_ifa)
_IFAFREE(struct ifaddr *_ifa, int _cpu_id)
IFAFREE(struct ifaddr *_ifa)
struct ifaddr;
int ifa_add_loopback_route(struct ifaddr *, struct sockaddr *);
int ifa_del_loopback_route(struct ifaddr *, struct sockaddr *);
struct ifaddr *ifa_ifwithaddr(struct sockaddr *);
struct ifaddr *ifa_ifwithdstaddr(struct sockaddr *);
struct ifaddr *ifa_ifwithnet(struct sockaddr *);
struct ifaddr *ifa_ifwithroute(int, struct sockaddr *, struct sockaddr *);
struct ifaddr *ifaof_ifpforaddr(struct sockaddr *, struct ifnet *);
void ifa_destroy(struct ifaddr *);
void ifa_iflink(struct ifaddr *, struct ifnet *, int);
void ifa_ifunlink(struct ifaddr *, struct ifnet *);
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa;
struct ifaddr *ia = ifac->ifa;
struct ifaddr *ia = ifac->ifa;
enum ifaddr_event event __unused, struct ifaddr *ifa __unused)
struct ifaddr *ia = ifac->ifa;
enum ifaddr_event __unused, struct ifaddr * __unused);
struct ifaddr *ia = ifac->ifa;
struct ifaddr *ifa __unused)
rtinit(struct ifaddr *ifa, int cmd, int flags)
struct ifaddr *ifa = arg;
struct ifaddr *old_ifa;
struct ifaddr *new_ifa;
struct ifaddr *old_ifa;
struct ifaddr *new_ifa;
rtchange(struct ifaddr *old_ifa, struct ifaddr *new_ifa)
struct ifaddr *ifa;
struct ifaddr *
struct ifaddr *ifa;
struct ifaddr *oldifa = ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *rt_ifa; /* the answer: interface to use */
struct ifaddr *rti_ifa;
void rt_newaddrmsg (int, struct ifaddr *, int, struct rtentry *);
int rtinit (struct ifaddr *, int, int);
int rtchange (struct ifaddr *, struct ifaddr *);
rt_ifamsg(int cmd, struct ifaddr *ifa)
rt_newaddrmsg(int cmd, struct ifaddr *ifa, int error, struct rtentry *rt)
if_addrflags(const struct ifaddr *ifa)
struct ifaddr *ifa;
static int if_addrflags(const struct ifaddr *ifa);
struct ifaddr *ifa;
struct ifaddr *oifa = rt->rt_ifa;
struct ifaddr *ifa = (struct ifaddr *)data;
struct ifaddr *ifa;
struct ifaddr *ifa = NULL;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ia = ifac->ifa;
struct ifaddr *ifa;
ifa = (struct ifaddr *)data;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
arp_ifinit(struct ifnet *ifp, struct ifaddr *ifa)
arp_gratuitous(struct ifnet *ifp, struct ifaddr *ifa)
enum ifaddr_event event, struct ifaddr *ifa)
void arp_ifinit (struct ifnet *, struct ifaddr *);
void arp_gratuitous (struct ifnet *, struct ifaddr *);
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa = rmsg->ifa;
in_ifadown_force(struct ifaddr *ifa, int delete)
in_ifadown(struct ifaddr *ifa, int delete)
int in_ifadown (struct ifaddr *ifa, int);
int in_ifadown_force (struct ifaddr *ifa, int);
struct ifaddr ia_ifa; /* protocol-independent info */
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
carp_add_addr(struct carp_softc *sc, struct ifaddr *carp_ifa)
carp_del_addr(struct carp_softc *sc, struct ifaddr *carp_ifa)
carp_config_addr(struct carp_softc *sc, struct ifaddr *carp_ifa)
carp_link_addrs(struct carp_softc *sc, struct ifnet *ifp, struct ifaddr *ifa_if)
struct ifaddr *ifa_if)
carp_update_addrs(struct carp_softc *sc, struct ifaddr *ifa_del)
enum ifaddr_event event, struct ifaddr *ifa)
static void carp_add_addr(struct carp_softc *, struct ifaddr *);
static void carp_del_addr(struct carp_softc *, struct ifaddr *);
static void carp_config_addr(struct carp_softc *, struct ifaddr *);
struct ifaddr *);
struct ifaddr *);
static void carp_update_addrs(struct carp_softc *, struct ifaddr *);
struct ifaddr *);
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *carp_iamatch6(void *, struct in6_addr *);
struct ifaddr *ifa = ifac->ifa;
enum ifaddr_event event, struct ifaddr *ifa)
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
in6_purgeaddr((struct ifaddr *)ia);
nd6_dad_start((struct ifaddr *)ia, NULL);
in6_purgeaddr(struct ifaddr *ifa)
struct ifaddr *ifa;
ifa = (struct ifaddr *)in6ifa_ifpforlinklocal(ifp, 0);
in6_ifloop_request(int cmd, struct ifaddr *ifa,
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = arg;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = arg;
in6_newaddrmsg(struct ifaddr *ifa)
in6_ifaddloop(struct ifaddr *ifa)
in6_ifremloop(struct ifaddr *ifa)
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ia = NULL;
struct ifaddr ia_ifa; /* protocol-independent info */
void in6_purgeaddr (struct ifaddr *);
void in6_newaddrmsg(struct ifaddr *);
void in6_ifremloop(struct ifaddr *);
void in6_ifaddloop(struct ifaddr *);
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa;
ifa = (struct ifaddr *)in6ifa_ifpwithaddr(rt->rt_ifp,
in6_newaddrmsg((struct ifaddr *)ia6);
in6_newaddrmsg((struct ifaddr *)ia6);
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa;
void nd6_dad_start (struct ifaddr *, int *);
void nd6_dad_stop (struct ifaddr *);
struct ifaddr *dad_ifa;
nd6_dad_find(struct ifaddr *ifa)
nd6_dad_start(struct ifaddr *ifa,
struct ifaddr *ifa = NULL;
nd6_dad_stop(struct ifaddr *ifa)
nd6_dad_create(struct ifaddr *ifa)
struct ifaddr *ifa = dp->dad_ifa;
nd6_dad_duplicated(struct ifaddr *ifa)
nd6_dad_ns_input(struct ifaddr *ifa)
nd6_dad_na_input(struct ifaddr *ifa)
ifa = (struct ifaddr *)in6ifa_ifpwithaddr(ifp, &daddr6);
ifa = (struct ifaddr *)in6ifa_ifpwithaddr(ifp, &taddr6);
ifa = (struct ifaddr *)in6ifa_ifpwithaddr(ifp, &taddr6);
ifa = (struct ifaddr *)in6ifa_ifpforlinklocal(cmpifp,
struct ifaddr *ifa;
ifa = (struct ifaddr *)in6ifa_ifpwithaddr(ifp, &taddr6);
static struct dadq *nd6_dad_find(struct ifaddr *);
static void nd6_dad_ns_input(struct ifaddr *);
static void nd6_dad_na_input(struct ifaddr *);
static struct dadq *nd6_dad_create(struct ifaddr *);
static void nd6_dad_duplicated(struct ifaddr *);
nd6_dad_start((struct ifaddr *)ifa, 0);
in6_newaddrmsg((struct ifaddr *)ifa);
nd6_dad_start((struct ifaddr *)ifa, 0);
struct ifaddr *ifa;
ifa = (struct ifaddr *)in6ifa_ifpforlinklocal(ifp,
struct ifaddr *ifa;
ifa = (struct ifaddr *)in6ifa_ifpforlinklocal(ifp, 0); /* 0 is OK? */
struct ifaddr *ifa;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ia = NULL;
struct ifaddr *ifa; /* XXX */
ifa = (struct ifaddr *) data;
struct ifaddr *ifa = ifac->ifa;
struct ifaddr *ifa;
struct ifaddr *ifa = ifac->ifa;
void bootpboot_p_if(struct ifnet *ifp, struct ifaddr *ifa);
bootpboot_p_if(struct ifnet *ifp, struct ifaddr *ifa)
struct ifaddr *ifa = ifac->ifa;
struct ifaddr ifa;
} ifaddr;
if (kread(ifaddraddr, (char *)&ifaddr, sizeof ifaddr)) {
ifaddr.ifa.if_ipackets = ifac.ifa_ipackets;
ifaddr.ifa.if_ibytes = ifac.ifa_ibytes;
ifaddr.ifa.if_opackets = ifac.ifa_opackets;
ifaddr.ifa.if_obytes = ifac.ifa_obytes;
ifaddr.ifa.if_ipackets += nifac.ifa_ipackets;
ifaddr.ifa.if_ibytes += nifac.ifa_ibytes;
ifaddr.ifa.if_opackets += nifac.ifa_opackets;
ifaddr.ifa.if_obytes += nifac.ifa_obytes;
cp = (CP(ifaddr.ifa.ifa_addr) - CP(ifaddraddr)) +
CP(&ifaddr);
in = inet_makeaddr(ifaddr.in.ia_subnet,
ifaddr.in.ia_subnetmask));
netname(htonl(ifaddr.in.ia_subnet),
ifaddr.in.ia_subnetmask));
netname6(&ifaddr.in6.ia_addr,
&ifaddr.in6.ia_prefixmask.sin6_addr));
opackets = ifaddr.ifa.if_opackets;
ipackets = ifaddr.ifa.if_ipackets;
obytes = ifaddr.ifa.if_obytes;
ibytes = ifaddr.ifa.if_ibytes;
struct ifaddr *ifap;
struct ifaddr ifa;
struct ifaddr *ifap0;
KREAD(ifap, &ifa, struct ifaddr);
KREAD(ifap0, &ifa, struct ifaddr);
KREAD(ifap0, &ifa, struct ifaddr);
memcpy((char *)np->n_addr, (char *)ifaddr,