History log of /seL4-camkes-master/projects/musllibc/src/time/__map_file.c
Revision Date Author Comments
# bd275378 23-Sep-2015 Szabolcs Nagy <nsz@port70.net>

avoid reading uninitialized memory in __map_file

The value of *size is not relevant in case of failure, but it's
better not to copy garbage from the stack into it.
(The compiler cannot see through the syscall, so optimization
was not affected by the unspecified value).


# 594c827a 24-May-2014 Rich Felker <dalias@aerifal.cx>

support kernels with no SYS_open syscall, only SYS_openat

open is handled specially because it is used from so many places, in
so many variants (2 or 3 arguments, setting errno or not, and
cancellable or not). trying to do it as a function would not only
increase bloat, but would also risk subtle breakage.

this is the first step towards supporting "new" archs where linux
lacks "old" syscalls.


# 41a9ba25 08-Nov-2013 Rich Felker <dalias@aerifal.cx>

remove O_NOFOLLOW from __map_file used for time zone file loading

it's not clear why I originally wrote O_NOFOLLOW into this; I suspect
the reason was with an aim of making the function more general for
mapping partially or fully untrusted files provided by the user.
however, the timezone code already precludes use of absolute or
relative pathnames in suid/sgid programs, and disallows .. in
pathnames which are relative to one of the system timezone locations,
so there is no threat of opening a symlink which is not trusted by
appropriate user. since some users may wish to put symbolic links in
the zoneinfo directories to alias timezones, it seems preferable to
allow this.


# ac1bf93f 17-Jul-2013 Rich Felker <dalias@aerifal.cx>

fix fd leak in file mapping code used in new zoneinfo support


# 1cc81f5c 17-Jul-2013 Rich Felker <dalias@aerifal.cx>

the big time handling overhaul

this commit has two major user-visible parts: zoneinfo-format time
zones are now supported, and overflow handling is intended to be
complete in the sense that all functions return a correct result if
and only if the result fits in the destination type, and otherwise
return an error. also, some noticable bugs in the way DST detection
and normalization worked have been fixed, and performance may be
better than before, but it has not been tested.