Auto-IP (Dynamic Configuration of IPv4 Link-Local Addresses) More...
#include "core/net.h"
Go to the source code of this file.
Data Structures | |
struct | AutoIpSettings |
Auto-IP settings. More... | |
struct | _AutoIpContext |
Auto-IP context. More... | |
Macros | |
#define | AUTO_IP_SUPPORT DISABLED |
#define | AUTO_IP_BCT_SUPPORT DISABLED |
#define | AUTO_IP_TICK_INTERVAL 200 |
#define | AUTO_IP_PROBE_WAIT 1000 |
#define | AUTO_IP_PROBE_NUM 3 |
#define | AUTO_IP_PROBE_MIN 1000 |
#define | AUTO_IP_PROBE_MAX 2000 |
#define | AUTO_IP_ANNOUNCE_WAIT 2000 |
#define | AUTO_IP_ANNOUNCE_NUM 2 |
#define | AUTO_IP_ANNOUNCE_INTERVAL 2000 |
#define | AUTO_IP_MAX_CONFLICTS 10 |
#define | AUTO_IP_RATE_LIMIT_INTERVAL 60000 |
#define | AUTO_IP_DEFEND_INTERVAL 10000 |
#define | AUTO_IP_PREFIX IPV4_ADDR(169, 254, 0, 0) |
#define | AUTO_IP_MASK IPV4_ADDR(255, 255, 0, 0) |
#define | AUTO_IP_ADDR_MIN IPV4_ADDR(169, 254, 1, 0) |
#define | AUTO_IP_ADDR_MAX IPV4_ADDR(169, 254, 254, 255) |
#define | AutoIpContext struct _AutoIpContext |
Typedefs | |
typedef void(* | AutoIpLinkChangeCallback) (AutoIpContext *context, NetInterface *interface, bool_t linkState) |
Link state change callback. More... | |
typedef void(* | AutoIpStateChangeCallback) (AutoIpContext *context, NetInterface *interface, AutoIpState state) |
FSM state change callback. More... | |
Enumerations | |
enum | AutoIpState { AUTO_IP_STATE_INIT = 0, AUTO_IP_STATE_PROBING = 1, AUTO_IP_STATE_ANNOUNCING = 2, AUTO_IP_STATE_CONFIGURED = 3, AUTO_IP_STATE_DEFENDING = 4 } |
Auto-IP FSM states. More... | |
Functions | |
void | autoIpGetDefaultSettings (AutoIpSettings *settings) |
Initialize settings with default values. More... | |
error_t | autoIpInit (AutoIpContext *context, const AutoIpSettings *settings) |
Auto-IP initialization. More... | |
error_t | autoIpStart (AutoIpContext *context) |
Start Auto-IP process. More... | |
error_t | autoIpStop (AutoIpContext *context) |
Stop Auto-IP process. More... | |
AutoIpState | autoIpGetState (AutoIpContext *context) |
Retrieve current state. More... | |
Detailed Description
Auto-IP (Dynamic Configuration of IPv4 Link-Local Addresses)
License
SPDX-License-Identifier: GPL-2.0-or-later
Copyright (C) 2010-2024 Oryx Embedded SARL. All rights reserved.
This file is part of CycloneTCP Open.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- Version
- 2.4.4
Definition in file auto_ip.h.
Macro Definition Documentation
◆ AUTO_IP_ADDR_MAX
◆ AUTO_IP_ADDR_MIN
◆ AUTO_IP_ANNOUNCE_INTERVAL
◆ AUTO_IP_ANNOUNCE_NUM
◆ AUTO_IP_ANNOUNCE_WAIT
◆ AUTO_IP_BCT_SUPPORT
◆ AUTO_IP_DEFEND_INTERVAL
◆ AUTO_IP_MASK
◆ AUTO_IP_MAX_CONFLICTS
◆ AUTO_IP_PREFIX
◆ AUTO_IP_PROBE_MAX
◆ AUTO_IP_PROBE_MIN
◆ AUTO_IP_PROBE_NUM
◆ AUTO_IP_PROBE_WAIT
◆ AUTO_IP_RATE_LIMIT_INTERVAL
◆ AUTO_IP_SUPPORT
◆ AUTO_IP_TICK_INTERVAL
◆ AutoIpContext
#define AutoIpContext struct _AutoIpContext |
Typedef Documentation
◆ AutoIpLinkChangeCallback
typedef void(* AutoIpLinkChangeCallback) (AutoIpContext *context, NetInterface *interface, bool_t linkState) |
◆ AutoIpStateChangeCallback
typedef void(* AutoIpStateChangeCallback) (AutoIpContext *context, NetInterface *interface, AutoIpState state) |
Enumeration Type Documentation
◆ AutoIpState
enum AutoIpState |
Function Documentation
◆ autoIpGetDefaultSettings()
void autoIpGetDefaultSettings | ( | AutoIpSettings * | settings | ) |
◆ autoIpGetState()
AutoIpState autoIpGetState | ( | AutoIpContext * | context | ) |
◆ autoIpInit()
error_t autoIpInit | ( | AutoIpContext * | context, |
const AutoIpSettings * | settings | ||
) |
◆ autoIpStart()
error_t autoIpStart | ( | AutoIpContext * | context | ) |
◆ autoIpStop()
error_t autoIpStop | ( | AutoIpContext * | context | ) |