blob: e9e27369d156bb2f16756a6a2885e0ce3f357699 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#ifndef IPC_SERVER_H
#define IPC_SERVER_H
struct ipc_cmd;
/* The callback must eventually free the cmd by calling ip_cmd_success/fail().
line is guaranteed to be non-empty. */
typedef void ipc_command_callback_t(struct ipc_cmd *cmd, const char *line);
struct ipc_server *
ipc_server_init(const char *ipc_socket_path, const char *name,
ipc_command_callback_t *callback);
void ipc_server_deinit(struct ipc_server **server);
void ipc_cmd_send(struct ipc_cmd *cmd, const char *data);
void ipc_cmd_success(struct ipc_cmd **cmd);
void ipc_cmd_success_reply(struct ipc_cmd **cmd, const char *data);
void ipc_cmd_fail(struct ipc_cmd **cmd, const char *errormsg);
#endif
|