#include "control.h"
#include "tools.h"
#include "euidindex.h"
+#include "serv_network.h"
#ifndef HAVE_SNPRINTF
#include "snprintf.h"
lprintf(CTDL_INFO, "Closing databases\n");
close_databases();
+ /* flush the networker stuff */
+ destroy_network_queue_room();
+
/* Do system-dependent stuff */
sysdep_master_cleanup();
-
+
#ifdef DEBUG_MEMORY_LEAKS
dump_heap();
#endif
end_critical_section(S_RPLIST);
}
+void destroy_network_queue_room(void)
+{
+ struct RoomProcList *cur, *p;
+
+ cur = rplist;
+ begin_critical_section(S_RPLIST);
+ while (cur != NULL)
+ {
+ p = cur->next;
+ free (cur);
+ cur = p;
+ }
+ rplist = NULL;
+ end_critical_section(S_RPLIST);
+}
+
/*
* Learn topology from path fields
extern struct FilterList *filterlist;
void network_queue_room(struct ctdlroom *, void *);
+void destroy_network_queue_room(void);