mirror of
https://github.com/servalproject/serval-dna.git
synced 2025-02-14 14:42:29 +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;
|
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)
|
int monitor_get_fds(struct pollfd *fds,int *fdcount,int fdmax)
|
||||||
{
|
{
|
||||||
/* Make sure sockets are open */
|
/* Make sure sockets are open */
|
||||||
|
@ -1175,6 +1175,11 @@ int overlay_mdp_client_init()
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
overlay_mdp_server_done(void) {
|
||||||
|
socket_done(confValueGet("mdp.socket", DEFAULT_MDP_SOCKET_NAME));
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
overlay_mdp_client_done(void) {
|
overlay_mdp_client_done(void) {
|
||||||
overlay_mdp_frame mdp;
|
overlay_mdp_frame mdp;
|
||||||
|
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;
|
extern int mdp_client_socket;
|
||||||
int overlay_mdp_client_init();
|
int overlay_mdp_client_init();
|
||||||
int overlay_mdp_client_done();
|
int overlay_mdp_client_done();
|
||||||
|
void overlay_mdp_server_done();
|
||||||
int overlay_mdp_client_poll(long long timeout_ms);
|
int overlay_mdp_client_poll(long long timeout_ms);
|
||||||
int overlay_mdp_recv(overlay_mdp_frame *mdp,int *ttl);
|
int overlay_mdp_recv(overlay_mdp_frame *mdp,int *ttl);
|
||||||
int overlay_mdp_send(overlay_mdp_frame *mdp,int flags,int timeout_ms);
|
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_get_fds(struct pollfd *fds,int *fdcount,int fdmax);
|
||||||
|
|
||||||
int monitor_setup_sockets();
|
int monitor_setup_sockets();
|
||||||
|
void monitor_cleanup_sockets(void);
|
||||||
int monitor_poll();
|
int monitor_poll();
|
||||||
int monitor_get_fds(struct pollfd *fds,int *fdcount,int fdmax);
|
int monitor_get_fds(struct pollfd *fds,int *fdcount,int fdmax);
|
||||||
int monitor_call_status(vomp_call_state *call);
|
int monitor_call_status(vomp_call_state *call);
|
||||||
|
11
server.c
11
server.c
@ -289,13 +289,10 @@ void serverCleanUp()
|
|||||||
char filename[1024];
|
char filename[1024];
|
||||||
if (FORM_SERVAL_INSTANCE_PATH(filename, PIDFILE_NAME))
|
if (FORM_SERVAL_INSTANCE_PATH(filename, PIDFILE_NAME))
|
||||||
unlink(filename);
|
unlink(filename);
|
||||||
if (mdp_client_socket==-1) {
|
|
||||||
if (FORM_SERVAL_INSTANCE_PATH(filename, "mdp.socket")) {
|
overlay_mdp_server_done();
|
||||||
unlink(filename);
|
overlay_mdp_client_done();
|
||||||
}
|
monitor_cleanup_sockets();
|
||||||
} else {
|
|
||||||
overlay_mdp_client_done();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void signame(char *buf, size_t len, int signal)
|
static void signame(char *buf, size_t len, int signal)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user