On OpenBSD 4.4, I get this compilation error: passfd.c: In function `sendfd': passfd.c:45: error: storage size of `iov' isn't known
The reason is that for 'struct iovec' you need <sys/uio.h>, not only <sys/socket.h> (look in POSIX!). This fixes it: 2011-03-13 Bruno Haible <br...@clisp.org> passfd: Fix compilation error on OpenBSD. * lib/passfd.c: Include <sys/uio.h>. --- lib/passfd.c.orig Sun Mar 13 23:34:19 2011 +++ lib/passfd.c Sun Mar 13 21:30:49 2011 @@ -24,6 +24,7 @@ #include <stdlib.h> #include <string.h> #include <sys/types.h> +#include <sys/uio.h> #include <unistd.h> #include <sys/socket.h> -- In memoriam Odette Sansom <http://en.wikipedia.org/wiki/Odette_Hallowes>