14#ifndef SWOCSERVERD_INTERNAL_H
15#define SWOCSERVERD_INTERNAL_H
27 #define _Bool signed char
33 #define __bool_true_false_are_defined 1
36#include <libmgec/mge-bstree.h>
37#include <libmgec/mge-message.h>
38#include <libmgec/mge-portability.h>
43#define MAX_LISTEN_PORTS 10
44#define MAX_EPOLL_EVENTS 64
55extern char client[_POSIX_HOST_NAME_MAX];
108__attribute__((
const)) const
char *swocserverd_get_pkg_version(
void);
110__attribute__((const)) const
char *swocserverd_get_src_version(
void);
BEGIN_C_DECLS __attribute__((const)) const char *swocclient_get_pkg_version(void)
Get the git-describe based package version.
Definition: version.c:24
Internal header file for Server Wait on Client common library.
msg_arguments
enum specifying error status of arguments.
Definition: libswoccommon.h:63
int srv_reload_req(struct mgemessage *msg, enum msg_arguments *msg_args)
swocserver request to reload config file.
Definition: request.c:90
int cli_block_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Client block further locks request.
Definition: request.c:491
int cli_reset_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Reset request from client.
Definition: request.c:767
int cli_srv_block_status_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Client requests status of server level blocking.
Definition: request.c:585
int srv_cli_rel_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Server requests client lock release.
Definition: request.c:264
int srv_cli_unblock_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Server requests client to be unblocked.
Definition: request.c:360
void id_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Server or client submits id.
Definition: request.c:814
struct bstree * cli_blocked
Definition: internal.h:61
int swsd_validate_config(void)
Parse and validate the config file.
Definition: validateconfig.c:34
int srv_cli_blocklist_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Server client block list request.
Definition: request.c:212
bool srv_blocked
Server is blocked?
Definition: main.c:57
char client[_POSIX_HOST_NAME_MAX]
Client name.
Definition: main.c:52
int cli_status_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Status request from client.
Definition: request.c:710
int srv_status_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Server status request.
Definition: request.c:145
struct bstree * cli_locks
Clients and locks.
Definition: main.c:58
struct comm_spec * port_spec
Port / socket config mappings.
Definition: main.c:56
int srv_block_status_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Server requests status of server level blocking.
Definition: request.c:461
int cursockfd
Socket file descriptor in use.
Definition: main.c:55
int swsd_reload_config(void)
Reload the config file.
Definition: request.c:118
struct bstree * port_sock
Definition: internal.h:61
int srv_block_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Server requests server level blocking.
Definition: request.c:406
int srv_cli_block_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Server requests client to be blocked.
Definition: request.c:312
int cli_unblock_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Client unblock further locks request.
Definition: request.c:540
int cli_lock_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Client lock request.
Definition: request.c:598
int srv_unblock_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Server requests removal of server level blocking.
Definition: request.c:433
int end
End pending.
Definition: main.c:54
int debug
Debug - 0 false, 1 true.
Definition: main.c:53
void swocserverd_print_src_version(void)
Print the source version string to stdout.
Definition: version.c:49
int cli_rel_req(struct mgemessage *msg, enum msg_arguments *msg_args)
Release request from client.
Definition: request.c:664
int srv_end_req(struct mgemessage *msg, enum msg_arguments *msg_args)
swocserver requesting the daemon to terminate.
Definition: request.c:55
void swocserverd_print_pkg_version(void)
Print the package version string to stdout.
Definition: version.c:40
int swsd_err
swoc daemon error number.
Definition: main.c:51
#define _Bool
Definition: internal.h:27
int process_comms(void)
Wait and then process communications.
Definition: comms.c:158
int prepare_sockets(void)
Prepare all sockets.
Definition: comms.c:60
Map sockets to ports.
Definition: internal.h:49
int socketfd
Socket file descriptor.
Definition: internal.h:51
int portno
Port number.
Definition: internal.h:50