[syslog-ng]2.4.20 & dgram

Balazs Scheidler bazsi@balabit.hu
Thu, 5 Dec 2002 09:28:37 +0100


On Wed, Dec 04, 2002 at 10:49:42PM +0100, Rain@home.ro wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> i've been messing around with syslog-ng for some time and i've
> recently upgraded to the 2.4.20 kernel as soon as it appeared in fact...
> it ran without any problem on 2.4.18/2.4.19. on the new kernel however it
> bails out with an unrecognised socket error from io.c... i've managed to
> make it work though by changing from unix-dgram to unix-stream in
> syslog-ng.conf. in case somebody has the same problems and syslog-ng bails
> out with:
> 
> 	io.c: sockaddr2info(): Unsupported address family 63472.
> 
> or something similar on the 2.4.20, i suggest the above mentioned
> "workaround" (change to unix-stream("/dev/log"))...
> 
> if this is wrong, or somebody can explain to me.. why unix-dgram doesn't
> work... i'd be pleased to know :)

this is a kernel bug. I've already reported and also sent a patch to the
kernel maintainers. They said it would be included in 2.4.21

For a reference here's the patch:

--- socket.c.old        Tue Nov  5 18:48:22 2002
+++ socket.c    Tue Nov  5 18:49:34 2002
@@ -1262,7 +1262,7 @@
                flags |= MSG_DONTWAIT;
        err=sock_recvmsg(sock, &msg, size, flags);

-       if(err >= 0 && addr != NULL && msg.msg_namelen)
+       if(err >= 0 && addr != NULL)
        {
                err2=move_addr_to_user(address, msg.msg_namelen, addr, addr_len);
                if(err2<0)


-- 
Bazsi
PGP info: KeyID 9AF8D0A9 Fingerprint CD27 CFB0 802C 0944 9CFD 804E C82C 8EB1