/* IBM_PROLOG_BEGIN_TAG */ /* This is an automatically generated prolog. */ /* */ /* bos720 src/bos/usr/ccs/lib/libwpardr/wpardr.h 1.5 */ /* */ /* Licensed Materials - Property of IBM */ /* */ /* COPYRIGHT International Business Machines Corp. 2006,2008 */ /* All Rights Reserved */ /* */ /* US Government Users Restricted Rights - Use, duplication or */ /* disclosure restricted by GSA ADP Schedule Contract with IBM Corp. */ /* */ /* IBM_PROLOG_END_TAG */ /* @(#)11 1.5 src/bos/usr/ccs/lib/libwpardr/wpardr.h, wpardr, bos720 6/15/08 12:06:20 */ #ifndef _H_WPARDR #define _H_WPARDR /* * COMPONENT_NAME: WPARDR * * FUNCTIONS: registerDrEvent * triggerDrEvent * unregisterDrEvent * setAutoUnregister * getAutoUnregister * setLogFd * setTraceFd * * ORIGINS: 27 */ #ifdef __cplusplus extern "C" { #endif #include #include /* describes a DR event */ typedef struct drEvent *drEvent_t; /* describes a DR phase */ typedef struct drPhase *drPhase_t; /* pre-defined events for WPAR migration */ extern drEvent_t wmigEvent; extern drEvent_t wmigCheckpointEvent; extern drEvent_t wmigRestartEvent; /* pre-defined phases */ extern drPhase_t undoPrePhase; extern drPhase_t undoDoitPhase; extern drPhase_t checkPhase; extern drPhase_t prePhase; extern drPhase_t doitPhase; extern drPhase_t postPhase; /* first version */ #define WPARDR_V1 1 /* flag values */ #define WPARDR_IGNORE_ERRORS 0x00000001 /* continue the DR event even */ /* if errors are encountered */ /* for convenience */ typedef cid_t wparId_t; /* arguments required for the wmig event */ struct wmigArgs { int32_t version; uint16_t wparId; char * wparName; }; typedef struct wmigArgs wmigArgs_t; /* arguments required for the wmig-checkpoint event */ struct wmigCheckpointArgs { int32_t version; uint16_t wparId; char * wparName; char * stateFile; }; typedef struct wmigCheckpointArgs wmigCheckpointArgs_t; /* arguments required for the wmig-restart event */ struct wmigRestartArgs { int32_t version; uint16_t wparId; char * wparName; char * stateFile; }; typedef struct wmigRestartArgs wmigRestartArgs_t; extern int registerDrEvent( drEvent_t drEventP, void * argsP); extern int triggerDrEvent( drEvent_t drEventP, drPhase_t drPhaseP, void * argsP, int32_t * timeoutP, int32_t flags); extern int unregisterDrEvent( drEvent_t drEventP, void * argsP); extern int setAutoUnregister( wparId_t wparId, boolean_t choice); extern int getAutoUnregister( wparId_t wparId, boolean_t * choiceP); extern int setLogFd( int logFd); extern int setTraceFd( int traceFd); #ifdef __cplusplus } #endif #endif /* _H_WPARDR */