ifaddr
if (inet_pton(AF_INET, ifaddr, &mreq.imr_interface) == -1)
err(1, "inet_pton %s", ifaddr);
err(1, "setsockopt IP_ADD_MEMBERSHIP %s %s", group, ifaddr);
const char *errstr, *file, *group, *ifaddr;
ifaddr = "0.0.0.0";
ifaddr = optarg;
ifaddr = NULL;
ifaddr = optarg;
if (ifaddr == NULL)
if (inet_pton(AF_INET, ifaddr, &vif.vifc_lcl_addr) == -1)
err(1, "inet_pton %s", ifaddr);
err(1, "setsockopt MRT_ADD_VIF %s", ifaddr);
const char *errstr, *file, *group, *ifaddr, *outaddr;
if (ifaddr != NULL) {
if (inet_pton(AF_INET, ifaddr, &addr) == -1)
err(1, "inet_pton %s", ifaddr);
err(1, "setsockopt IP_MULTICAST_IF %s", ifaddr);
const char *errstr, *file, *group, *ifaddr, *msg;
ifaddr = NULL;
ifaddr = optarg;
DT_STATIC_PROBE3(refcnt, ifaddr, "void *", "int", "int");
&_DT_STATIC_P(refcnt, ifaddr),
struct ifaddr *ifa, *ifa6, *ifa6ll;
vmt_xdr_ifaddr(struct ifaddr *ifa, char *data)
struct ifaddr *iface_addr;
size_t vmt_xdr_ifaddr(struct ifaddr *, char *);
struct ifaddr *iface_addr;
struct ifaddr *ifa;
struct ifaddr *
struct ifaddr *ifa;
struct ifaddr *
struct ifaddr *ifa;
struct ifaddr *
struct ifaddr *ifa;
struct ifaddr *ifa_maybe = NULL;
struct ifaddr *ifa, *lo0ifa;
TAILQ_HEAD(, ifaddr) addr_tmplist;
struct ifaddr *ifa;
ifa_add(struct ifnet *ifp, struct ifaddr *ifa)
ifa_del(struct ifnet *ifp, struct ifaddr *ifa)
ifa_update_broadaddr(struct ifnet *ifp, struct ifaddr *ifa, struct sockaddr *sa)
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *
struct ifaddr sc_ifa; /* needed to attach rtentry */
struct ifaddr *enc_getifa(u_int, u_int);
struct ifaddr *ifa, *lo0ifa;
struct ifaddr sc_ifa;
struct ifaddr sc_ifa;
struct ifaddr sc_ifa;
struct ifaddr *ifa = (struct ifaddr *)data;
struct sockaddr_in ifaddr;
memset(&ifaddr, 0, sizeof(ifaddr));
ifaddr.sin_family = AF_INET;
ifaddr.sin_len = sizeof(ifaddr);
ifaddr.sin_addr = req->pr_ip_srcaddr;
error = in_ifinit(ifp, ia, &ifaddr, 1);
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
TAILQ_HEAD(, ifaddr) if_addrlist; /* [N] list of addresses per if */
TAILQ_ENTRY(ifaddr) ifa_list; /* [N] list of addresses for
TAILQ_ENTRY(ifaddr) ifa_tmplist;/* [T] temporary list */
struct ifaddr *ifa_ifwithaddr(const struct sockaddr *, u_int);
struct ifaddr *ifa_ifwithdstaddr(const struct sockaddr *, u_int);
struct ifaddr *ifaof_ifpforaddr(const struct sockaddr *, struct ifnet *);
struct ifaddr *ifaref(struct ifaddr *);
void ifafree(struct ifaddr *);
void ifa_add(struct ifnet *, struct ifaddr *);
void ifa_del(struct ifnet *, struct ifaddr *);
void ifa_update_broadaddr(struct ifnet *, struct ifaddr *,
struct ifaddr *ifa;
rt_ifa_add(struct ifaddr *ifa, int flags, struct sockaddr *dst,
rt_ifa_del(struct ifaddr *ifa, int flags, struct sockaddr *dst,
rt_ifa_addlocal(struct ifaddr *ifa)
rt_ifa_dellocal(struct ifaddr *ifa)
rt_ifa_purge(struct ifaddr *ifa)
struct ifaddr *ifa = vifa;
void db_print_ifa(struct ifaddr *);
db_print_ifa(struct ifaddr *ifa)
struct ifaddr *
ifaref(struct ifaddr *ifa)
ifafree(struct ifaddr *ifa)
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *rt_ifa; /* [N] interface addr to use */
struct ifaddr *rti_ifa;
void rtm_addr(int, struct ifaddr *);
int rt_ifa_add(struct ifaddr *, int, struct sockaddr *, unsigned int);
int rt_ifa_del(struct ifaddr *, int, struct sockaddr *, unsigned int);
void rt_ifa_purge(struct ifaddr *);
int rt_ifa_addlocal(struct ifaddr *);
int rt_ifa_dellocal(struct ifaddr *);
struct ifaddr *ifa = NULL;
struct ifaddr *
struct ifaddr *ifa;
struct ifaddr *oifa = ifa;
rtm_addr(int cmd, struct ifaddr *ifa)
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa, *next;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
in_purgeaddr(struct ifaddr *ifa)
struct ifaddr *ifa = &ia->ia_ifa;
struct ifaddr *ifa = &ia->ia_ifa;
struct ifaddr *ifa;
void in_purgeaddr(struct ifaddr *);
struct ifaddr;
ifatoia(struct ifaddr *ifa)
struct ifaddr *ifa;
struct ifaddr *ia;
struct ifaddr ia_ifa; /* protocol-independent info */
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa = (struct ifaddr *)addr;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa = &ia6->ia_ifa;
in6_purgeaddr(struct ifaddr *ifa)
struct ifaddr *ifa = &ia6->ia_ifa;
struct ifaddr *ifa;
struct ifaddr;
ifatoia6(struct ifaddr *ifa)
struct ifaddr *ifa, *next;
struct ifaddr *ifa = NULL;
struct ifaddr *ifa;
void in6_purgeaddr(struct ifaddr *);
struct ifaddr ia_ifa; /* protocol-independent info */
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa, *nifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
struct ifaddr *ifa;
void nd6_dad_start(struct ifaddr *);
void nd6_dad_stop(struct ifaddr *);
nd6_dad_start(struct ifaddr *ifa)
struct ifaddr *ifa = NULL;
nd6_dad_stop(struct ifaddr *ifa)
struct ifaddr *ifa = arg;
nd6_dad_ns_output(struct dadq *dp, struct ifaddr *ifa)
nd6_dad_ns_input(struct ifaddr *ifa)
struct ifaddr *ifa;
struct ifaddr *dad_ifa;
struct dadq *nd6_dad_find(struct ifaddr *);
void nd6_dad_ns_output(struct dadq *, struct ifaddr *);
void nd6_dad_ns_input(struct ifaddr *);
nd6_dad_find(struct ifaddr *ifa)
struct ifaddr *ifa;
struct sockaddr_in *ifaddr, *ifmask, *ifbroadaddr;
ifaddr = (struct sockaddr_in *)&ifra.ifra_addr;
ifaddr->sin_family = AF_INET;
ifaddr->sin_len = sizeof(struct sockaddr_in);
ifaddr->sin_addr.s_addr = addr->in_v4.s_addr;
struct ifaddrs *ifaddr;
if (getifaddrs(&ifaddr) == -1) {
for (struct ifaddrs *ifa = ifaddr; ifa != NULL; ifa = ifa->ifa_next) {
freeifaddrs(ifaddr);