The issue is caused by lack of getTimeStampName declaration in xmotd.c. The
implicit declaration assumed instead causes the pointer to buf to be cast
to an int, in turn causing some truncation of bits which are non-zero in
this case of a static buffer placed in a far location in address space
(probably in some special section when hardening is used). utime() detects
this and returns EFAULT.

The build log shows plenty of warnings, some of which might have a similar
effect.

Reply via email to