Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Feb 2004 16:40:02 +0100
From:      Andre Oppermann <andre@freebsd.org>
To:        David Schultz <das@FreeBSD.ORG>
Cc:        freebsd-standards@FreeBSD.ORG
Subject:   Re: writev(2) and IOV_MAX confusion
Message-ID:  <4030E452.FFD6A59E@freebsd.org>
References:  <40309723.5020808@freebsd.org> <20040216103254.GA7779@VARK.homeunix.com>

next in thread | previous in thread | raw e-mail | index | archive | help
David Schultz wrote:
> 
> On Mon, Feb 16, 2004, Andre Oppermann wrote:
> > The is a big confusion over the correct definition of IOV_MAX in relation
> > to writev(2).  The man page for write(2)/writev(2) says you only have to
> > include <sys/uio.h> to get everything.  Unfortunatly IOV_MAX is not (no
> > longer?) defined there but in <sys/syslimits.h>.  Both Net- and OpenBSD
> > still define it in <sys/uio.h> but NetBSD only for compatibility.  For
> > them the correct place seems to be <sys/syslimits.h> too but only when
> > _XOPEN_SOURCE is defined.
> >
> > What is the correct place for IOV_MAX?  And what has to be adjusted, the
> > man page or the .h files?
> 
> In POSIX, you get IOV_MAX only by including <limits.h>, and
> FreeBSD's <limits.h> includes <sys/syslimits.h>, so the code is
> correct here.  As far as I can tell, the man page doesn't say
> anything about what you have to include to get IOV_MAX, but I
> suppose it could be more clear.

Yes, the write(2) man page is missing any reference to <limits.h>.
I'd say the man page should mention that.

-- 
Andre



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4030E452.FFD6A59E>