So it's either
NUL username NUL password
or
username NUL username NUL password
It's username then password.
Wonder if it has to do with a single process doing multiple lookups. That's the main difference compared to SSH and pretty much everything else.
I upgraded the server again today to the latest and greatest snapshot of both OpenBSD and the packages, with no change in behavior.
This is crippling me... This morning, I wasn't able to authenticate at *all* to my email, via either Squirrelmail or via IMAPS (my Droid smartphone). After rebooting the system, it worked again while randomly failing.
Should I try the straight dovecot package instead of the postgresql flavor? I'm not *using* PostgreSQL to authenticate, but it could cause an issue I guess...
One more thing - I ktraced the dovecot processes, and caught the failure:
24165 dovecot-auth CALL lstat(0xcfbbff58,0xcfbbfd00) 24165 dovecot-auth NAMI "/usr/libexec/auth/login_passwd" 24165 dovecot-auth RET lstat 0 24165 dovecot-auth CALL socketpair(0x1,0x1,0,0xcfbbfeec) 24165 dovecot-auth RET socketpair 0 24165 dovecot-auth CALL fork() 24165 dovecot-auth RET fork 22689/0x58a1 24165 dovecot-auth CALL close(0xe) 24165 dovecot-auth RET close 0 24165 dovecot-auth CALL write(0xd,0x8357d0fc,0x1) 24165 dovecot-auth GIO fd 13 wrote 1 bytes "\0" 24165 dovecot-auth RET write 1 24165 dovecot-auth CALL write(0xd,0x860dc66c,0x9) 24165 dovecot-auth GIO fd 13 wrote 9 bytes "OBSCURED\0" 24165 dovecot-auth RET write 9 24165 dovecot-auth CALL read(0xd,0x8550e034,0x2000) 24165 dovecot-auth PSIG SIGCHLD caught handler=0x1c02a8f0 mask=0x0 24165 dovecot-auth RET read -1 errno 4 Interrupted system call 24165 dovecot-auth CALL write(0x8,0xcfbbfa77,0x1) 24165 dovecot-auth GIO fd 8 wrote 1 bytes "\0"
Does that help at all?
Thank you so much!
Benny
-- "Something's going on in this house - last night, I saw a face!" "Did it have a nose?" "Yes!" "That sounds like a face all right." -- Scary Movie 4