File syn_autoip.c¶
FileList > net > syn_autoip.c
Go to the source code of this file
Zero-Heap Native RFC 3927 AutoIP Engine Implementation.
#include "syntropic/net/syn_autoip.h"#include <string.h>
Public Functions¶
| Type | Name |
|---|---|
| SYN_Status | syn_autoip_build_announce (SYN_AUTOIP * autoip, const uint8_t mac_addr, uint8_t * buf_out, size_t * len_out) Build an ARP Announcement frame to announce claimed IP. |
| SYN_Status | syn_autoip_build_probe (SYN_AUTOIP * autoip, const uint8_t mac_addr, uint8_t * buf_out, size_t * len_out) Build an ARP Probe frame to verify IP availability. |
| SYN_Status | syn_autoip_init (SYN_AUTOIP * autoip, const uint8_t mac_addr) Initialize RFC 3927 AutoIP Engine Context. |
| SYN_Status | syn_autoip_process_arp (SYN_AUTOIP * autoip, SYN_ETH * eth, const uint8_t * arp_frame, size_t len) Process ARP response frame during probing. |
Public Functions Documentation¶
function syn_autoip_build_announce¶
Build an ARP Announcement frame to announce claimed IP.
SYN_Status syn_autoip_build_announce (
SYN_AUTOIP * autoip,
const uint8_t mac_addr,
uint8_t * buf_out,
size_t * len_out
)
Parameters:
autoipPointer to AutoIP context.mac_addr6-byte client MAC address.buf_outOutput frame buffer (must hold at least 60 bytes).len_outPointer to receive length.
Returns:
SYN_OK on success.
function syn_autoip_build_probe¶
Build an ARP Probe frame to verify IP availability.
SYN_Status syn_autoip_build_probe (
SYN_AUTOIP * autoip,
const uint8_t mac_addr,
uint8_t * buf_out,
size_t * len_out
)
Parameters:
autoipPointer to AutoIP context.mac_addr6-byte client MAC address.buf_outOutput frame buffer (must hold at least 60 bytes).len_outPointer to receive length.
Returns:
SYN_OK on success.
function syn_autoip_init¶
Initialize RFC 3927 AutoIP Engine Context.
Parameters:
autoipPointer to AutoIP context.mac_addr6-byte client MAC address (used to seed candidate IP selection).
Returns:
SYN_OK on success.
function syn_autoip_process_arp¶
Process ARP response frame during probing.
SYN_Status syn_autoip_process_arp (
SYN_AUTOIP * autoip,
SYN_ETH * eth,
const uint8_t * arp_frame,
size_t len
)
Parameters:
autoipPointer to AutoIP context.ethPointer to Ethernet context (auto-updated when BOUND).arp_framePointer to received frame.lenLength in bytes.
Returns:
SYN_OK when BOUND, SYN_BUSY if conflict detected and new candidate picked.
The documentation for this class was generated from the following file src/syntropic/net/syn_autoip.c