mirror of
https://github.com/servalproject/serval-dna.git
synced 2025-02-10 21:01:23 +00:00
Call a function to cleanup various sockets properly.
This commit is contained in:
parent
aac5a4c275
commit
4861ff9252
@ -109,6 +109,12 @@ monitor_setup_sockets(void) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
void
|
||||
monitor_cleanup_sockets(void) {
|
||||
socket_done(confValueGet("monitor.socket", DEFAULT_MONITOR_SOCKET_NAME));
|
||||
}
|
||||
|
||||
|
||||
int monitor_get_fds(struct pollfd *fds,int *fdcount,int fdmax)
|
||||
{
|
||||
/* Make sure sockets are open */
|
||||
|
@ -1175,10 +1175,15 @@ int overlay_mdp_client_init()
|
||||
return -1;
|
||||
}
|
||||
|
||||
void
|
||||
overlay_mdp_server_done(void) {
|
||||
socket_done(confValueGet("mdp.socket", DEFAULT_MDP_SOCKET_NAME));
|
||||
}
|
||||
|
||||
int
|
||||
overlay_mdp_client_done(void) {
|
||||
overlay_mdp_frame mdp;
|
||||
|
||||
|
||||
if (mdp_client_socket != -1) {
|
||||
/* Tell MDP server to release all our bindings */
|
||||
mdp.packetTypeAndFlags=MDP_GOODBYE;
|
||||
|
2
serval.h
2
serval.h
@ -1317,6 +1317,7 @@ int keyring_mapping_request(keyring_file *k,overlay_mdp_frame *req);
|
||||
extern int mdp_client_socket;
|
||||
int overlay_mdp_client_init();
|
||||
int overlay_mdp_client_done();
|
||||
void overlay_mdp_server_done();
|
||||
int overlay_mdp_client_poll(long long timeout_ms);
|
||||
int overlay_mdp_recv(overlay_mdp_frame *mdp,int *ttl);
|
||||
int overlay_mdp_send(overlay_mdp_frame *mdp,int flags,int timeout_ms);
|
||||
@ -1481,6 +1482,7 @@ int app_monitor_cli(int argc, const char *const *argv, struct command_line_optio
|
||||
int monitor_get_fds(struct pollfd *fds,int *fdcount,int fdmax);
|
||||
|
||||
int monitor_setup_sockets();
|
||||
void monitor_cleanup_sockets(void);
|
||||
int monitor_poll();
|
||||
int monitor_get_fds(struct pollfd *fds,int *fdcount,int fdmax);
|
||||
int monitor_call_status(vomp_call_state *call);
|
||||
|
11
server.c
11
server.c
@ -289,13 +289,10 @@ void serverCleanUp()
|
||||
char filename[1024];
|
||||
if (FORM_SERVAL_INSTANCE_PATH(filename, PIDFILE_NAME))
|
||||
unlink(filename);
|
||||
if (mdp_client_socket==-1) {
|
||||
if (FORM_SERVAL_INSTANCE_PATH(filename, "mdp.socket")) {
|
||||
unlink(filename);
|
||||
}
|
||||
} else {
|
||||
overlay_mdp_client_done();
|
||||
}
|
||||
|
||||
overlay_mdp_server_done();
|
||||
overlay_mdp_client_done();
|
||||
monitor_cleanup_sockets();
|
||||
}
|
||||
|
||||
static void signame(char *buf, size_t len, int signal)
|
||||
|
Loading…
x
Reference in New Issue
Block a user