uint8_t WiFiUDP::beginMulticast(IPAddress interfaceAddr, IPAddress multicast, uint16_t port) { if (_ctx) { _ctx->unref(); _ctx = 0; } if (igmp_joingroup(interfaceAddr, multicast)!= ERR_OK) { return 0; } _ctx = new UdpContext; _ctx->ref(); ip_addr_t addr = IPADDR4_INIT(INADDR_ANY); if (!_ctx->listen(&addr, port)) { return 0; } return 1; }
static void add_dns_addr_to_dns_list_index(const u8_t addr_type, const u8_t index) { #if LWIP_IPV6 if (addr_type == IPADDR_TYPE_V6) { /* 2001:4860:4860::8888 google */ ip_addr_t ipv6_dns_addr = IPADDR6_INIT( PP_HTONL(0x20014860UL), PP_HTONL(0x48600000UL), PP_HTONL(0x00000000UL), PP_HTONL(0x00008888UL)); dns_setserver(index, &ipv6_dns_addr); } #endif #if LWIP_IPV4 if (addr_type == IPADDR_TYPE_V4) { /* 8.8.8.8 google */ ip_addr_t ipv4_dns_addr = IPADDR4_INIT(0x08080808); dns_setserver(index, &ipv4_dns_addr); } #endif }
* * This file is part of the lwIP TCP/IP stack. * * Author: Adam Dunkels <*****@*****.**> * */ #include "lwip/opt.h" #if LWIP_IPV4 #include "lwip/ip_addr.h" #include "lwip/netif.h" /* used by IP4_ADDR_ANY and IP_ADDR_BROADCAST in ip_addr.h */ const ip_addr_t ip_addr_any = IPADDR4_INIT(IPADDR_ANY); const ip_addr_t ip_addr_broadcast = IPADDR4_INIT(IPADDR_BROADCAST); /** * Determine if an address is a broadcast address on a network interface * * @param addr address to be checked * @param netif the network interface against which the address is checked * @return returns non-zero if the address is a broadcast address */ u8_t ip4_addr_isbroadcast_u32(u32_t addr, const struct netif *netif) { ip4_addr_t ipaddr; ip4_addr_set_u32(&ipaddr, addr);