Close the socket used by the dovecot authenticator. Fixes: #667
authorNigel Metheringham <nigel@exim.org>
Wed, 6 Feb 2008 12:44:58 +0000 (12:44 +0000)
committerNigel Metheringham <nigel@exim.org>
Wed, 6 Feb 2008 12:44:58 +0000 (12:44 +0000)
doc/doc-txt/ChangeLog
src/src/auths/dovecot.c

index 93a0c834716e8dc84a8da71f269613f83e577f45..df6e7470a88a24668fa7f9f7680ae247fc08f03b 100644 (file)
@@ -1,4 +1,4 @@
-$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.541 2008/01/30 20:09:23 nm4 Exp $
+$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.542 2008/02/06 12:44:58 nm4 Exp $
 
 Change log file for Exim from version 4.21
 -------------------------------------------
 
 Change log file for Exim from version 4.21
 -------------------------------------------
@@ -22,6 +22,8 @@ TF/02 Bugzilla 662: Fix stack corruption before exec() in daemon.c.
 NM/03 Bugzilla 602: exicyclog now handles panic log, and creates empty
       log files in place.  Contributed by Roberto Lima
 
 NM/03 Bugzilla 602: exicyclog now handles panic log, and creates empty
       log files in place.  Contributed by Roberto Lima
 
+NM/04 Bugzilla 667: close socket used by dovecot authenticator
+
 
 Exim version 4.69
 -----------------
 
 Exim version 4.69
 -----------------
index a260109fbbe699b35fc83332cacfa19f9e3fdfed..adc466ab6d903bf4edc17a6d0822135f499e14b1 100644 (file)
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/src/src/auths/dovecot.c,v 1.8 2008/01/18 12:23:26 nm4 Exp $ */
+/* $Cambridge: exim/src/src/auths/dovecot.c,v 1.9 2008/02/06 12:44:59 nm4 Exp $ */
 
 /*
  * Copyright (c) 2004 Andrey Panin <pazke@donpac.ru>
 
 /*
  * Copyright (c) 2004 Andrey Panin <pazke@donpac.ru>
@@ -369,6 +369,9 @@ int auth_dovecot_server(auth_instance *ablock, uschar *data)
        }
 
 out:
        }
 
 out:
+       /* close the socket used by dovecot */
+       if (fd >= 0)
+              close(fd);
 
        /* Expand server_condition as an authorization check */
        return (ret == OK)? auth_check_serv_cond(ablock) : ret;
 
        /* Expand server_condition as an authorization check */
        return (ret == OK)? auth_check_serv_cond(ablock) : ret;