Skip to content

File syn_netcfg.c

FileList > net > syn_netcfg.c

Go to the source code of this file

Unified Zero-Heap Network IP Address Manager Implementation.

  • #include "syntropic/net/syn_netcfg.h"
  • #include <string.h>

Public Functions

Type Name
SYN_Status syn_netcfg_init (SYN_NETCFG * netcfg, SYN_NETCFG_Mode mode, const uint8_t mac)
Initialize Unified Network IP Manager.
SYN_Status syn_netcfg_set_link_callback (SYN_NETCFG * netcfg, SYN_NETCFG_LinkCb cb, void * user_data)
Register Application Link Event Callback.
SYN_Status syn_netcfg_set_link_state (SYN_NETCFG * netcfg, SYN_ETH * eth, SYN_NETCFG_LinkState state)
Notify Network Manager of Physical Link State Change (Link Up / Link Down).
SYN_Status syn_netcfg_set_static (SYN_NETCFG * netcfg, SYN_ETH * eth, uint32_t ip, uint32_t netmask, uint32_t gateway)
Set Static IP configuration parameters.
SYN_Status syn_netcfg_trigger_autoip_fallback (SYN_NETCFG * netcfg, SYN_ETH * eth, const uint8_t mac)
Trigger AutoIP fallback when DHCP times out.

Public Functions Documentation

function syn_netcfg_init

Initialize Unified Network IP Manager.

SYN_Status syn_netcfg_init (
    SYN_NETCFG * netcfg,
    SYN_NETCFG_Mode mode,
    const uint8_t mac
) 

Parameters:

  • netcfg Pointer to Netcfg context.
  • mode Configuration mode (STATIC, DHCP, or AUTO).
  • mac 6-byte client MAC address.

Returns:

SYN_OK on success.


Register Application Link Event Callback.

SYN_Status syn_netcfg_set_link_callback (
    SYN_NETCFG * netcfg,
    SYN_NETCFG_LinkCb cb,
    void * user_data
) 

Parameters:

  • netcfg Pointer to Netcfg context.
  • cb Callback function pointer.
  • user_data User data context passed to callback.

Returns:

SYN_OK on success.


Notify Network Manager of Physical Link State Change (Link Up / Link Down).

SYN_Status syn_netcfg_set_link_state (
    SYN_NETCFG * netcfg,
    SYN_ETH * eth,
    SYN_NETCFG_LinkState state
) 

On LINK_DOWN: Invalidates IP binding, resets state machines back to INIT, and triggers callback. On LINK_UP: Automatically re-triggers IP acquisition state machine and triggers callback.

Parameters:

  • netcfg Pointer to Netcfg context.
  • eth Pointer to Ethernet context.
  • state Physical Link State (SYN_NETCFG_LINK_DOWN or SYN_NETCFG_LINK_UP).

Returns:

SYN_OK on success.


function syn_netcfg_set_static

Set Static IP configuration parameters.

SYN_Status syn_netcfg_set_static (
    SYN_NETCFG * netcfg,
    SYN_ETH * eth,
    uint32_t ip,
    uint32_t netmask,
    uint32_t gateway
) 

Parameters:

  • netcfg Pointer to Netcfg context.
  • eth Pointer to Ethernet context.
  • ip 32-bit IPv4 address.
  • netmask 32-bit netmask.
  • gateway 32-bit router gateway IP.

Returns:

SYN_OK on success.


function syn_netcfg_trigger_autoip_fallback

Trigger AutoIP fallback when DHCP times out.

SYN_Status syn_netcfg_trigger_autoip_fallback (
    SYN_NETCFG * netcfg,
    SYN_ETH * eth,
    const uint8_t mac
) 

Parameters:

  • netcfg Pointer to Netcfg context.
  • eth Pointer to Ethernet context.
  • mac 6-byte client MAC address.

Returns:

SYN_OK on success.



The documentation for this class was generated from the following file src/syntropic/net/syn_netcfg.c