Files
m241Neelima/components/ip_net2-6.9/ipmip4/config/ipmip4_vendor_ext.h
T
2026-07-30 11:19:44 +05:30

147 lines
5.2 KiB
C

/*
******************************************************************************
* HEADER FILE
*
* Document no: @(#) $Name: VXWORKS_ITER40_2019102207 $ $RCSfile: ipmip4_vendor_ext.h,v $ $Revision: 1.3 $
* $Source: /home/interpeak/CVSRoot/ipmip4/config/ipmip4_vendor_ext.h,v $
* $Author: jhorteli $ $Date: 2009-03-02 17:34:49 $
* $State: Exp $ $Locker: $
*
* INTERPEAK_COPYRIGHT_STRING
* Design and implementation by Joel Hortelius <joel.hortelius@interpeak.se>
******************************************************************************
*/
#ifndef IPMIP4_VENDOR_EXT_H
#define IPMIP4_VENDOR_EXT_H
/*
****************************************************************************
* 1 DESCRIPTION
****************************************************************************
*/
/*
****************************************************************************
* 2 CONFIGURATION
****************************************************************************
*/
/*
****************************************************************************
* 3 INCLUDE FILES
****************************************************************************
*/
#ifdef __cplusplus
extern "C" {
#endif
/*
****************************************************************************
* 4 DEFINES
****************************************************************************
*/
#define IPMIP4_VENDOR_EXT_MSGEXT_CISCO_HOSTCONF 14
#define IPMIP4_VENDOR_EXT_MSGEXT_CISCO_HOSTCONF_REQ 0
#define IPMIP4_VENDOR_EXT_MSGEXT_CISCO_HOSTCONF_PREFIXLEN 1
#define IPMIP4_VENDOR_EXT_MSGEXT_CISCO_HOSTCONF_DNS_SERVER 2
#define IPMIP4_VENDOR_EXT_MSGEXT_CISCO_HOSTCONF_DHCP_SERVER 3
#define IPMIP4_VENDOR_EXT_MSGEXT_CISCO_HOSTCONF_DHCP_CID 4
#define IPMIP4_VENDOR_EXT_MSGEXT_CISCO_HOSTCONF_DEFAULT_GW 5
#define IPMIP4_VENDOR_EXT_MSGEXT_CISCO_HOSTCONF_DNS_SUFFIX 6
#define IPMIP4_VENDOR_EXT_MSGEXT_CISCO_HOSTCONF_CONFIG_URL 7
/* Testing purposes */
#ifdef IPTESTENGINE
#define IPMIP4_VENDOR_EXT_MSGEXT_WINDRIVER_NOOP_MN 0 /* Understood by Mobile Node */
#define IPMIP4_VENDOR_EXT_MSGEXT_WINDRIVER_NOOP_FA 1 /* Understood by Foreign Agent */
#define IPMIP4_VENDOR_EXT_MSGEXT_WINDRIVER_NOOP_HA 2 /* Understood by Home Agent */
#define IPMIP4_VENDOR_EXT_MSGEXT_WINDRIVER_NOOP_ALL 3 /* Understood by ALL */
#endif
/*
****************************************************************************
* 5 TYPES
****************************************************************************
*/
union Ipmip4_msgext_uhdr;
#ifdef IPTESTENGINE
typedef struct Ipmip4_vendor_ext_msgext_wr
{
union Ipmip4_msgext_uhdr *nvse_noop_mn;
union Ipmip4_msgext_uhdr *nvse_noop_fa;
union Ipmip4_msgext_uhdr *nvse_noop_ha;
union Ipmip4_msgext_uhdr *nvse_noop_all;
union Ipmip4_msgext_uhdr *cvse_noop_mn;
union Ipmip4_msgext_uhdr *cvse_noop_fa;
union Ipmip4_msgext_uhdr *cvse_noop_ha;
union Ipmip4_msgext_uhdr *cvse_noop_all;
} Ipmip4_vendor_ext_msgext_wr_t;
#endif
/* Cisco vendor extensions; RFC 4332 */
typedef struct Ipmip4_vendor_ext_msgext_cisco
{
union Ipmip4_msgext_uhdr *cfg_req;
union Ipmip4_msgext_uhdr *prefixlen;
union Ipmip4_msgext_uhdr *dns_server;
union Ipmip4_msgext_uhdr *dhcp_server;
union Ipmip4_msgext_uhdr *dhcp_cid;
union Ipmip4_msgext_uhdr *default_gw;
union Ipmip4_msgext_uhdr *dns_suffix;
union Ipmip4_msgext_uhdr *config_url;
} Ipmip4_vendor_ext_msgext_cisco_t;
typedef struct Ipmip4_vendor_ext_msgext
{
#ifdef IPTESTENGINE
Ipmip4_vendor_ext_msgext_wr_t wr;
#endif
/**/
Ipmip4_vendor_ext_msgext_cisco_t cisco;
} Ipmip4_vendor_ext_msgext_t;
/*
****************************************************************************
* 5 TYPES
****************************************************************************
*/
struct Ipmip4_msgext_mobile;
union Ipmip4_msgext_uhdr;
/*
****************************************************************************
* 6 FUNCTIONS
****************************************************************************
*/
/*
*===========================================================================
* ipmip4_vendor_ext_parse_cisco
*===========================================================================
* Description: Parse a cisco extension.
* Parameters: mobile - The mobile structure to store the result in.
* uhdr - The UHDR
* Returns: IPMIP4_REG_EXT_SUCCESS on succes, IPMIP4_REG_EXT_UNKNOWN if
* not known; other error code if failed.
*
*/
IP_GLOBAL int ipmip4_vendor_ext_parse_cisco(struct Ipmip4_msgext_mobile *mobile,
union Ipmip4_msgext_uhdr *uhdr);
#ifdef __cplusplus
}
#endif
#endif
/*
****************************************************************************
* END OF FILE
****************************************************************************
*/