Cyrus imapd 2.3.7 mupdate - getaddrinfo: service not supported
for ai_socktype
Phil Pennock
info-cyrus-spodhuis at spodhuis.org
Fri Nov 3 10:09:01 EST 2006
On 2006-11-03 at 06:14 -0800, Mark wrote:
> I'm in the process of setting up Cyrus imapd 2.3.7 on OpenBSD 4.0
> server.
> This is a back end server, to be part of 2.2.12 murder setup already in
> place. master starts fine, then when it executes ctl_mboxlist -m it
> failes with this error in syslog:
> Nov 3 03:00:26 testimap ctl_mboxlist[90]: getaddrinfo(192.168.20.8)
> failed: service not supported for ai_socktype
>
> Version 2.2.12 works fine and connect to murder master without errors.
On the same system?
> Does anyone have any ideas what might be happening?
That error message is a complaint that the service (port) name can't be
mapped, so getaddrinfo() is returning EAI_SERVICE.
Are you sure that "imap" is listed in /etc/services as a tcp service?
Checking the OpenBSD source for 4.0, <URL:http://www.openbsd.org/cgi-bin/
cvsweb/src/lib/libc/net/getaddrinfo.c?rev=1.56&content-type=text/
x-cvsweb-markup>, there are four places which can return EAI_SERVICE.
The first three don't apply, since imapd isn't asking for a raw socket
and isn't specifying a number (and even if it were it's SOCK_STREAM so
numbers are allowed). That just leaves a failure of getservbyname().
getservbyname() does no fancy stuff, it just asks for the various
services, looping through them all until it finds the right item.
AFAIK, OpenBSD doesn't support nsswitch; I could be wrong. So there's
just a file lookup.
So it looks like an /etc/services issue. OpenBSD's services includes
imap by default; has it been removed?
Regards,
-Phil
More information about the Info-cyrus
mailing list