Home | History | Annotate | Download | only in base

Lines Matching refs:ifaddr

52 int set_ifname(struct ifaddrs* ifaddr, int interface) {
58 ifaddr->ifa_name = new char[strlen(name) + 1];
59 strncpy(ifaddr->ifa_name, name, strlen(name) + 1);
63 int set_flags(struct ifaddrs* ifaddr) {
70 strncpy(ifr.ifr_name, ifaddr->ifa_name, IFNAMSIZ - 1);
76 ifaddr->ifa_flags = ifr.ifr_flags;
80 int set_addresses(struct ifaddrs* ifaddr, ifaddrmsg* msg, void* data,
86 ifaddr->ifa_addr = reinterpret_cast<sockaddr*>(sa);
92 ifaddr->ifa_addr = reinterpret_cast<sockaddr*>(sa);
99 int make_prefixes(struct ifaddrs* ifaddr, int family, int prefixlen) {
105 ifaddr->ifa_netmask = reinterpret_cast<sockaddr*>(mask);
114 ifaddr->ifa_netmask = reinterpret_cast<sockaddr*>(mask);
131 int populate_ifaddrs(struct ifaddrs* ifaddr, ifaddrmsg* msg, void* bytes,
133 if (set_ifname(ifaddr, msg->ifa_index) != 0) {
136 if (set_flags(ifaddr) != 0) {
139 if (set_addresses(ifaddr, msg, bytes, len) != 0) {
142 if (make_prefixes(ifaddr, msg->ifa_family, msg->ifa_prefixlen) != 0) {