From 82c6b3ed73b01321141488c634c9c1c4d515b04b Mon Sep 17 00:00:00 2001 From: dimitri staessens Date: Mon, 22 Aug 2016 16:13:57 +0200 Subject: irmd, ipcp: Unlink file for UNIX sockets --- src/ipcpd/ipcp.c | 6 ++++++ src/irmd/main.c | 3 +++ 2 files changed, 9 insertions(+) diff --git a/src/ipcpd/ipcp.c b/src/ipcpd/ipcp.c index 4f3e6799..1c4fab94 100644 --- a/src/ipcpd/ipcp.c +++ b/src/ipcpd/ipcp.c @@ -103,7 +103,13 @@ int ipcp_parse_arg(int argc, char * argv[]) static void close_ptr(void * o) { + char * name = ipcp_sock_path(getpid()); close(*((int *) o)); + + if (unlink(name)) + LOG_DBG("Could not unlink %s.", name); + + free(name); } static void clean_msg(void * msg) diff --git a/src/irmd/main.c b/src/irmd/main.c index 06cf0e07..df93c75a 100644 --- a/src/irmd/main.c +++ b/src/irmd/main.c @@ -1595,6 +1595,9 @@ static void irm_destroy() close(irmd->sockfd); + if (unlink(IRM_SOCK_PATH)) + LOG_DBG("Failed to unlink %s.", IRM_SOCK_PATH); + pthread_rwlock_unlock(&irmd->state_lock); pthread_rwlock_destroy(&irmd->reg_lock); -- cgit v1.2.3