[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#517319: ocamlnet: fails to build from source with glibc 2.8



Source: ocamlnet
Version: 2.2.9-5
Severity: minor

ocamlnet fails to build from source with glibc 2.8 and 2.9.  I
unfortunately don't have my build log with me, but I remember that it
was similar to that in Gentoo bug <http://bugs.gentoo.org/227653>. The
problem is that glibc hides struct ucred unless _GNU_SOURCE is defined
but does not hide SO_PEERCRED.  Thus in src/rpc-auth-local/rpclocal.c
	...
	#include <sys/socket.h>
	...

	#ifdef SO_PEERCRED
		/* Linux */
		{
			socklen_t len;
			struct ucred credentials;
	...
it has cause to complain.  Arguably this is a glibc bug (it should be
hiding SO_PEERCRED so that code like yours doesn't break), but even if
glibc gets fixed, it would mean ocamlnet would not be making use of
this useful function.

I would suggest #defining _GNU_SOURCE at the top of rpclocal.c (or in
some Makefile somewhere).



Reply to: