Lines Matching refs:iface

558 print_interface(const endpt *iface, const char *pfx, const char *sfx)  in print_interface()  argument
562 iface->ifnum, in print_interface()
563 (long long)iface->fd, in print_interface()
564 (long long)iface->bfd, in print_interface()
565 iface->name, in print_interface()
566 iface->flags, in print_interface()
567 iface->ifindex, in print_interface()
568 stoa(&iface->sin)); in print_interface()
569 if (AF_INET == iface->family) { in print_interface()
570 if (iface->flags & INT_BROADCAST) in print_interface()
571 printf(", bcast=%s", stoa(&iface->bcast)); in print_interface()
572 printf(", mask=%s", stoa(&iface->mask)); in print_interface()
575 (iface->ignore_packets) in print_interface()
580 interface_dump(iface); in print_interface()
751 endpt * iface; in new_interface() local
753 iface = emalloc(sizeof(*iface)); in new_interface()
755 ZERO(*iface); in new_interface()
757 memcpy(iface, protot, sizeof(*iface)); in new_interface()
760 iface->ifnum = sys_ifnum++; in new_interface()
761 iface->starttime = current_time; in new_interface()
764 if (!io_completion_port_add_interface(iface)) { in new_interface()
769 return iface; in new_interface()
1380 endpt * iface in refresh_interface() argument
1384 if (iface->fd != INVALID_SOCKET) { in refresh_interface()
1385 int bcast = (iface->flags & INT_BCASTXMIT) != 0; in refresh_interface()
1389 socket_broadcast_disable(iface, &iface->sin); in refresh_interface()
1391 close_and_delete_fd_from_list(iface->fd); in refresh_interface()
1395 iface->fd = open_socket(&iface->sin, in refresh_interface()
1396 bcast, 0, iface); in refresh_interface()
1401 iface->last_ttl = 0; in refresh_interface()
1402 return (iface->fd != INVALID_SOCKET); in refresh_interface()
1406 return (iface->fd != INVALID_SOCKET); in refresh_interface()
2060 endpt * iface; in create_interface() local
2069 iface = new_interface(protot); in create_interface()
2074 iface->fd = open_socket(&iface->sin, 0, 0, iface); in create_interface()
2076 if (iface->fd != INVALID_SOCKET) in create_interface()
2077 log_listen_address(iface); in create_interface()
2079 if ((INT_BROADCAST & iface->flags) in create_interface()
2080 && iface->bfd != INVALID_SOCKET) in create_interface()
2082 sptoa(&iface->bcast)); in create_interface()
2084 if (INVALID_SOCKET == iface->fd in create_interface()
2085 && INVALID_SOCKET == iface->bfd) { in create_interface()
2087 iface->name, in create_interface()
2088 iface->ifnum, in create_interface()
2089 sptoa(&iface->sin)); in create_interface()
2090 delete_interface(iface); in create_interface()
2097 SET_HOSTMASK(&resmask, AF(&iface->sin)); in create_interface()
2098 success = hack_restrict(RESTRICT_FLAGS, &iface->sin, &resmask, in create_interface()
2103 "unable to self-restrict %s", stoa(&iface->sin)); in create_interface()
2110 if (NULL == loopback_interface && AF_INET == iface->family in create_interface()
2111 && (INT_LOOPBACK & iface->flags)) in create_interface()
2112 loopback_interface = iface; in create_interface()
2117 add_addr_to_list(&iface->sin, iface); in create_interface()
2118 add_interface(iface); in create_interface()
2124 if (INT_MULTICAST & iface->flags && in create_interface()
2125 !((INT_LOOPBACK | INT_WILDCARD) & iface->flags) && in create_interface()
2126 !iface->ignore_packets) { in create_interface()
2131 if (AF(&iface->sin) != AF(&entry->addr) || in create_interface()
2134 if (socket_multicast_enable(iface, in create_interface()
2138 stoa(&iface->sin), in create_interface()
2143 stoa(&iface->sin), in create_interface()
2149 DPRINT_INTERFACE(2, (iface, "created ", "\n")); in create_interface()
2150 return iface; in create_interface()
2315 endpt * iface, in enable_broadcast() argument
2320 socket_broadcast_enable(iface, iface->fd, baddr); in enable_broadcast()
2332 endpt * iface, in socket_broadcast_enable() argument
2351 iface->flags |= INT_BCASTXMIT; in socket_broadcast_enable()
2366 endpt * iface, in socket_broadcast_disable() argument
2373 if (IS_IPV4(baddr) && setsockopt(iface->fd, SOL_SOCKET, in socket_broadcast_disable()
2379 iface->flags &= ~INT_BCASTXMIT; in socket_broadcast_disable()
2424 endpt * iface, in enable_multicast_if() argument
2436 REQUIRE(AF(maddr) == AF(&iface->sin)); in enable_multicast_if()
2438 switch (AF(&iface->sin)) { in enable_multicast_if()
2445 if (setsockopt(iface->fd, IPPROTO_IP, in enable_multicast_if()
2452 iface->fd, stoa(&iface->sin), in enable_multicast_if()
2464 if (setsockopt(iface->fd, IPPROTO_IPV6, in enable_multicast_if()
2470 iface->fd, stoa(&iface->sin), in enable_multicast_if()
2491 endpt * iface, in socket_multicast_enable() argument
2505 if (setsockopt(iface->fd, in socket_multicast_enable()
2512 iface->fd, stoa(&iface->sin), in socket_multicast_enable()
2519 iface->fd, stoa(&iface->sin), in socket_multicast_enable()
2535 mreq6.ipv6mr_interface = iface->ifindex; in socket_multicast_enable()
2537 if (setsockopt(iface->fd, IPPROTO_IPV6, in socket_multicast_enable()
2542 iface->fd, stoa(&iface->sin), in socket_multicast_enable()
2547 iface->fd, stoa(&iface->sin), in socket_multicast_enable()
2553 iface->flags |= INT_MCASTOPEN; in socket_multicast_enable()
2554 iface->num_mcast++; in socket_multicast_enable()
2569 endpt * iface, in socket_multicast_disable() argument
2589 mreq.imr_interface = SOCK_ADDR4(&iface->sin); in socket_multicast_disable()
2590 if (setsockopt(iface->fd, IPPROTO_IP, in socket_multicast_disable()
2596 iface->fd, stoa(&iface->sin), in socket_multicast_disable()
2597 SRCADR(maddr), SRCADR(&iface->sin), in socket_multicast_disable()
2613 mreq6.ipv6mr_interface = iface->ifindex; in socket_multicast_disable()
2615 if (setsockopt(iface->fd, IPPROTO_IPV6, in socket_multicast_disable()
2621 iface->fd, stoa(&iface->sin), in socket_multicast_disable()
2622 iface->ifindex, stoa(maddr)); in socket_multicast_disable()
2631 iface->num_mcast--; in socket_multicast_disable()
2632 if (iface->num_mcast <= 0) { in socket_multicast_disable()
2633 iface->flags &= ~INT_MCASTOPEN; in socket_multicast_disable()
2894 endpt *iface; local
2908 while ((iface = find_flagged_addr_in_list(addr, INT_MCASTOPEN))
2910 socket_multicast_disable(iface, addr);
4026 endpt *iface; local
4028 iface = findlocalinterface(addr, INT_WILDCARD, 0);
4030 if (NULL == iface) {
4034 iface = ANY_INTERFACE_CHOOSE(addr);
4037 iface->ifnum, iface->name, stoa(addr)));
4039 return iface;
4065 endpt * iface; local
4119 iface = getinterface(&saddr, flags);
4129 if (NULL == iface || iface->ignore_packets) {
4130 iface = findclosestinterface(&saddr,
4137 if ( iface != NULL
4138 && (iface->ignore_packets || (INT_MCASTIF & iface->flags))) {
4139 iface = NULL;
4141 return iface;
4294 endpt *iface; local
4296 iface = find_addr_in_list(addr);
4298 if (iface != NULL && (iface->flags & flags))
4299 iface = NULL;
4301 return iface;
4313 endpt * iface; local
4315 iface = NULL;
4320 iface = findlocalinterface(addr, INT_LOOPBACK | INT_WILDCARD,
4322 if (iface != NULL) {
4324 iface->ifnum, iface->name));
4325 return iface;
4332 for (iface = ep_list; iface != NULL; iface = iface->elink) {
4333 if (iface->flags & INT_WILDCARD)
4337 if (iface->ignore_packets)
4343 if(AF(&iface->sin) != AF(addr))
4347 if (iface->flags & INT_LOOPBACK)
4355 && (iface->flags & INT_MULTICAST)) {
4364 && !IN6_IS_ADDR_LINKLOCAL(PSOCK_ADDR6(&iface->sin)))
4377 if (SOCK_EQ(&iface->bcast, addr))
4380 if ((NSRCADR(&iface->sin) & NSRCADR(&iface->mask))
4381 == (NSRCADR(addr) & NSRCADR(&iface->mask)))
4386 if (SOCK_EQ(&iface->bcast, addr))
4389 if (SOCK_EQ(netof(&iface->sin), netof(addr)))
4395 if (NULL == iface) {
4398 iface = ANY_INTERFACE_CHOOSE(addr);
4401 iface->ifnum, iface->name));
4404 return iface;
4655 endpt *iface argument
4661 UNLINK_EXPR_SLIST(unlinked, remoteaddr_list, iface ==
4668 stoa(&unlinked->addr), iface->ifnum,
4669 iface->name));