ESPHome
2026.3.0-dev
Loading...
Searching...
No Matches
esphome
components
captive_portal
dns_server_esp32_idf.h
Go to the documentation of this file.
1
#pragma once
2
#ifdef USE_ESP32
3
4
#include "
esphome/core/helpers.h
"
5
#include "
esphome/components/network/ip_address.h
"
6
#include "
esphome/components/socket/socket.h
"
7
8
namespace
esphome::captive_portal
{
9
10
class
DNSServer
{
11
public
:
12
void
start
(
const
network::IPAddress
&ip);
13
void
stop
();
14
void
process_next_request
();
15
16
protected
:
17
// No explicit close() needed — listen sockets have no active connections on
18
// failure/shutdown. Destructor handles fd cleanup (close or abort per platform).
19
inline
void
destroy_socket_
() {
20
delete
this->
socket_
;
21
this->
socket_
=
nullptr
;
22
}
23
static
constexpr
size_t
DNS_BUFFER_SIZE
= 192;
24
25
socket::ListenSocket
*
socket_
{
nullptr
};
26
network::IPAddress
server_ip_
;
27
uint8_t
buffer_
[
DNS_BUFFER_SIZE
];
28
};
29
30
}
// namespace esphome::captive_portal
31
32
#endif
// USE_ESP32
esphome::captive_portal::DNSServer
Definition
dns_server_esp32_idf.h:10
esphome::captive_portal::DNSServer::DNS_BUFFER_SIZE
static constexpr size_t DNS_BUFFER_SIZE
Definition
dns_server_esp32_idf.h:23
esphome::captive_portal::DNSServer::process_next_request
void process_next_request()
Definition
dns_server_esp32_idf.cpp:84
esphome::captive_portal::DNSServer::destroy_socket_
void destroy_socket_()
Definition
dns_server_esp32_idf.h:19
esphome::captive_portal::DNSServer::start
void start(const network::IPAddress &ip)
Definition
dns_server_esp32_idf.cpp:48
esphome::captive_portal::DNSServer::socket_
socket::ListenSocket * socket_
Definition
dns_server_esp32_idf.h:25
esphome::captive_portal::DNSServer::buffer_
uint8_t buffer_[DNS_BUFFER_SIZE]
Definition
dns_server_esp32_idf.h:27
esphome::captive_portal::DNSServer::server_ip_
network::IPAddress server_ip_
Definition
dns_server_esp32_idf.h:26
esphome::captive_portal::DNSServer::stop
void stop()
Definition
dns_server_esp32_idf.cpp:79
esphome::socket::BSDSocketImpl
Definition
bsd_sockets_impl.h:18
helpers.h
ip_address.h
esphome::captive_portal
Definition
captive_index.h:6
socket.h
esphome::network::IPAddress
Definition
ip_address.h:53
Generated by
1.12.0