1 #ifndef ESP_MDNS_NETWORKING_H_
2 #define ESP_MDNS_NETWORKING_H_
3 
4 /*
5  * MDNS Server Networking -- private include
6  *
7  */
8 #include "mdns.h"
9 #include "mdns_private.h"
10 #include "sdkconfig.h"
11 #include "freertos/FreeRTOS.h"
12 #include "freertos/queue.h"
13 #include "freertos/semphr.h"
14 #include "lwip/ip_addr.h"
15 #include "lwip/pbuf.h"
16 #include "lwip/igmp.h"
17 #include "lwip/udp.h"
18 #include "lwip/mld6.h"
19 #include "lwip/priv/tcpip_priv.h"
20 #include "esp_wifi.h"
21 #include "esp_system.h"
22 #include "esp_event.h"
23 #if CONFIG_ETH_ENABLED
24 #include "esp_eth.h"
25 #endif
26 
27 
28 /**
29  * @brief  Queue RX packet action
30  */
31 esp_err_t _mdns_send_rx_action(mdns_rx_packet_t * packet);
32 
33 /**
34  * @brief  Start PCB
35  */
36 esp_err_t _mdns_pcb_init(mdns_if_t tcpip_if, mdns_ip_protocol_t ip_protocol);
37 
38 /**
39  * @brief  Stop PCB
40  */
41 esp_err_t _mdns_pcb_deinit(mdns_if_t tcpip_if, mdns_ip_protocol_t ip_protocol);
42 
43 /**
44  * @brief  send packet over UDP
45  *
46  * @param  server       The server
47  * @param  data         byte array containing the packet data
48  * @param  len          length of the packet data
49  *
50  * @return length of sent packet or 0 on error
51  */
52 size_t _mdns_udp_pcb_write(mdns_if_t tcpip_if, mdns_ip_protocol_t ip_protocol, const esp_ip_addr_t *ip, uint16_t port, uint8_t * data, size_t len);
53 
54 #endif /* ESP_MDNS_NETWORKING_H_ */
55