...
According to the C Standard, the following library functions are not required to avoid data races:
rand(),
srand()
getenv()
strtok()
strerror()
asctime(),
ctime()
,localtime()
setlocale()
ATOMIC_VAR_INIT
,atomic_init()
tmpnam()
ctime()
when called with a null pointer argumentmbrtoc16()
,c16rtomb()
,mbrtoc32()
,c32rtomb()
when called with a nullmbstate_t *
Section 2.9.1 of the System Interfaces volume of POSIX.1-2008 has a much longer list of functions that are not required to be thread-safe.
...