Added support for control commands using D-BUS.

This commit is contained in:
Nikos Mavrogiannopoulos
2014-01-06 19:01:04 +01:00
parent 26a9121ced
commit 0cf7529c72
7 changed files with 674 additions and 13 deletions

View File

@@ -137,6 +137,21 @@ struct ban_list_st {
struct list_head head;
};
#define CTL_READ 1
#define CTL_WRITE 2
struct ctl_handler_st {
struct list_node list;
int fd;
unsigned type; /* CTL_READ/WRITE */
unsigned enabled;
void* watch;
};
struct ctl_list_st {
struct list_head head;
};
typedef struct main_server_st {
struct cfg_st *config;
@@ -160,6 +175,9 @@ typedef struct main_server_st {
unsigned active_clients;
void * auth_extra;
struct ctl_list_st ctl_list;
void * ctl_ctx;
} main_server_st;
void clear_lists(main_server_st *s);
@@ -248,4 +266,8 @@ int send_socket_msg_to_worker(main_server_st* s, struct proc_st* proc, uint8_t c
return send_socket_msg(proc->fd, cmd, socketfd, msg, get_size, pack);
}
void ctl_handle_commands(main_server_st* s, struct ctl_handler_st* ctl);
int ctl_handler_init(main_server_st* s);
void ctl_handler_deinit(main_server_st* s);
#endif