/* ****************************************************************************** * HEADER FILE * * Document no: @(#) $Name: VXWORKS_ITER40_2019102207 $ $RCSfile: ipmip6mn_mh_ha.h,v $ $Revision: 1.6 $ * $Source: /home/interpeak/CVSRoot/ipmip6mn/src/ipmip6mn_mh_ha.h,v $ * $Author: jhorteli $ $Date: 2009-03-31 15:00:25 $ * $State: Exp $ $Locker: $ * * INTERPEAK_COPYRIGHT_STRING * Design and implementation by Joel Hortelius ****************************************************************************** */ #ifndef IPMIP6MN_MH_HA_H #define IPMIP6MN_MH_HA_H /* **************************************************************************** * 1 DESCRIPTION **************************************************************************** */ /* **************************************************************************** * 2 CONFIGURATION **************************************************************************** */ /* **************************************************************************** * 3 INCLUDE FILES **************************************************************************** */ #ifdef __cplusplus extern "C" { #endif /* **************************************************************************** * 4 DEFINES **************************************************************************** */ /* **************************************************************************** * 5 TYPES **************************************************************************** */ struct Ipmip6mn_node; struct Ipmip6mn_context; struct Ipmip6mn_pktbuf; struct Ipmip6_bc; struct Ipmip_proc; /* **************************************************************************** * 6 FUNCTIONS **************************************************************************** */ /* *=========================================================================== * ipmip6mn_mh_ha_process_icmp_param_prob *=========================================================================== * Description: Process an ICMP error sent by a home agent. * Parameters: bc - The binding cache entry * Returns: * */ IP_GLOBAL void ipmip6mn_mh_ha_process_icmp_param_prob(struct Ipmip6mn_context *ctx, struct Ipmip_proc *proc, struct Ipmip6_bc *bc); /* *=========================================================================== * ipmip6mn_mh_ha_process_binding_acknowledgement *=========================================================================== * Description: Process a binding acknowledgement from a home agent. * Parameters: ba - The binding acknowledgement * mo - The mobile options * bc - The binding cache entry. * salist - The SA list. * Returns: Timer return code * */ IP_GLOBAL int ipmip6mn_mh_ha_process_binding_acknowledgement(int event, struct Ipmip6mn_context *ctx, struct Ipmip_proc *proc, struct Ipmip6mn_pktbuf *pbuf, struct Ipmip6mn_node *node); IP_GLOBAL int ipmip6mn_mh_ha_process_bri(int event, struct Ipmip6mn_context *ctx, struct Ipmip_proc *proc, struct Ipmip6mn_pktbuf *pbuf, struct Ipmip6mn_node *node); IP_GLOBAL int ipmip6mn_mh_ha_process_bra(int event, struct Ipmip6mn_context *ctx, struct Ipmip_proc *proc, struct Ipmip6mn_pktbuf *pbuf, struct Ipmip6mn_node *node); /* *=========================================================================== * ipmip6mn_mh_ha_create_binding *=========================================================================== * Description: Create a home agent binding entry. * Parameters: me - The mobile node entry owning this binding. * peer - The home agent. * increment - Sequence number increment * Returns: A home agent binding. * */ IP_GLOBAL void ipmip6mn_mh_ha_create_binding(struct Ipmip6mn_context *ctx, struct Ipmip_proc *proc, struct Ipmip6mn_node *node, struct Ip_in6_addr *peer, Ip_u32 increment); #ifdef __cplusplus } #endif #endif /* **************************************************************************** * END OF FILE **************************************************************************** */