]> code.citadel.org Git - citadel.git/blobdiff - citadel/citserver.c
* Merge LDAP code; bindings are not yet complete
[citadel.git] / citadel / citserver.c
index 94a5894f3942aaf35a4e17a1f1d5e691bc98be80..f127449d434ffd3f085506d936827993f9a65dec 100644 (file)
@@ -228,6 +228,8 @@ void master_cleanup(int exitcode) {
        
        if (restart_server != 0)
                exit(1);
+       if ((running_as_daemon != 0) && (exitcode == 0))
+               exitcode = CTDLEXIT_SHUTDOWN;
        exit(exitcode);
 }
 
@@ -260,6 +262,12 @@ void RemoveContext (struct CitContext *con)
        CtdlLogPrintf(CTDL_DEBUG, "Closing socket %d\n", con->client_socket);
        close(con->client_socket);
 
+       /* If using AUTHMODE_LDAP, free the DN */
+       if (con->ldap_dn) {
+               free(con->ldap_dn);
+               con->ldap_dn = NULL;
+       }
+
        CtdlLogPrintf(CTDL_DEBUG, "Done with RemoveContext()\n");
 }