summaryrefslogtreecommitdiff
path: root/src/ipcpd
diff options
context:
space:
mode:
authordimitri staessens <[email protected]>2016-07-06 17:13:06 +0200
committerdimitri staessens <[email protected]>2016-07-06 19:18:00 +0200
commit03256707111ce2409de0857c65482512e42d9238 (patch)
treeeccf66deb8f0a8c1d0b610fbedc69142f5886243 /src/ipcpd
parent90c3c96b5c9b1e4db6bb6d1894a21aec54a965b1 (diff)
downloadouroboros-03256707111ce2409de0857c65482512e42d9238.tar.gz
ouroboros-03256707111ce2409de0857c65482512e42d9238.zip
lib: shm_du_map: Clean sdus upon exit
When an application closes the shm_du_map, it will clean all remaining sdu's for that application. Adds a function to clean the shm_du_map on close. Fixes #20.
Diffstat (limited to 'src/ipcpd')
-rw-r--r--src/ipcpd/local/main.c2
-rw-r--r--src/ipcpd/shim-eth-llc/main.c2
-rw-r--r--src/ipcpd/shim-udp/main.c2
3 files changed, 3 insertions, 3 deletions
diff --git a/src/ipcpd/local/main.c b/src/ipcpd/local/main.c
index 4802a161..17327fce 100644
--- a/src/ipcpd/local/main.c
+++ b/src/ipcpd/local/main.c
@@ -141,7 +141,7 @@ void shim_ap_fini()
if (_ap_instance->fds != NULL)
bmp_destroy(_ap_instance->fds);
if (_ap_instance->dum != NULL)
- shm_du_map_close(_ap_instance->dum);
+ shm_du_map_close_on_exit(_ap_instance->dum);
if (_ap_instance->rb != NULL)
shm_ap_rbuff_destroy(_ap_instance->rb);
diff --git a/src/ipcpd/shim-eth-llc/main.c b/src/ipcpd/shim-eth-llc/main.c
index 68e7e933..8f65819f 100644
--- a/src/ipcpd/shim-eth-llc/main.c
+++ b/src/ipcpd/shim-eth-llc/main.c
@@ -176,7 +176,7 @@ void eth_llc_ipcp_data_destroy()
LOG_WARN("Cleaning up while not in shutdown.");
if (shim_data(_ipcp)->dum != NULL)
- shm_du_map_close(shim_data(_ipcp)->dum);
+ shm_du_map_close_on_exit(shim_data(_ipcp)->dum);
if (shim_data(_ipcp)->rb != NULL)
shm_ap_rbuff_destroy(shim_data(_ipcp)->rb);
if (shim_data(_ipcp)->indices != NULL)
diff --git a/src/ipcpd/shim-udp/main.c b/src/ipcpd/shim-udp/main.c
index 9354ec2f..874168ef 100644
--- a/src/ipcpd/shim-udp/main.c
+++ b/src/ipcpd/shim-udp/main.c
@@ -162,7 +162,7 @@ void shim_ap_fini()
if (_ap_instance->fds != NULL)
bmp_destroy(_ap_instance->fds);
if (_ap_instance->dum != NULL)
- shm_du_map_close(_ap_instance->dum);
+ shm_du_map_close_on_exit(_ap_instance->dum);
if (_ap_instance->rb != NULL)
shm_ap_rbuff_destroy(_ap_instance->rb);