api               394 daemons/controld/controld_execd_state.c         lrmd_t *api = NULL;
api               396 daemons/controld/controld_execd_state.c         rc = lrmd__new(&api, NULL, NULL, 0);
api               400 daemons/controld/controld_execd_state.c         api->cmds->set_callback(api, lrm_op_callback);
api               401 daemons/controld/controld_execd_state.c         lrm_state->conn = api;
api               615 daemons/controld/controld_execd_state.c         lrmd_t *api = NULL;
api               617 daemons/controld/controld_execd_state.c         rc = lrmd__new(&api, lrm_state->node_name, server, port);
api               624 daemons/controld/controld_execd_state.c         lrm_state->conn = api;
api               625 daemons/controld/controld_execd_state.c         api->cmds->set_callback(api, remote_lrm_op_callback);
api               626 daemons/controld/controld_execd_state.c         lrmd_internal_set_proxy_callback(api, lrm_state, crmd_remote_proxy_cb);
api               164 daemons/controld/controld_schedulerd.c scheduler_event_callback(pcmk_ipc_api_t *api, enum pcmk_ipc_event event_type,
api                98 include/crm/common/ipc.h typedef void (*pcmk_ipc_callback_t)(pcmk_ipc_api_t *api,
api               104 include/crm/common/ipc.h int pcmk_new_ipc_api(pcmk_ipc_api_t **api, enum pcmk_ipc_server server);
api               107 include/crm/common/ipc.h void pcmk_free_ipc_api(pcmk_ipc_api_t *api);
api               110 include/crm/common/ipc.h int pcmk_connect_ipc(pcmk_ipc_api_t *api, enum pcmk_ipc_dispatch dispatch_type);
api               112 include/crm/common/ipc.h void pcmk_disconnect_ipc(pcmk_ipc_api_t *api);
api               114 include/crm/common/ipc.h int pcmk_poll_ipc(const pcmk_ipc_api_t *api, int timeout_ms);
api               116 include/crm/common/ipc.h void pcmk_dispatch_ipc(pcmk_ipc_api_t *api);
api               119 include/crm/common/ipc.h void pcmk_register_ipc_callback(pcmk_ipc_api_t *api, pcmk_ipc_callback_t cb,
api               122 include/crm/common/ipc.h const char *pcmk_ipc_name(const pcmk_ipc_api_t *api, bool for_log);
api               124 include/crm/common/ipc.h bool pcmk_ipc_is_connected(pcmk_ipc_api_t *api);
api               126 include/crm/common/ipc.h int pcmk_ipc_purge_node(pcmk_ipc_api_t *api, const char *node_name,
api                69 include/crm/common/ipc_attrd_internal.h int pcmk__attrd_api_clear_failures(pcmk_ipc_api_t *api, const char *node,
api                87 include/crm/common/ipc_attrd_internal.h int pcmk__attrd_api_delete(pcmk_ipc_api_t *api, const char *node, const char *name,
api               106 include/crm/common/ipc_attrd_internal.h int pcmk__attrd_api_purge(pcmk_ipc_api_t *api, const char *node, bool reap);
api               123 include/crm/common/ipc_attrd_internal.h int pcmk__attrd_api_query(pcmk_ipc_api_t *api, const char *node, const char *name,
api               141 include/crm/common/ipc_attrd_internal.h int pcmk__attrd_api_refresh(pcmk_ipc_api_t *api, const char *node);
api               164 include/crm/common/ipc_attrd_internal.h int pcmk__attrd_api_update(pcmk_ipc_api_t *api, const char *node, const char *name,
api               191 include/crm/common/ipc_attrd_internal.h int pcmk__attrd_api_update_list(pcmk_ipc_api_t *api, GList *attrs,
api                91 include/crm/common/ipc_controld.h int pcmk_controld_api_reprobe(pcmk_ipc_api_t *api, const char *target_node,
api                93 include/crm/common/ipc_controld.h int pcmk_controld_api_node_info(pcmk_ipc_api_t *api, uint32_t nodeid);
api                94 include/crm/common/ipc_controld.h int pcmk_controld_api_fail(pcmk_ipc_api_t *api, const char *target_node,
api                98 include/crm/common/ipc_controld.h int pcmk_controld_api_refresh(pcmk_ipc_api_t *api, const char *target_node,
api               103 include/crm/common/ipc_controld.h int pcmk_controld_api_ping(pcmk_ipc_api_t *api, const char *node_name);
api               104 include/crm/common/ipc_controld.h int pcmk_controld_api_list_nodes(pcmk_ipc_api_t *api);
api               105 include/crm/common/ipc_controld.h unsigned int pcmk_controld_api_replies_expected(const pcmk_ipc_api_t *api);
api                94 include/crm/common/ipc_internal.h int pcmk__connect_ipc(pcmk_ipc_api_t *api, enum pcmk_ipc_dispatch dispatch_type,
api                96 include/crm/common/ipc_internal.h int pcmk__connect_ipc_retry_conrefused(pcmk_ipc_api_t *api,
api                80 include/crm/common/ipc_pacemakerd.h int pcmk_pacemakerd_api_ping(pcmk_ipc_api_t *api, const char *ipc_name);
api                82 include/crm/common/ipc_pacemakerd.h int pcmk_pacemakerd_api_shutdown(pcmk_ipc_api_t *api, const char *ipc_name);
api                58 include/crm/common/ipc_schedulerd.h int pcmk_schedulerd_api_graph(pcmk_ipc_api_t *api, xmlNode *cib, char **ref);
api                27 include/crm/lrmd_internal.h int lrmd__new(lrmd_t **api, const char *nodename, const char *server, int port);
api               237 lib/common/crmcommon_private.h     int (*new_data)(pcmk_ipc_api_t *api);
api               261 lib/common/crmcommon_private.h     int (*post_connect)(pcmk_ipc_api_t *api);
api               272 lib/common/crmcommon_private.h     bool (*reply_expected)(pcmk_ipc_api_t *api, const xmlNode *request);
api               283 lib/common/crmcommon_private.h     bool (*dispatch)(pcmk_ipc_api_t *api, xmlNode *msg);
api               291 lib/common/crmcommon_private.h     void (*post_disconnect)(pcmk_ipc_api_t *api);
api               316 lib/common/crmcommon_private.h int pcmk__send_ipc_request(pcmk_ipc_api_t *api, const xmlNode *request);
api               319 lib/common/crmcommon_private.h void pcmk__call_ipc_callback(pcmk_ipc_api_t *api,
api                45 lib/common/ipc_attrd.c reply_expected(pcmk_ipc_api_t *api, const xmlNode *request)
api                60 lib/common/ipc_attrd.c dispatch(pcmk_ipc_api_t *api, xmlNode *reply)
api               105 lib/common/ipc_attrd.c     pcmk__call_ipc_callback(api, pcmk_ipc_event_reply, status, &reply_data);
api               151 lib/common/ipc_attrd.c connect_and_send_attrd_request(pcmk_ipc_api_t *api, const xmlNode *request)
api               159 lib/common/ipc_attrd.c     if (api == NULL) {
api               160 lib/common/ipc_attrd.c         rc = pcmk_new_ipc_api(&api, pcmk_ipc_attrd);
api               166 lib/common/ipc_attrd.c         dispatch = api->dispatch_type;
api               176 lib/common/ipc_attrd.c         rc = pcmk__connect_ipc(api, dispatch, remaining_attempts);
api               178 lib/common/ipc_attrd.c             rc = pcmk__send_ipc_request(api, request);
api               184 lib/common/ipc_attrd.c         pcmk_free_ipc_api(api);
api               190 lib/common/ipc_attrd.c pcmk__attrd_api_clear_failures(pcmk_ipc_api_t *api, const char *node,
api               213 lib/common/ipc_attrd.c               pcmk_ipc_name(api, true), interval_desc, op_desc,
api               224 lib/common/ipc_attrd.c     rc = connect_and_send_attrd_request(api, request);
api               231 lib/common/ipc_attrd.c pcmk__attrd_api_delete(pcmk_ipc_api_t *api, const char *node, const char *name,
api               250 lib/common/ipc_attrd.c     return pcmk__attrd_api_update(api, node, name, NULL, NULL, NULL, NULL, options);
api               254 lib/common/ipc_attrd.c pcmk__attrd_api_purge(pcmk_ipc_api_t *api, const char *node, bool reap)
api               265 lib/common/ipc_attrd.c               pcmk_ipc_name(api, true),
api               275 lib/common/ipc_attrd.c     rc = connect_and_send_attrd_request(api, request);
api               282 lib/common/ipc_attrd.c pcmk__attrd_api_query(pcmk_ipc_api_t *api, const char *node, const char *name,
api               306 lib/common/ipc_attrd.c               pcmk_ipc_name(api, true), name,
api               315 lib/common/ipc_attrd.c     rc = connect_and_send_attrd_request(api, request);
api               321 lib/common/ipc_attrd.c pcmk__attrd_api_refresh(pcmk_ipc_api_t *api, const char *node)
api               332 lib/common/ipc_attrd.c               pcmk_ipc_name(api, true), pcmk__s(node, "local node"));
api               339 lib/common/ipc_attrd.c     rc = connect_and_send_attrd_request(api, request);
api               392 lib/common/ipc_attrd.c pcmk__attrd_api_update(pcmk_ipc_api_t *api, const char *node, const char *name,
api               411 lib/common/ipc_attrd.c               pcmk_ipc_name(api, true), name, pcmk__s(value, "(null)"),
api               417 lib/common/ipc_attrd.c     rc = connect_and_send_attrd_request(api, request);
api               424 lib/common/ipc_attrd.c pcmk__attrd_api_update_list(pcmk_ipc_api_t *api, GList *attrs, const char *dampen,
api               485 lib/common/ipc_attrd.c             rc = pcmk__attrd_api_update(api, pair->node, pair->name, pair->value,
api               494 lib/common/ipc_attrd.c         rc = connect_and_send_attrd_request(api, request);
api                46 lib/common/ipc_client.c pcmk_new_ipc_api(pcmk_ipc_api_t **api, enum pcmk_ipc_server server)
api                48 lib/common/ipc_client.c     if (api == NULL) {
api                52 lib/common/ipc_client.c     *api = calloc(1, sizeof(pcmk_ipc_api_t));
api                53 lib/common/ipc_client.c     if (*api == NULL) {
api                57 lib/common/ipc_client.c     (*api)->server = server;
api                58 lib/common/ipc_client.c     if (pcmk_ipc_name(*api, false) == NULL) {
api                59 lib/common/ipc_client.c         pcmk_free_ipc_api(*api);
api                60 lib/common/ipc_client.c         *api = NULL;
api                67 lib/common/ipc_client.c             (*api)->cmds = pcmk__attrd_api_methods();
api                74 lib/common/ipc_client.c             (*api)->cmds = pcmk__controld_api_methods();
api                84 lib/common/ipc_client.c             (*api)->cmds = pcmk__pacemakerd_api_methods();
api                88 lib/common/ipc_client.c             (*api)->cmds = pcmk__schedulerd_api_methods();
api                92 lib/common/ipc_client.c             pcmk_free_ipc_api(*api);
api                93 lib/common/ipc_client.c             *api = NULL;
api                96 lib/common/ipc_client.c     if ((*api)->cmds == NULL) {
api                97 lib/common/ipc_client.c         pcmk_free_ipc_api(*api);
api                98 lib/common/ipc_client.c         *api = NULL;
api               102 lib/common/ipc_client.c     (*api)->ipc = crm_ipc_new(pcmk_ipc_name(*api, false), 0);
api               103 lib/common/ipc_client.c     if ((*api)->ipc == NULL) {
api               104 lib/common/ipc_client.c         pcmk_free_ipc_api(*api);
api               105 lib/common/ipc_client.c         *api = NULL;
api               110 lib/common/ipc_client.c     if ((*api)->cmds->new_data != NULL) {
api               111 lib/common/ipc_client.c         if ((*api)->cmds->new_data(*api) != pcmk_rc_ok) {
api               112 lib/common/ipc_client.c             pcmk_free_ipc_api(*api);
api               113 lib/common/ipc_client.c             *api = NULL;
api               117 lib/common/ipc_client.c     crm_trace("Created %s API IPC object", pcmk_ipc_name(*api, true));
api               122 lib/common/ipc_client.c free_daemon_specific_data(pcmk_ipc_api_t *api)
api               124 lib/common/ipc_client.c     if ((api != NULL) && (api->cmds != NULL)) {
api               125 lib/common/ipc_client.c         if ((api->cmds->free_data != NULL) && (api->api_data != NULL)) {
api               126 lib/common/ipc_client.c             api->cmds->free_data(api->api_data);
api               127 lib/common/ipc_client.c             api->api_data = NULL;
api               129 lib/common/ipc_client.c         free(api->cmds);
api               130 lib/common/ipc_client.c         api->cmds = NULL;
api               144 lib/common/ipc_client.c pcmk__call_ipc_callback(pcmk_ipc_api_t *api, enum pcmk_ipc_event event_type,
api               147 lib/common/ipc_client.c     if ((api != NULL) && (api->cb != NULL)) {
api               148 lib/common/ipc_client.c         api->cb(api, event_type, status, event_data, api->user_data);
api               163 lib/common/ipc_client.c     pcmk_ipc_api_t *api = user_data;
api               165 lib/common/ipc_client.c     crm_info("Disconnected from %s", pcmk_ipc_name(api, true));
api               168 lib/common/ipc_client.c     if ((api->cmds != NULL) && (api->cmds->post_disconnect != NULL)) {
api               169 lib/common/ipc_client.c         api->cmds->post_disconnect(api);
api               173 lib/common/ipc_client.c     pcmk__call_ipc_callback(api, pcmk_ipc_event_disconnect, CRM_EX_DISCONNECT,
api               181 lib/common/ipc_client.c     api->ipc = NULL;
api               182 lib/common/ipc_client.c     api->mainloop_io = NULL;
api               184 lib/common/ipc_client.c     if (api->free_on_disconnect) {
api               188 lib/common/ipc_client.c         free_daemon_specific_data(api);
api               190 lib/common/ipc_client.c         free(api);
api               200 lib/common/ipc_client.c pcmk_free_ipc_api(pcmk_ipc_api_t *api)
api               204 lib/common/ipc_client.c     if (api == NULL) {
api               207 lib/common/ipc_client.c     crm_debug("Releasing %s IPC API", pcmk_ipc_name(api, true));
api               209 lib/common/ipc_client.c     if (api->ipc != NULL) {
api               210 lib/common/ipc_client.c         if (api->mainloop_io != NULL) {
api               220 lib/common/ipc_client.c             free_on_disconnect = api->free_on_disconnect = true;
api               222 lib/common/ipc_client.c         pcmk_disconnect_ipc(api); // Frees api if free_on_disconnect is true
api               225 lib/common/ipc_client.c         free_daemon_specific_data(api);
api               227 lib/common/ipc_client.c         free(api);
api               241 lib/common/ipc_client.c pcmk_ipc_name(const pcmk_ipc_api_t *api, bool for_log)
api               243 lib/common/ipc_client.c     if (api == NULL) {
api               247 lib/common/ipc_client.c         const char *name = pcmk__server_log_name(api->server);
api               251 lib/common/ipc_client.c     switch (api->server) {
api               259 lib/common/ipc_client.c             return pcmk__server_ipc_name(api->server);
api               271 lib/common/ipc_client.c pcmk_ipc_is_connected(pcmk_ipc_api_t *api)
api               273 lib/common/ipc_client.c     return (api != NULL) && crm_ipc_connected(api->ipc);
api               288 lib/common/ipc_client.c call_api_dispatch(pcmk_ipc_api_t *api, xmlNode *message)
api               291 lib/common/ipc_client.c     if ((api->cmds != NULL) && (api->cmds->dispatch != NULL)) {
api               292 lib/common/ipc_client.c         return api->cmds->dispatch(api, message);
api               314 lib/common/ipc_client.c dispatch_ipc_data(const char *buffer, pcmk_ipc_api_t *api)
api               321 lib/common/ipc_client.c                  pcmk_ipc_name(api, true));
api               328 lib/common/ipc_client.c                  pcmk_ipc_name(api, true));
api               332 lib/common/ipc_client.c     more = call_api_dispatch(api, msg);
api               357 lib/common/ipc_client.c     pcmk_ipc_api_t *api = user_data;
api               359 lib/common/ipc_client.c     CRM_CHECK(api != NULL, return 0);
api               360 lib/common/ipc_client.c     dispatch_ipc_data(buffer, api);
api               383 lib/common/ipc_client.c pcmk_poll_ipc(const pcmk_ipc_api_t *api, int timeout_ms)
api               388 lib/common/ipc_client.c     if ((api == NULL) || (api->dispatch_type != pcmk_ipc_dispatch_poll)) {
api               392 lib/common/ipc_client.c     rc = pcmk__ipc_fd(api->ipc, &(pollfd.fd));
api               395 lib/common/ipc_client.c                   pcmk_ipc_name(api, true), pcmk_rc_str(rc));
api               423 lib/common/ipc_client.c pcmk_dispatch_ipc(pcmk_ipc_api_t *api)
api               425 lib/common/ipc_client.c     if (api == NULL) {
api               428 lib/common/ipc_client.c     while (crm_ipc_ready(api->ipc) > 0) {
api               429 lib/common/ipc_client.c         if (crm_ipc_read(api->ipc) > 0) {
api               430 lib/common/ipc_client.c             dispatch_ipc_data(crm_ipc_buffer(api->ipc), api);
api               431 lib/common/ipc_client.c             pcmk__ipc_free_client_buffer(api->ipc);
api               438 lib/common/ipc_client.c connect_with_main_loop(pcmk_ipc_api_t *api)
api               447 lib/common/ipc_client.c     rc = pcmk__add_mainloop_ipc(api->ipc, G_PRIORITY_DEFAULT, api,
api               448 lib/common/ipc_client.c                                 &callbacks, &(api->mainloop_io));
api               453 lib/common/ipc_client.c               pcmk_ipc_name(api, true));
api               462 lib/common/ipc_client.c connect_without_main_loop(pcmk_ipc_api_t *api)
api               464 lib/common/ipc_client.c     int rc = pcmk__connect_generic_ipc(api->ipc);
api               467 lib/common/ipc_client.c         crm_ipc_close(api->ipc);
api               470 lib/common/ipc_client.c                   pcmk_ipc_name(api, true));
api               487 lib/common/ipc_client.c pcmk__connect_ipc_retry_conrefused(pcmk_ipc_api_t *api,
api               498 lib/common/ipc_client.c         rc = pcmk__connect_ipc(api, dispatch_type, remaining);
api               517 lib/common/ipc_client.c pcmk__connect_ipc(pcmk_ipc_api_t *api, enum pcmk_ipc_dispatch dispatch_type,
api               522 lib/common/ipc_client.c     if ((api == NULL) || (attempts < 1)) {
api               526 lib/common/ipc_client.c     if (api->ipc == NULL) {
api               527 lib/common/ipc_client.c         api->ipc = crm_ipc_new(pcmk_ipc_name(api, false), 0);
api               528 lib/common/ipc_client.c         if (api->ipc == NULL) {
api               533 lib/common/ipc_client.c     if (crm_ipc_connected(api->ipc)) {
api               534 lib/common/ipc_client.c         crm_trace("Already connected to %s", pcmk_ipc_name(api, true));
api               538 lib/common/ipc_client.c     api->dispatch_type = dispatch_type;
api               541 lib/common/ipc_client.c               pcmk_ipc_name(api, true), attempts, pcmk__plural_s(attempts));
api               545 lib/common/ipc_client.c                 rc = connect_with_main_loop(api);
api               550 lib/common/ipc_client.c                 rc = connect_without_main_loop(api);
api               561 lib/common/ipc_client.c                   pcmk_ipc_name(api, true), remaining,
api               569 lib/common/ipc_client.c     if ((api->cmds != NULL) && (api->cmds->post_connect != NULL)) {
api               570 lib/common/ipc_client.c         rc = api->cmds->post_connect(api);
api               572 lib/common/ipc_client.c             crm_ipc_close(api->ipc);
api               587 lib/common/ipc_client.c pcmk_connect_ipc(pcmk_ipc_api_t *api, enum pcmk_ipc_dispatch dispatch_type)
api               589 lib/common/ipc_client.c     int rc = pcmk__connect_ipc(api, dispatch_type, 2);
api               593 lib/common/ipc_client.c                 pcmk_ipc_name(api, true), pcmk_rc_str(rc));
api               610 lib/common/ipc_client.c pcmk_disconnect_ipc(pcmk_ipc_api_t *api)
api               612 lib/common/ipc_client.c     if ((api == NULL) || (api->ipc == NULL)) {
api               615 lib/common/ipc_client.c     switch (api->dispatch_type) {
api               618 lib/common/ipc_client.c                 mainloop_io_t *mainloop_io = api->mainloop_io;
api               621 lib/common/ipc_client.c                 api->mainloop_io = NULL;
api               622 lib/common/ipc_client.c                 api->ipc = NULL;
api               632 lib/common/ipc_client.c                 crm_ipc_t *ipc = api->ipc;
api               635 lib/common/ipc_client.c                 api->ipc = NULL;
api               638 lib/common/ipc_client.c                 api->free_on_disconnect = false;
api               642 lib/common/ipc_client.c                 ipc_post_disconnect(api);
api               661 lib/common/ipc_client.c pcmk_register_ipc_callback(pcmk_ipc_api_t *api, pcmk_ipc_callback_t cb,
api               664 lib/common/ipc_client.c     if (api == NULL) {
api               667 lib/common/ipc_client.c     api->cb = cb;
api               668 lib/common/ipc_client.c     api->user_data = user_data;
api               684 lib/common/ipc_client.c pcmk__send_ipc_request(pcmk_ipc_api_t *api, const xmlNode *request)
api               690 lib/common/ipc_client.c     if ((api == NULL) || (api->ipc == NULL) || (request == NULL)) {
api               696 lib/common/ipc_client.c     if ((api->dispatch_type == pcmk_ipc_dispatch_sync)
api               697 lib/common/ipc_client.c         && (api->cmds != NULL)
api               698 lib/common/ipc_client.c         && (api->cmds->reply_expected != NULL)
api               699 lib/common/ipc_client.c         && (api->cmds->reply_expected(api, request))) {
api               708 lib/common/ipc_client.c     rc = crm_ipc_send(api->ipc, request, flags, 0, &reply);
api               718 lib/common/ipc_client.c         bool more = call_api_dispatch(api, reply);
api               723 lib/common/ipc_client.c             rc = crm_ipc_read(api->ipc);
api               733 lib/common/ipc_client.c             rc = dispatch_ipc_data(crm_ipc_buffer(api->ipc), api);
api               734 lib/common/ipc_client.c             pcmk__ipc_free_client_buffer(api->ipc);
api               771 lib/common/ipc_client.c create_purge_node_request(const pcmk_ipc_api_t *api, const char *node_name,
api               777 lib/common/ipc_client.c     switch (api->server) {
api               793 lib/common/ipc_client.c             request = pcmk__new_request(api->server, client, NULL,
api               794 lib/common/ipc_client.c                                         pcmk_ipc_name(api, false),
api               825 lib/common/ipc_client.c pcmk_ipc_purge_node(pcmk_ipc_api_t *api, const char *node_name, uint32_t nodeid)
api               830 lib/common/ipc_client.c     if (api == NULL) {
api               837 lib/common/ipc_client.c     request = create_purge_node_request(api, node_name, nodeid);
api               841 lib/common/ipc_client.c     rc = pcmk__send_ipc_request(api, request);
api               845 lib/common/ipc_client.c               pcmk_ipc_name(api, true), node_name, (unsigned long) nodeid, rc);
api                65 lib/common/ipc_controld.c new_data(pcmk_ipc_api_t *api)
api                69 lib/common/ipc_controld.c     api->api_data = calloc(1, sizeof(struct controld_api_private_s));
api                71 lib/common/ipc_controld.c     if (api->api_data == NULL) {
api                75 lib/common/ipc_controld.c     private = api->api_data;
api               101 lib/common/ipc_controld.c post_connect(pcmk_ipc_api_t *api)
api               106 lib/common/ipc_controld.c     struct controld_api_private_s *private = api->api_data;
api               114 lib/common/ipc_controld.c     rc = pcmk__send_ipc_request(api, hello);
api               118 lib/common/ipc_controld.c                  pcmk_ipc_name(api, true), pcmk_rc_str(rc), rc);
api               120 lib/common/ipc_controld.c         crm_debug("Sent IPC hello to %s", pcmk_ipc_name(api, true));
api               187 lib/common/ipc_controld.c reply_expected(pcmk_ipc_api_t *api, const xmlNode *request)
api               202 lib/common/ipc_controld.c dispatch(pcmk_ipc_api_t *api, xmlNode *reply)
api               204 lib/common/ipc_controld.c     struct controld_api_private_s *private = api->api_data;
api               288 lib/common/ipc_controld.c     pcmk__call_ipc_callback(api, pcmk_ipc_event_reply, status, &reply_data);
api               325 lib/common/ipc_controld.c create_controller_request(const pcmk_ipc_api_t *api, const char *op,
api               333 lib/common/ipc_controld.c     if (api == NULL) {
api               336 lib/common/ipc_controld.c     private = api->api_data;
api               352 lib/common/ipc_controld.c send_controller_request(pcmk_ipc_api_t *api, const xmlNode *request,
api               359 lib/common/ipc_controld.c         struct controld_api_private_s *private = api->api_data;
api               363 lib/common/ipc_controld.c     return pcmk__send_ipc_request(api, request);
api               390 lib/common/ipc_controld.c pcmk_controld_api_reprobe(pcmk_ipc_api_t *api, const char *target_node,
api               397 lib/common/ipc_controld.c     if (api == NULL) {
api               404 lib/common/ipc_controld.c               pcmk_ipc_name(api, true), pcmk__s(target_node, "local node"),
api               407 lib/common/ipc_controld.c     request = create_controller_request(api, CRM_OP_REPROBE, router_node,
api               409 lib/common/ipc_controld.c     rc = send_controller_request(api, request, true);
api               425 lib/common/ipc_controld.c pcmk_controld_api_node_info(pcmk_ipc_api_t *api, uint32_t nodeid)
api               430 lib/common/ipc_controld.c     request = create_controller_request(api, CRM_OP_NODE_INFO, NULL, NULL);
api               438 lib/common/ipc_controld.c     rc = send_controller_request(api, request, true);
api               453 lib/common/ipc_controld.c pcmk_controld_api_ping(pcmk_ipc_api_t *api, const char *node_name)
api               458 lib/common/ipc_controld.c     request = create_controller_request(api, CRM_OP_PING, node_name, NULL);
api               462 lib/common/ipc_controld.c     rc = send_controller_request(api, request, true);
api               476 lib/common/ipc_controld.c pcmk_controld_api_list_nodes(pcmk_ipc_api_t *api)
api               481 lib/common/ipc_controld.c     request = create_controller_request(api, PCMK__CONTROLD_CMD_NODES, NULL,
api               484 lib/common/ipc_controld.c         rc = send_controller_request(api, request, true);
api               492 lib/common/ipc_controld.c controller_resource_op(pcmk_ipc_api_t *api, const char *op,
api               502 lib/common/ipc_controld.c     if (api == NULL) {
api               545 lib/common/ipc_controld.c     request = create_controller_request(api, op, router_node, msg_data);
api               546 lib/common/ipc_controld.c     rc = send_controller_request(api, request, true);
api               568 lib/common/ipc_controld.c pcmk_controld_api_fail(pcmk_ipc_api_t *api,
api               575 lib/common/ipc_controld.c               pcmk_ipc_name(api, true), pcmk__s(rsc_id, "unknown resource"),
api               579 lib/common/ipc_controld.c     return controller_resource_op(api, CRM_OP_LRM_FAIL, target_node,
api               601 lib/common/ipc_controld.c pcmk_controld_api_refresh(pcmk_ipc_api_t *api, const char *target_node,
api               608 lib/common/ipc_controld.c               pcmk_ipc_name(api, true), pcmk__s(rsc_id, "unknown resource"),
api               612 lib/common/ipc_controld.c     return controller_resource_op(api, CRM_OP_LRM_DELETE, target_node,
api               625 lib/common/ipc_controld.c pcmk_controld_api_replies_expected(const pcmk_ipc_api_t *api)
api               627 lib/common/ipc_controld.c     struct controld_api_private_s *private = api->api_data;
api               124 lib/common/ipc_pacemakerd.c new_data(pcmk_ipc_api_t *api)
api               128 lib/common/ipc_pacemakerd.c     api->api_data = calloc(1, sizeof(struct pacemakerd_api_private_s));
api               130 lib/common/ipc_pacemakerd.c     if (api->api_data == NULL) {
api               134 lib/common/ipc_pacemakerd.c     private = api->api_data;
api               153 lib/common/ipc_pacemakerd.c post_connect(pcmk_ipc_api_t *api)
api               157 lib/common/ipc_pacemakerd.c     if (api->api_data == NULL) {
api               160 lib/common/ipc_pacemakerd.c     private = api->api_data;
api               167 lib/common/ipc_pacemakerd.c post_disconnect(pcmk_ipc_api_t *api)
api               171 lib/common/ipc_pacemakerd.c     if (api->api_data == NULL) {
api               174 lib/common/ipc_pacemakerd.c     private = api->api_data;
api               181 lib/common/ipc_pacemakerd.c reply_expected(pcmk_ipc_api_t *api, const xmlNode *request)
api               194 lib/common/ipc_pacemakerd.c dispatch(pcmk_ipc_api_t *api, xmlNode *reply)
api               213 lib/common/ipc_pacemakerd.c                      pcmk_ipc_name(api, true), pcmk__s(status, ""));
api               226 lib/common/ipc_pacemakerd.c                   pcmk_ipc_name(api, true), pcmk__s(value, ""));
api               233 lib/common/ipc_pacemakerd.c                  pcmk_ipc_name(api, true), pcmk__s(value, ""));
api               240 lib/common/ipc_pacemakerd.c                  pcmk_ipc_name(api, true));
api               271 lib/common/ipc_pacemakerd.c                  pcmk_ipc_name(api, true), pcmk__s(value, ""));
api               277 lib/common/ipc_pacemakerd.c     pcmk__call_ipc_callback(api, pcmk_ipc_event_reply, status, &reply_data);
api               298 lib/common/ipc_pacemakerd.c do_pacemakerd_api_call(pcmk_ipc_api_t *api, const char *ipc_name, const char *task)
api               305 lib/common/ipc_pacemakerd.c     if (api == NULL) {
api               309 lib/common/ipc_pacemakerd.c     private = api->api_data;
api               319 lib/common/ipc_pacemakerd.c         rc = pcmk__send_ipc_request(api, cmd);
api               322 lib/common/ipc_pacemakerd.c                       pcmk_ipc_name(api, true), pcmk_rc_str(rc), rc);
api               333 lib/common/ipc_pacemakerd.c pcmk_pacemakerd_api_ping(pcmk_ipc_api_t *api, const char *ipc_name)
api               335 lib/common/ipc_pacemakerd.c     return do_pacemakerd_api_call(api, ipc_name, CRM_OP_PING);
api               339 lib/common/ipc_pacemakerd.c pcmk_pacemakerd_api_shutdown(pcmk_ipc_api_t *api, const char *ipc_name)
api               341 lib/common/ipc_pacemakerd.c     return do_pacemakerd_api_call(api, ipc_name, CRM_OP_QUIT);
api                28 lib/common/ipc_schedulerd.c new_data(pcmk_ipc_api_t *api)
api                32 lib/common/ipc_schedulerd.c     api->api_data = calloc(1, sizeof(struct schedulerd_api_private_s));
api                34 lib/common/ipc_schedulerd.c     if (api->api_data == NULL) {
api                38 lib/common/ipc_schedulerd.c     private = api->api_data;
api                54 lib/common/ipc_schedulerd.c post_connect(pcmk_ipc_api_t *api)
api                56 lib/common/ipc_schedulerd.c     if (api->api_data == NULL) {
api                64 lib/common/ipc_schedulerd.c reply_expected(pcmk_ipc_api_t *api, const xmlNode *request)
api                77 lib/common/ipc_schedulerd.c dispatch(pcmk_ipc_api_t *api, xmlNode *reply)
api               136 lib/common/ipc_schedulerd.c     pcmk__call_ipc_callback(api, pcmk_ipc_event_reply, status, &reply_data);
api               156 lib/common/ipc_schedulerd.c do_schedulerd_api_call(pcmk_ipc_api_t *api, const char *task, xmlNode *cib, char **ref)
api               163 lib/common/ipc_schedulerd.c     if (!pcmk_ipc_is_connected(api)) {
api               167 lib/common/ipc_schedulerd.c     private = api->api_data;
api               177 lib/common/ipc_schedulerd.c         rc = pcmk__send_ipc_request(api, cmd);
api               193 lib/common/ipc_schedulerd.c pcmk_schedulerd_api_graph(pcmk_ipc_api_t *api, xmlNode *cib, char **ref)
api               195 lib/common/ipc_schedulerd.c     return do_schedulerd_api_call(api, CRM_OP_PECALC, cib, ref);
api              2371 lib/lrmd/lrmd_client.c lrmd__new(lrmd_t **api, const char *nodename, const char *server, int port)
api              2375 lib/lrmd/lrmd_client.c     if (api == NULL) {
api              2378 lib/lrmd/lrmd_client.c     *api = NULL;
api              2382 lib/lrmd/lrmd_client.c     *api = calloc(1, sizeof(lrmd_t));
api              2383 lib/lrmd/lrmd_client.c     if (*api == NULL) {
api              2389 lib/lrmd/lrmd_client.c         lrmd_api_delete(*api);
api              2390 lib/lrmd/lrmd_client.c         *api = NULL;
api              2393 lib/lrmd/lrmd_client.c     (*api)->lrmd_private = pvt;
api              2398 lib/lrmd/lrmd_client.c     (*api)->cmds = calloc(1, sizeof(lrmd_api_operations_t));
api              2400 lib/lrmd/lrmd_client.c     if ((pvt->remote == NULL) || ((*api)->cmds == NULL)) {
api              2401 lib/lrmd/lrmd_client.c         lrmd_api_delete(*api);
api              2402 lib/lrmd/lrmd_client.c         *api = NULL;
api              2407 lib/lrmd/lrmd_client.c     (*api)->cmds->connect = lrmd_api_connect;
api              2408 lib/lrmd/lrmd_client.c     (*api)->cmds->connect_async = lrmd_api_connect_async;
api              2409 lib/lrmd/lrmd_client.c     (*api)->cmds->is_connected = lrmd_api_is_connected;
api              2410 lib/lrmd/lrmd_client.c     (*api)->cmds->poke_connection = lrmd_api_poke_connection;
api              2411 lib/lrmd/lrmd_client.c     (*api)->cmds->disconnect = lrmd_api_disconnect;
api              2412 lib/lrmd/lrmd_client.c     (*api)->cmds->register_rsc = lrmd_api_register_rsc;
api              2413 lib/lrmd/lrmd_client.c     (*api)->cmds->unregister_rsc = lrmd_api_unregister_rsc;
api              2414 lib/lrmd/lrmd_client.c     (*api)->cmds->get_rsc_info = lrmd_api_get_rsc_info;
api              2415 lib/lrmd/lrmd_client.c     (*api)->cmds->get_recurring_ops = lrmd_api_get_recurring_ops;
api              2416 lib/lrmd/lrmd_client.c     (*api)->cmds->set_callback = lrmd_api_set_callback;
api              2417 lib/lrmd/lrmd_client.c     (*api)->cmds->get_metadata = lrmd_api_get_metadata;
api              2418 lib/lrmd/lrmd_client.c     (*api)->cmds->exec = lrmd_api_exec;
api              2419 lib/lrmd/lrmd_client.c     (*api)->cmds->cancel = lrmd_api_cancel;
api              2420 lib/lrmd/lrmd_client.c     (*api)->cmds->list_agents = lrmd_api_list_agents;
api              2421 lib/lrmd/lrmd_client.c     (*api)->cmds->list_ocf_providers = lrmd_api_list_ocf_providers;
api              2422 lib/lrmd/lrmd_client.c     (*api)->cmds->list_standards = lrmd_api_list_standards;
api              2423 lib/lrmd/lrmd_client.c     (*api)->cmds->exec_alert = lrmd_api_exec_alert;
api              2424 lib/lrmd/lrmd_client.c     (*api)->cmds->get_metadata_params = lrmd_api_get_metadata_params;
api              2438 lib/lrmd/lrmd_client.c             lrmd_api_delete(*api);
api              2439 lib/lrmd/lrmd_client.c             *api = NULL;
api              2453 lib/lrmd/lrmd_client.c     lrmd_t *api = NULL;
api              2455 lib/lrmd/lrmd_client.c     pcmk__assert(lrmd__new(&api, NULL, NULL, 0) == pcmk_rc_ok);
api              2456 lib/lrmd/lrmd_client.c     return api;
api              2462 lib/lrmd/lrmd_client.c     lrmd_t *api = NULL;
api              2464 lib/lrmd/lrmd_client.c     pcmk__assert(lrmd__new(&api, nodename, server, port) == pcmk_rc_ok);
api              2465 lib/lrmd/lrmd_client.c     return api;
api                63 lib/pacemaker/pcmk_cluster_queries.c validate_reply_event(data_t *data, const pcmk_ipc_api_t *api,
api                75 lib/pacemaker/pcmk_cluster_queries.c                          pcmk_ipc_name(api, true));
api                87 lib/pacemaker/pcmk_cluster_queries.c                  pcmk_ipc_name(api, true), crm_exit_str(status));
api               108 lib/pacemaker/pcmk_cluster_queries.c validate_controld_reply(data_t *data, const pcmk_ipc_api_t *api,
api               117 lib/pacemaker/pcmk_cluster_queries.c     rc = validate_reply_event(data, api, event_type, status);
api               149 lib/pacemaker/pcmk_cluster_queries.c validate_pcmkd_reply(data_t *data, const pcmk_ipc_api_t *api,
api               156 lib/pacemaker/pcmk_cluster_queries.c     int rc = validate_reply_event(data, api, event_type, status);
api               349 lib/pacemaker/pcmk_cluster_queries.c     pcmk_ipc_api_t *api = NULL;
api               351 lib/pacemaker/pcmk_cluster_queries.c     rc = pcmk_new_ipc_api(&api, server);
api               352 lib/pacemaker/pcmk_cluster_queries.c     if (api == NULL) {
api               354 lib/pacemaker/pcmk_cluster_queries.c                 pcmk_ipc_name(api, true),
api               360 lib/pacemaker/pcmk_cluster_queries.c         pcmk_register_ipc_callback(api, cb, data);
api               363 lib/pacemaker/pcmk_cluster_queries.c     rc = pcmk__connect_ipc(api, dispatch_type, 5);
api               373 lib/pacemaker/pcmk_cluster_queries.c                           pcmk_ipc_name(api, true));
api               377 lib/pacemaker/pcmk_cluster_queries.c                          pcmk_ipc_name(api, true), pcmk_rc_str(rc));
api               381 lib/pacemaker/pcmk_cluster_queries.c         pcmk_free_ipc_api(api);
api               385 lib/pacemaker/pcmk_cluster_queries.c     return api;
api               400 lib/pacemaker/pcmk_cluster_queries.c poll_until_reply(data_t *data, pcmk_ipc_api_t *api, const char *on_node)
api               410 lib/pacemaker/pcmk_cluster_queries.c         int rc = pcmk_poll_ipc(api, remaining_ms);
api               419 lib/pacemaker/pcmk_cluster_queries.c                      pcmk_ipc_name(api, true), (on_node != NULL)? " on " : "",
api               425 lib/pacemaker/pcmk_cluster_queries.c         pcmk_dispatch_ipc(api);
api               438 lib/pacemaker/pcmk_cluster_queries.c              data->message_timeout_ms, pcmk_ipc_name(api, true),
api               627 tools/crm_node.c     pcmk_ipc_api_t *api = NULL;
api               630 tools/crm_node.c     rc = pcmk_new_ipc_api(&api, server);
api               635 tools/crm_node.c     rc = pcmk__connect_ipc(api, pcmk_ipc_dispatch_sync, 5);
api               640 tools/crm_node.c     rc = pcmk_ipc_purge_node(api, node_name, node_id);
api               645 tools/crm_node.c                     pcmk__s(node_name, "by ID"), pcmk_ipc_name(api, true),
api               648 tools/crm_node.c     pcmk_free_ipc_api(api);
api               221 tools/crm_resource.c controller_event_callback(pcmk_ipc_api_t *api, enum pcmk_ipc_event event_type,
api               242 tools/crm_resource.c                 pcmk_disconnect_ipc(api);
api               248 tools/crm_resource.c                 if ((pcmk_controld_api_replies_expected(api) == 0)
api               254 tools/crm_resource.c                     pcmk_disconnect_ipc(api);