bin/71616: [PATCH] cleanup of the usr.sbin/yp_mkdb code
brooks at one-eyed-alien.net
Sun Sep 12 16:40:15 PDT 2004
On Sun, Sep 12, 2004 at 08:10:55PM +0000, Giorgos Keramidas wrote:
> The following reply was made to PR bin/71616; it has been noted by GNATS.
> From: Giorgos Keramidas <keramida at freebsd.org>
> To: Dan Lukes <dan at obluda.cz>
> Cc: bug-followup at freebsd.org
> Subject: Re: bin/71616: [PATCH] cleanup of the usr.sbin/yp_mkdb code
> Date: Sun, 12 Sep 2004 21:23:45 +0300
> On 2004-09-12 04:37, Dan Lukes <dan at obluda.cz> wrote:
> > *** usr.sbin/yp_mkdb/yp_mkdb.c.ORIG Sun Sep 5 18:54:07 2004
> > --- usr.sbin/yp_mkdb/yp_mkdb.c Sun Sep 5 19:01:20 2004
> > [...]
> > - snprintf(buf, sizeof(buf), "%lu", time(NULL));
> > + snprintf(buf, sizeof(buf), "%lu", (long unsigned int)time(NULL));
> Just a minor comment: An (unsigned long) cast should be fine here.
> There's no need to add `int' and the ordering of long unsigned seems a bit
> backwards -- most of the time I've seen it written with `unsigned' first.
Using unsigned here is actually bogus. time_t is a signed type
in FreeBSD. SUSv3 says "time_t and clock_t shall be integer or
real-floating types." In FreeBSD a cast an integer type is safe.
Either long or intmax_t are decent choices today. I'd generally prefer
intmax_t since that avoids the 2038 bug. We probably will take time_t
to 64-bits on all platforms at some time in the future so avoiding the
use of longs will save us pain then.
Any statement of the form "X is the one, true Y" is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 189 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-bugs/attachments/20040912/45b2e4f0/attachment.bin
More information about the freebsd-bugs