aboutsummaryrefslogtreecommitdiff
path: root/misc/lsetxattr.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2018-11-15 22:59:33 +0100
committerAlbert ARIBAUD (3ADEV) <albert.aribaud@3adev.fr>2018-11-15 22:59:33 +0100
commit86aece3bfbd44538ba4fdc947872c81d4c5e6e61 (patch)
tree1bf096dc1c3f3f671a48f2b8f8ef28ddf50c21d7 /misc/lsetxattr.c
parentf6b3331bbae638d1bb50813fceb429d3b3dc0eb9 (diff)
downloadglibc-86aece3bfbd44538ba4fdc947872c81d4c5e6e61.zip
glibc-86aece3bfbd44538ba4fdc947872c81d4c5e6e61.tar.gz
glibc-86aece3bfbd44538ba4fdc947872c81d4c5e6e61.tar.bz2
mktime: fix non-EOVERFLOW errno handling
[BZ#23789] mktime was not properly reporting failures when the underlying localtime_r fails with errno != EOVERFLOW; it incorrectly treated them like EOVERFLOW failures, and set errno to EOVERFLOW. The problem could happen on non-glibc platforms, with Gnulib. * time/mktime.c (guess_time_tm): Remove, replacing with ... (tm_diff): ... this simpler function, which does not change errno. All callers changed to deal with errno themselves. (ranged_convert, __mktime_internal): Return failure immediately if the underlying function reports any failure other than EOVERFLOW. (__mktime_internal): Set errno to EOVERFLOW if the spring-forward gap code fails.
Diffstat (limited to 'misc/lsetxattr.c')
0 files changed, 0 insertions, 0 deletions