prf::net::dhcps namespace

DHCP server implementation used by the PacketRF networking stack.

DHCP server runtime bound to pool-managed allocations.

This implementation is derived from the DHCP server originally provided in ESP-IDF by Espressif Systems. Parts of the original C implementation (dhcpserver.c / dhcpserver.h) have been adapted and refactored for use in the PacketRF firmware.

The derived portions of this code are distributed under the Apache License Version 2.0, in accordance with the license of the original implementation.

This version of the DHCP server is tailored for PacketRF and integrates with:

  • lwIP networking stack
  • PacketRF IP pool allocation
  • embedded operation on RP2350

Compared to the original ESP-IDF implementation, this version focuses on lightweight operation and tight integration with the PacketRF networking architecture.

Namespaces

namespace cfg
DHCP server configuration schema and validation helpers.
namespace wire
This file contains code derived from the DHCP server implementation originally developed by Espressif Systems and distributed as part of ESP-IDF.

Classes

struct BoundDhcpInterface
class DhcpServerControlCommands
Control adapter exposing DHCP server configuration and lease state.
class DhcpServerManager
class IDhcpInterfaceBindingProvider
struct LeaseView
struct ServerStatusSnapshot
struct TestTxPacket

Enums

enum class ClientIdKind: uint8_t { None = 0u, RawOption61 = 1u, MacFallback = 2u, HashedOption61 = 3u }
enum class SessionLeaseState: uint8_t { None = 0u, Offered, Committed }

Functions

auto same_bound_interface_identity(const BoundDhcpInterface& lhs, const BoundDhcpInterface& rhs) -> bool

Enum documentation

enum class prf::net::dhcps::ClientIdKind: uint8_t

enum class prf::net::dhcps::SessionLeaseState: uint8_t

Function documentation