Add a notify pulse action to a an action, that will be executed if the corresponding action fails
#include <ha/ham.h> int ham_action_fail_notify_pulse( ham_action_t *ahdl, const char *aname, int nd, pid_t topid, int chid, int pulsecode, int value, unsigned flags); int ham_action_fail_notify_pulse_node( ham_action_t *ahdl, const char *aname, const char *nodename, pid_t topid, int chid, int pulsecode, int value, unsigned flags);
libham
The ham_action_fail_notify_pulse*() functions add an action fail item (aname) to the specified action. The action will deliver a pulse specified by pulsecode to the specified nd/pid/chid or the nodename/pid/chid with value given by value. The nd specified to ham_action_notify_pulse() is the node identifier of the recipient node. This nd must be valid at the time the call is made.
The handle (ahdl) is obtained either:
or:
The action is executed when the corresponding action that it is associated with, fails.
Currently, there are no flags defined.
The connection to the HAM is invalid. This happens when the process that opened the connection (using ham_connect()) and the process that's calling ham_action_execute() aren't the same.
In addition to the above errors, the HAM returns any error it encounters while servicing this request.
Safety: | |
---|---|
Cancellation point | No |
Interrupt handler | No |
Signal handler | No |
Thread | Yes |
ham_action_execute(), ham_action_fail_execute(), ham_action_handle(), ham_action_handle_free(), ham_action_heartbeat_healthy(), ham_action_log(), ham_action_notify_pulse(), ham_action_notify_signal(), ham_action_remove(), ham_action_restart(), ham_action_waitfor(), ham_condition(), ham_condition_handle()