pacemaker
1.1.24-3850484742
Scalable High-Availability cluster resource manager
lib
services
services_private.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2010 - 2011, Red Hat, Inc.
3
*
4
* This program is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation; either
7
* version 2.1 of the License, or (at your option) any later version.
8
*
9
* This software is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
* General Public License for more details.
13
*
14
* You should have received a copy of the GNU Lesser General Public
15
* License along with this library; if not, write to the Free Software
16
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17
*/
18
19
#ifndef SERVICES_PRIVATE__H
20
# define SERVICES_PRIVATE__H
21
22
# include <glib.h>
23
# include "
crm/services.h
"
24
25
#if SUPPORT_DBUS
26
# include <dbus/dbus.h>
27
#endif
28
29
#define MAX_ARGC 255
30
struct
svc_action_private_s
{
31
char
*
exec
;
32
char
*
args
[
MAX_ARGC
];
33
34
uid_t
uid
;
35
gid_t
gid
;
36
37
guint
repeat_timer
;
38
void (*
callback
) (
svc_action_t
* op);
39
void (*
fork_callback
) (
svc_action_t
* op);
40
41
int
stderr_fd
;
42
mainloop_io_t
*
stderr_gsource
;
43
44
int
stdout_fd
;
45
mainloop_io_t
*
stdout_gsource
;
46
47
int
stdin_fd
;
48
#if SUPPORT_DBUS
49
DBusPendingCall* pending;
50
unsigned
timerid;
51
#endif
52
};
53
54
G_GNUC_INTERNAL
55
GList *
services_os_get_directory_list
(
const
char
*root, gboolean files, gboolean executable);
56
57
G_GNUC_INTERNAL
58
gboolean
services_os_action_execute
(
svc_action_t
* op);
59
60
G_GNUC_INTERNAL
61
GList *
resources_os_list_lsb_agents
(
void
);
62
63
G_GNUC_INTERNAL
64
GList *
resources_os_list_ocf_providers
(
void
);
65
66
G_GNUC_INTERNAL
67
GList *
resources_os_list_ocf_agents
(
const
char
*provider);
68
69
G_GNUC_INTERNAL
70
GList *
resources_os_list_nagios_agents
(
void
);
71
72
G_GNUC_INTERNAL
73
gboolean
cancel_recurring_action
(
svc_action_t
* op);
74
75
G_GNUC_INTERNAL
76
gboolean
recurring_action_timer
(gpointer
data
);
77
78
G_GNUC_INTERNAL
79
gboolean
operation_finalize
(
svc_action_t
* op);
80
81
G_GNUC_INTERNAL
82
void
services_add_inflight_op
(
svc_action_t
*op);
83
84
G_GNUC_INTERNAL
85
void
services_untrack_op
(
svc_action_t
*op);
86
87
G_GNUC_INTERNAL
88
gboolean
is_op_blocked
(
const
char
*rsc);
89
90
#if SUPPORT_DBUS
91
G_GNUC_INTERNAL
92
void
services_set_op_pending(
svc_action_t
*op, DBusPendingCall *pending);
93
#endif
94
95
#endif
/* SERVICES_PRIVATE__H */
services.h
Services API.
svc_action_private_s::callback
void(* callback)(svc_action_t *op)
Definition:
services_private.h:38
svc_action_private_s::stderr_gsource
mainloop_io_t * stderr_gsource
Definition:
services_private.h:42
services_os_action_execute
G_GNUC_INTERNAL gboolean services_os_action_execute(svc_action_t *op)
Definition:
services_linux.c:824
services_os_get_directory_list
G_GNUC_INTERNAL GList * services_os_get_directory_list(const char *root, gboolean files, gboolean executable)
Definition:
services_linux.c:1024
operation_finalize
G_GNUC_INTERNAL gboolean operation_finalize(svc_action_t *op)
Definition:
services_linux.c:464
mainloop_io_t
struct mainloop_io_s mainloop_io_t
Definition:
mainloop.h:25
svc_action_private_s::repeat_timer
guint repeat_timer
Definition:
services_private.h:37
resources_os_list_nagios_agents
G_GNUC_INTERNAL GList * resources_os_list_nagios_agents(void)
svc_action_private_s::stdin_fd
int stdin_fd
Definition:
services_private.h:47
cancel_recurring_action
G_GNUC_INTERNAL gboolean cancel_recurring_action(svc_action_t *op)
Definition:
services.c:592
resources_os_list_ocf_providers
G_GNUC_INTERNAL GList * resources_os_list_ocf_providers(void)
Definition:
services_linux.c:1085
svc_action_private_s::uid
uid_t uid
Definition:
services_private.h:34
svc_action_private_s::gid
gid_t gid
Definition:
services_private.h:35
svc_action_s
Definition:
services.h:163
recurring_action_timer
G_GNUC_INTERNAL gboolean recurring_action_timer(gpointer data)
Definition:
services_linux.c:445
resources_os_list_lsb_agents
G_GNUC_INTERNAL GList * resources_os_list_lsb_agents(void)
Definition:
services_linux.c:1079
MAX_ARGC
#define MAX_ARGC
Definition:
services_private.h:29
svc_action_private_s::args
char * args[MAX_ARGC]
Definition:
services_private.h:32
svc_action_private_s::exec
char * exec
Definition:
services_private.h:31
svc_action_private_s::stderr_fd
int stderr_fd
Definition:
services_private.h:41
svc_action_private_s
Definition:
services_private.h:30
resources_os_list_ocf_agents
G_GNUC_INTERNAL GList * resources_os_list_ocf_agents(const char *provider)
Definition:
services_linux.c:1091
is_op_blocked
G_GNUC_INTERNAL gboolean is_op_blocked(const char *rsc)
Definition:
services.c:849
svc_action_private_s::stdout_gsource
mainloop_io_t * stdout_gsource
Definition:
services_private.h:45
data
char data[0]
Definition:
internal.h:86
services_add_inflight_op
G_GNUC_INTERNAL void services_add_inflight_op(svc_action_t *op)
Definition:
services.c:776
services_untrack_op
G_GNUC_INTERNAL void services_untrack_op(svc_action_t *op)
Definition:
services.c:797
svc_action_private_s::stdout_fd
int stdout_fd
Definition:
services_private.h:44
svc_action_private_s::fork_callback
void(* fork_callback)(svc_action_t *op)
Definition:
services_private.h:39
Generated on Sun Dec 27 2020 22:50:36 for pacemaker by
1.8.13