/* ipmipmn_attr.h - ipmipmn_attr.h */ /* ****************************************************************************** * HEADER FILE * * Document no: @(#) $Name: VXWORKS_ITER40_2019102207 $ $RCSfile: ipmipmn_api_attr.h,v $ $Revision: 1.5 $ * $Source: /home/interpeak/CVSRoot/ipmipmn/include/private/ipmipmn_api_attr.h,v $ * $Author: jhorteli $ $Date: 2009-04-23 14:13:50 $ * $State: Exp $ $Locker: $ * * INTERPEAK_COPYRIGHT_STRING * Design and implementation by Joel Hortelius ****************************************************************************** */ #ifndef IPMIPMN_API_ATTR_H #define IPMIPMN_API_ATTR_H /* **************************************************************************** * 1 DESCRIPTION **************************************************************************** */ /* DESCRIPTION No description currently provided */ /* **************************************************************************** * 2 CONFIGURATION **************************************************************************** */ /* **************************************************************************** * 3 INCLUDE FILES **************************************************************************** */ #include #ifdef __cplusplus extern "C" { #endif /* **************************************************************************** * 4 DEFINES **************************************************************************** */ enum { IPMIPMN_API_CLI_ATTR_NONE, IPMIPMN_API_CLI_ATTR_NODE, IPMIPMN_API_CLI_ATTR_LAST }; enum { IPMIPMN_CLI_API_ATTR_NODE_NONE, IPMIPMN_CLI_API_ATTR_NODE_MIPIFNAME, IPMIPMN_CLI_API_ATTR_NODE_IFNAME, IPMIPMN_CLI_API_ATTR_NODE_HOA, IPMIPMN_CLI_API_ATTR_NODE_HOA_DYNAMIC, IPMIPMN_CLI_API_ATTR_NODE_HA_DHAA, IPMIPMN_CLI_API_ATTR_NODE_HA, IPMIPMN_CLI_API_ATTR_NODE_HA_PENDING, IPMIPMN_CLI_API_ATTR_NODE_TUNNEL_REVERSE, IPMIPMN_CLI_API_ATTR_NODE_TUNNEL_TYPE, IPMIPMN_CLI_API_ATTR_NODE_BROADCAST, IPMIPMN_CLI_API_ATTR_NODE_LIFETIME, IPMIPMN_CLI_API_ATTR_NODE_REMAINING, IPMIPMN_CLI_API_ATTR_NODE_CREATED, IPMIPMN_CLI_API_ATTR_NODE_UPDATED, IPMIPMN_CLI_API_ATTR_NODE_STATUS, IPMIPMN_CLI_API_ATTR_NODE_NAI, IPMIPMN_CLI_API_ATTR_NODE_NAI_HA, IPMIPMN_CLI_API_ATTR_NODE_NAI_AAAH, IPMIPMN_CLI_API_ATTR_NODE_COA, IPMIPMN_CLI_API_ATTR_NODE_EXTENSION, IPMIPMN_CLI_API_ATTR_NODE_LAST }; enum { IPMIPMN_CLI_API_ATTR_NODE_EXTENSION_NONE, IPMIPMN_CLI_API_ATTR_NODE_EXTENSION_NAME, IPMIPMN_CLI_API_ATTR_NODE_EXTENSION_DATA, IPMIPMN_CLI_API_ATTR_NODE_EXTENSION_MAX }; enum { IPMIPMN_CLI_API_ATTR_NODE_COA_NONE, IPMIPMN_CLI_API_ATTR_NODE_COA_INET, IPMIPMN_CLI_API_ATTR_NODE_COA_PEER, IPMIPMN_CLI_API_ATTR_NODE_COA_TYPE, IPMIPMN_CLI_API_ATTR_NODE_COA_DOWN, IPMIPMN_CLI_API_ATTR_NODE_COA_MOBIKE, IPMIPMN_CLI_API_ATTR_NODE_COA_RETRANSMITS, IPMIPMN_CLI_API_ATTR_NODE_COA_TUNNEL_FLAGS, IPMIPMN_CLI_API_ATTR_NODE_COA_CHALLENGE, IPMIPMN_CLI_API_ATTR_NODE_COA_LLH, IPMIPMN_CLI_API_ATTR_NODE_COA_SPI_MF, IPMIPMN_CLI_API_ATTR_NODE_COA_SPI_MH, IPMIPMN_CLI_API_ATTR_NODE_COA_LAST }; /* States */ enum { IPMIPMN_ATTR_STATE_HALTED = 0, IPMIPMN_ATTR_STATE_BOOTING, IPMIPMN_ATTR_STATE_ISOLATED, IPMIPMN_ATTR_STATE_PENDING, IPMIPMN_ATTR_STATE_REGISTERED, IPMIPMN_ATTR_STATE_HOME }; #define IPMIPMN_ATTR_HA_DISCOVERY_NONE 0 #define IPMIPMN_ATTR_HA_DISCOVERY_RFC3344 1 #define IPMIPMN_ATTR_HA_DISCOVERY_RFC4433_NO_PREFERENCE 2 #define IPMIPMN_ATTR_HA_DISCOVERY_RFC4433_HOME_PREFERENCE 3 #define IPMIPMN_ATTR_HA_DISCOVERY_RFC4433_DISABLED 4 enum { IPMIPMN_ATTR_PEER_HOME_AGENT = 0, IPMIPMN_ATTR_PEER_FOREIGN_AGENT }; /* Current types */ enum { IPMIPMN_ATTR_COA_CCOA = 0, IPMIPMN_ATTR_COA_SCOA_TIA, IPMIPMN_ATTR_COA_SCOA_PROTECTED, IPMIPMN_ATTR_COA_FA, IPMIPMN_ATTR_COA_FA_LLH, IPMIPMN_ATTR_COA_HA, IPMIPMN_ATTR_COA_SCOA_DEAD, IPMIPMN_ATTR_COA_MAX, IPMIPMN_ATTR_COA_NONE = -1 }; /* **************************************************************************** * 5 TYPES **************************************************************************** */ struct Ipmipmn_api_context; struct Ipmip_proc; struct Ipmip_cli_message; struct Ipmipmn_api_node; struct Ipmipmn_api_node_conf; extern IP_CONST char *ipmipmn_api_attr_statename[]; extern IP_CONST char *ipmipmn_api_attr_peername[]; extern IP_CONST char *ipmipmn_api_attr_coaname[]; extern IP_CONST char *ipmipmn_api_attr_dhaa[]; /* **************************************************************************** * 6 FUNCTIONS **************************************************************************** */ IP_GLOBAL void ipmipmn_api_attr_node_coa_dump ( struct Ipmipmn_api_context *data, struct Ipmip_proc *proc, struct Ipmip_cli_message *request, struct Ipmipmn_api_node *node ); IP_GLOBAL void ipmipmn_api_attr_node_dump ( struct Ipmipmn_api_context *data, struct Ipmip_proc *proc, struct Ipmip_cli_message *request, struct Ipmipmn_api_node *node ); IP_GLOBAL void ipmipmn_api_attr_config_dump ( struct Ipmipmn_api_context *data, struct Ipmip_proc *proc, struct Ipmip_cli_message *request, struct Ipmipmn_api_node_conf *confp, const char *pre, const char *spec ); #ifdef __cplusplus } #endif #endif /* **************************************************************************** * END OF FILE **************************************************************************** */