+void CtdlDestroyServiceHook(void)
+{
+ struct ServiceFunctionHook *cur, *p;
+
+ cur = ServiceHookTable;
+ while (cur != NULL)
+ {
+ close(cur->msock);
+ if (cur->sockpath) {
+ lprintf(CTDL_INFO, "Closed UNIX domain socket %s\n",
+ cur->sockpath);
+ } else if (cur->tcp_port) {
+ lprintf(CTDL_INFO, "Closed TCP port %d\n", cur->tcp_port);
+ } else {
+ lprintf(CTDL_INFO, "Unregistered unknown service\n");
+ }
+ p = cur->next;
+ free(cur);
+ cur = p;
+ }
+ ServiceHookTable = NULL;
+}
+