X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Ftime_r.h;h=ba8b0706b45d035cefd3cd9e2c38281f2714e485;hb=93d45a6cea3e8c0959a430e0b3f5ae24fc600399;hp=f8d5d529312b8c970708010ca610daec7f1a5888;hpb=267a39bafd249d7eb9c37df06dc6defcf41cb343;p=gnulib.git diff --git a/lib/time_r.h b/lib/time_r.h index f8d5d5293..ba8b0706b 100644 --- a/lib/time_r.h +++ b/lib/time_r.h @@ -1,6 +1,6 @@ /* Reentrant time functions like localtime_r. - Copyright (C) 2003 Free Software Foundation, Inc. + Copyright (C) 2003, 2005, 2006 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -27,19 +27,25 @@ #include #if !HAVE_TIME_R_POSIX -# undef asctime_r -# undef ctime_r + +/* Don't bother with asctime_r and ctime_r, since these functions are + not safe (like asctime and ctime, they can overrun their 26-byte + output buffers when given outlandish struct tm values), and we + don't want to encourage applications to use unsafe functions. Use + strftime or even sprintf instead. */ + # undef gmtime_r # undef localtime_r -# define asctime_r rpl_asctime_r -# define ctime_r rpl_ctime_r # define gmtime_r rpl_gmtime_r # define localtime_r rpl_localtime_r -char *asctime_r (struct tm const * restrict, char * restrict); -char *ctime_r (time_t const *, char *); +/* See the POSIX:2001 specification + . */ struct tm *gmtime_r (time_t const * restrict, struct tm * restrict); + +/* See the POSIX:2001 specification + . */ struct tm *localtime_r (time_t const * restrict, struct tm * restrict); #endif