/* ****************************************************************************** * HEADER FILE * * Document no: @(#) $Name: VXWORKS_ITER40_2019102207 $ $RCSfile: ipike_event_receiver.h,v $ $Revision: 1.4.2.2 $ * $Source: /home/interpeak/CVSRoot/ipike/include/ipike_event_receiver.h,v $ * $Author: ulf $ $Date: 2011-11-16 10:33:30 $ * $State: Exp $ $Locker: $ * * INTERPEAK_COPYRIGHT_STRING * Design and implementation by Erik Dahlberg ****************************************************************************** */ #ifndef IPIKE_EVENT_RECEIVER_H_ #define IPIKE_EVENT_RECEIVER_H_ /* **************************************************************************** * 1 DESCRIPTION **************************************************************************** */ /* **************************************************************************** * 2 CONFIGURATION **************************************************************************** */ #include #ifdef IPIKE_USE_EVENT_LOG /* **************************************************************************** * 3 INCLUDE FILES **************************************************************************** */ #include #include #ifdef __cplusplus extern "C" { #endif /* **************************************************************************** * 4 DEFINES **************************************************************************** */ /* **************************************************************************** * 5 TYPES **************************************************************************** */ /* Event Receiver callback */ typedef int (*Ipike_event_receiver_cb)(Ipike_event * event); /* **************************************************************************** * 6 FUNCTIONS **************************************************************************** */ /******************************************************************************* * * ipike_event_receiver_init - initializes IKE and IPsec event receiver * This routine initializes the event receiver library. * * Parameters: * \is * \i * A user callback function which is called upon reception of an event. * * * EXAMPLE * \cs * int event_cb(Ipike_event *event) * { * printf("Got event\n"); * printf(" type: %s\n", ipike_event_type_str(event->type)); * printf(" reason: %s\n", ipike_event_reason_str(event->reason)); * return 0; * } * * void example_start(void) * { * /@ Initialize event receiver library @/ * ipike_event_receiver_init(event_cb); * } * * * void example_stop(void) * { * /@ Stop and destroy event receiver @/ * ipike_event_receiver_destroy(); * } * \ce * * RETURNS: 0 on success, -1 on failure * * ERRNO: */ IP_PUBLIC int ipike_event_receiver_init( Ipike_event_receiver_cb event_cb); /******************************************************************************* * * ipike_event_receiver_destroy - destroys and stops the IKE and IPsec event * receiver * This routine stops the event receiver task and returns allocated memory. * * Parameters: * * RETURNS: * * ERRNO: */ IP_PUBLIC void ipike_event_receiver_destroy(void); #ifdef __cplusplus } #endif #endif /* IPIKE_USE_EVENT_LOG */ #endif /* IPIKE_EVENT_RECEIVER_H_ */ /* **************************************************************************** * END OF FILE **************************************************************************** */