Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 08 Jul 2015 23:55:49 +0300
From:      Andriy Gapon <avg@FreeBSD.org>
To:        Garrett Cooper <yaneurabeya@gmail.com>, Doug Rabson <dfr@rabson.org>
Cc:        Jamie Landeg-Jones <jamie@dyslexicfish.net>, FreeBSD Current <freebsd-current@FreeBSD.org>
Subject:   Re: gettimeofday((void *)-1, NULL) implicates core dump on recent FreeBSD 11-CURRENT
Message-ID:  <559D8E55.9050600@FreeBSD.org>
In-Reply-To: <0C541CE5-C322-4273-AE0B-1ACAEACCA096@gmail.com>
References:  <CAPQ4ffuTcN_ytcH7GPY0s6OqWK9qo6MGaVZhOB%2B0ojWfd=fNCg@mail.gmail.com> <201507072241.t67MfsX5085860@hergotha.csail.mit.edu> <94BCDA65-5B86-4329-A312-4CB16E847B69@dons.net.au> <CAPQ4ffuuaiWGUthEhux2VrK6ZyHDT=0xd9z8k8f11N=6shdUng@mail.gmail.com> <201507081616.t68GGcY9047713@dyslexicfish.net> <CACA0VUhFjBhPMTr=QD71jEvis9CMSrnpyu=xFiXu27nLeozGJA@mail.gmail.com> <0C541CE5-C322-4273-AE0B-1ACAEACCA096@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 08/07/2015 22:22, Garrett Cooper wrote:
> On Jul 8, 2015, at 12:17, Doug Rabson <dfr@rabson.org> wrote:
> 
>> As far as I can tell, POSIX doesn't require either EFAULT or any other 
>> behaviour - the text in http://www.open-std.org/jtc1/sc22/open/n4217.pdf 
>> just says, "No errors are defined". Our man page is wrong and any real 
>> program which relies on gettimeofday not faulting when given bad inputs is 
>> broken.
> 
> I would suggest the following: 1. Document behavior in NOTES about
> gettimeofday returning EFAULT with the specific scenarios kib mentioned,
> segfaulting otherwise (wordsmithing the actual info of course). Otherwise, it
> might confuse people who look at the manpage later. 2. I’ll add a `#ifdef
> __FreeBSD__` to the testcase which will then skip it, because it’s easier to
> do that then test undefined behavior that only makes sense on NetBSD.

I am not suggesting this but if our man pages used all capitals to signify
important auxiliary verbs then the ERRORS sections would read as
	The following error codes MAY be set in errno:
Perhaps in that case it would be more clear how 'MAY' differs from 'SHOULD' and
'MUST'.
Of course, the manual pages seem to be too sloppy in this respect.

Reference: https://www.ietf.org/rfc/rfc2119.txt

-- 
Andriy Gapon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?559D8E55.9050600>