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 regularly called and must return 0 if the process is functioning normally, or -1 if the process is executing abnormally. 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 interrupted by a signal
 
CS_ERR_NOT_SUPPORTED The requested protocol/functionality not supported
 
CS_ERR_MESSAGE_ERROR Incorrect auth message received
 
CS_ERR_NO_MEMORY Not enough memory to complete the requested task

Recommended readings

Pages related to sam_hc_callback_register you should read also:

Questions & Answers

Helpful answers and articles about sam_hc_callback_register you may found on these sites:
Stack Overflow Server Fault Super User Unix & Linux Ask Ubuntu Network Engineering DevOps Raspberry Pi Webmasters Google Search