director_connection_ping, conn);
conn->sync_ping = TRUE;
}
+
+void director_connections_deinit(struct director *dir)
+{
+ struct director_connection *conn;
+
+ while (dir->connections != NULL) {
+ conn = dir->connections;
+ dir->connections = conn->next;
+ director_connection_deinit(&conn);
+ }
+}
void director_connection_cork(struct director_connection *conn);
void director_connection_uncork(struct director_connection *conn);
+void director_connections_deinit(struct director *dir);
+
#endif
*_dir = NULL;
- if (dir->left != NULL)
- director_connection_deinit(&dir->left);
- if (dir->right != NULL)
- director_connection_deinit(&dir->right);
-
+ director_connections_deinit(dir);
user_directory_deinit(&dir->users);
mail_hosts_deinit(&dir->mail_hosts);
mail_hosts_deinit(&dir->orig_config_hosts);