Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

sam_hc_callback_register(3) [centos man page]

SAM_HC_CALLBACK_REGISTER(3)			    Corosync Cluster Engine Programmer's Manual 		       SAM_HC_CALLBACK_REGISTER(3)

NAME
sam_hc_callback_register - Register health check callback SYNOPSIS
#include <corosync/sam.h> cs_error_t sam_hc_callback_register (sam_hc_callback_t cb); DESCRIPTION
The sam_hc_callback_register function is used to register a user provided healthcheck callback. After calling of this function, the SAM is switched from application driven healthchecking to event driven healthchecking. In this mode, sam_hc_send(3) does not need to be executed. The parameter cb is callback function of type sam_hc_callback_t defined as: typedef int (*sam_hc_callback_t)(void); This function will be regulargly called and must return 0 if the process is functioning normally, or -1 if the process is executing abnor- mally. When -1 is returned, the SAM server execute the registered recovery policy. A value of NULL can be passed into this function to switch into application driven healthchecking. cb to NULL. RETURN VALUE
This call return CS_OK value if successful, otherwise and error is returned. ERRORS
CS_ERR_BAD_HANDLE SAM was not initialized and registered or health checking is in running state CS_ERR_LIBRARY internal library call failed. This can occur during fork() or pipe () system calls and the errno variable can be read to retrieve more information. SEE ALSO
sam_start(3), sam_stop(3), sam_hc_send(3), sam_register(3), CS_ERR_TRY_AGAIN Resource temporarily unavailable CS_ERR_INVALID_PARAM Invalid argument CS_ERR_ACCESS Permission denied CS_ERR_LIBRARY The connection failed CS_ERR_INTERRUPT System call inturrupted by a signal CS_ERR_NOT_SUPPORTED The requested protocol/functuality not supported CS_ERR_MESSAGE_ERROR Incorrect auth message received CS_ERR_NO_MEMORY Not enough memory to completed the requested task corosync Man Page 12/01/2009 SAM_HC_CALLBACK_REGISTER(3)

Check Out this Related Man Page

QUORUM_DISPATCH(3)				    Corosync Cluster Engine Programmer's Manual 				QUORUM_DISPATCH(3)

NAME
quorum_dispatch - Dispatches callbacks from the quorum service SYNOPSIS
#include <corosync/quorum.h> int quorum_dispatch(quorum_handle_t handle, cs_dispatch_flags_t *dispatch_types); DESCRIPTION
The quorum_dispatch function is used to dispatch configuration changes. Each application may have several connections to the quorum API. Each application uses the handle argument to uniquely identify the con- nection. The dispatch_types argument is used to identify the type of dispatch to execute. The possible types are defined by the structure: typedef enum { CS_DISPATCH_ONE = 1, CS_DISPATCH_ALL = 2, CS_DISPATCH_BLOCKING = 3, CS_DISPATCH_ONE_NONBLOCKING = 4 } cs_dispatch_flags_t; The dispatch values have the following meanings: CS_DISPATCH_ONE Dispatch at least one callback, blocking until the callback is dispatched. CS_DISPATCH_ALL Dispatch all waiting callbacks without blocking to wait for any callbacks. CS_DISPATCH_BLOCKING Dispatch all callbacks blocking indefinitely. This is used in a threaded program where a thread is created, and then quorum_dis- patch() is called immediately from the created thread to execute callbacks. CS_DISPATCH_ONE_NONBLOCKING Dispatch at most one callback. If there is no pending callback, CS_ERR_TRY_AGAIN is returned. RETURN VALUE
This call returns the CS_OK value if successful, otherwise an error is returned. ERRORS
CS_ERR_TRY_AGAIN Resource temporarily unavailable CS_ERR_INVALID_PARAM Invalid argument CS_ERR_ACCESS Permission denied CS_ERR_LIBRARY The connection failed CS_ERR_INTERRUPT System call inturrupted by a signal CS_ERR_NOT_SUPPORTED The requested protocol/functuality not supported CS_ERR_MESSAGE_ERROR Incorrect auth message received CS_ERR_NO_MEMORY Not enough memory to completed the requested task SEE ALSO
quorum_overview(8), quorum_initialize(3), quorum_finalize(3), quorum_getquorate(3), quorum_trackstart(3), quorum_trackstop(3), quo- rum_fd_get(3), quorum_context_set(3), quorum_context_get(3) corosync Man Page 2014-06-10 QUORUM_DISPATCH(3)
Man Page