[exim-dev] [Bug 477] New: Dovecot authenticator fails on Sol…

Top Page
Delete this message
Reply to this message
Author: bug477
Date:  
To: exim-dev
Subject: [exim-dev] [Bug 477] New: Dovecot authenticator fails on Solaris
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.

http://www.exim.org/bugzilla/show_bug.cgi?id=477

           Summary: Dovecot authenticator fails on Solaris
           Product: Exim
           Version: 4.66
          Platform: Sun
        OS/Version: Solaris
            Status: NEW
          Severity: bug
          Priority: high
         Component: SMTP Authentication
        AssignedTo: ph10@???
        ReportedBy: steve@???
         QAContact: exim-dev@???



Due to the fprintf() call in auth_dovecot_server() never completing (or indeed
flushing to dovecot-auth) under Solaris, the authentication fails to complete.

If write() is used instead the whole process works. I've included a unified
diff below which fixes the problem.

--- dovecot.c.orig      2007-02-27 10:50:55.111005000 +0000
+++ dovecot.c   2007-02-27 17:11:15.041566000 +0000
@@ -231,7 +231,9 @@
                ablock->public_name, auth_extra_data, sender_host_address,
                interface_address, data ? (char *) data : "");


-       fprintf(f, "%s", auth_command);
+       if (write(fileno(f), auth_command, strlen(auth_command)) < 0)
+              HDEBUG(D_auth) debug_printf("error sending auth_command\n");
+
        HDEBUG(D_auth) debug_printf("sent: %s", auth_command);


        while (1) {


--
Configure bugmail: http://www.exim.org/bugzilla/userprefs.cgi?tab=email