Mercurial > hg > octave-jordi > gnulib-hg
view lib/secure_getenv.c @ 18065:fd4663ad7454
time_rz: port to Solaris etc.
Works around a tzname problem on platforms like Solaris that have
tzname but not tm_zone, by setting tzname at the appropriate time
and restoring it later.
* lib/time_rz.c (tzname_address, tzname_value) [HAVE_TZNAME]:
New static vars.
(save_abbr) [HAVE_TZNAME]: Set them.
(revert_tz) [HAVE_TZNAME]: Clear or use them.
(restore_tzname): New function.
(localtime_rz, mktime_z): Use it.
author | Paul Eggert <eggert@cs.ucla.edu> |
---|---|
date | Sat, 25 Jul 2015 15:20:10 -0700 (2015-07-25) |
parents | ab58d4870664 |
children |
line wrap: on
line source
/* Look up an environment variable more securely. Copyright 2013-2015 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ #include <config.h> #include <stdlib.h> #if !HAVE___SECURE_GETENV # if HAVE_ISSETUGID # include <unistd.h> # else # undef issetugid # define issetugid() 1 # endif #endif char * secure_getenv (char const *name) { #if HAVE___SECURE_GETENV return __secure_getenv (name); #else if (issetugid ()) return 0; return getenv (name); #endif }