Go to the documentation of this file.
42 #define TRACE_LEVEL AUTO_IP_TRACE_LEVEL
51 #if (IPV4_SUPPORT == ENABLED && AUTO_IP_SUPPORT == ENABLED)
90 if(context == NULL || settings == NULL)
98 interface = settings->interface;
103 context->settings = *settings;
108 context->conflictCount = 0;
111 context->running =
FALSE;
116 interface->autoIpContext = context;
147 context->conflictCount = 0;
149 context->running =
TRUE;
178 context->running =
FALSE;
203 state = context->state;
AutoIpState autoIpGetState(AutoIpContext *context)
Retrieve current state.
error_t autoIpInit(AutoIpContext *context, const AutoIpSettings *settings)
Auto-IP initialization.
AutoIpStateChangeCallback stateChangeEvent
FSM state change event.
error_t autoIpStop(AutoIpContext *context)
Stop Auto-IP process.
AutoIpLinkChangeCallback linkChangeEvent
Link state change event.
@ ERROR_INVALID_PARAMETER
Invalid parameter.
NetInterface * netGetDefaultInterface(void)
Get default network interface.
uint_t ipAddrIndex
Index of the IP address to be configured.
void autoIpResetConfig(AutoIpContext *context)
Reset Auto-IP configuration.
void autoIpGetDefaultSettings(AutoIpSettings *settings)
Initialize settings with default values.
Ipv4Addr linkLocalAddr
Initial link-local address to be used.
void osAcquireMutex(OsMutex *mutex)
Acquire ownership of the specified mutex object.
void osReleaseMutex(OsMutex *mutex)
Release ownership of the specified mutex object.
Helper functions for Auto-IP.
NetInterface * interface
Network interface to configure.
#define osMemset(p, value, length)
AutoIpState
Auto-IP FSM states.
error_t autoIpStart(AutoIpContext *context)
Start Auto-IP process.
#define IPV4_UNSPECIFIED_ADDR
Auto-IP (Dynamic Configuration of IPv4 Link-Local Addresses)