Hello,

I wanted to upgrade my email server, so I decided to install Bookworm (current debian testing) on a new machine.

postfix, postgresql auth, virtual users, courier imapd.
ii courier-authdaemon 0.71.4-1+b1 amd64 Courier authentication daemon ii courier-authlib 0.71.4-1+b1 amd64 Courier authentication library ii courier-authlib-postgresql 0.71.4-1+b1 amd64 PostgreSQL support for the Courier authentication library ii courier-authlib-userdb 0.71.4-1+b1 amd64 userdb support for the Courier authentication library ii courier-base 1.0.16-3+b5 amd64 Courier mail server - base system ii courier-imap 5.0.13+1.0.16-3+b5 amd64 Courier mail server - IMAP server ii libcourier-unicode4:amd64 2.1.2-2+b1 amd64 Courier Unicode library (shared runtime library)

ii gamin 0.1.10-6 amd64 File and directory monitoring system ii libgamin0 0.1.10-6 amd64 Client library for the gamin file and directory monitoring system

It doesn't work.

I got a message from thunderbird:
(set debug, cut&paste from imaplog.dat

WRITE: * OK [ALERT] Filesystem notification initialization error -- contact your mail administrator (check for configuration errors with the FAM/Gamin library)

This bug has a long history in debian bugtrack, suggest to install fam, but there is no fam in debian testing.

/var/log/mail.log:

imapd: Failed to connect to socket /tmp/fam--

I started to investigate about this socket name, mainly the two dash on it's end. I downloaded and extracted gamin source, and found this in server/gam_channel.c:

#ifdef HAVE_ABSTRACT_SOCKETS
    ret = g_strconcat("/tmp/fam-", user, "-", gam_client_id, NULL);
#else

So it needs the username. I've gave it a try and added a regular user along the virtual one (same username, same uid and gid) and it staarted to work.

Then I removed the regular user and readded with some random character appended, same uid, same gid, and it works also. I've checked with lsof that the gam_server libexeced process uses the username from the /etc/passwd.

lsof:

gam_serve 10851 usernameiiii 8u unix 0x000000009286ce 0t0 90092 @/tmp/fam-usernameiiii-@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ type=STREAM (CONNECTED) gam_serve 10851 usernameiiii 9u unix 0x000000007a8182 0t0 90095 @/tmp/fam-usernameiiii-@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ type=STREAM (CONNECTED)

If I delete the regular user again, then:
gam_serve 10966 20042 5u unix 0x000000009422bc0f 0t0 95756 @/tmp/fam-somebody-@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ type=STREAM (LISTEN)

the gam_serve opens the socket as somebody, the imapd checks as a null string.

I don't know, if this is a problem, or my fault.

Thank you for any help.

Robert


_______________________________________________
Courier-imap mailing list
Courier-imap@lists.sourceforge.net
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-imap

Reply via email to