Workaround for freopen() on OS/2 kLIBC

On OS/2 kLIBC, freopen() returns NULL even if it is successful if
filename is NULL.

* lib/freopen-safer.c (klibc_freopen): New.
* lib/freopen.c (orig_freopen): Workaround.
* lib/xfreopen.c (xfreopen): Remove kLIBC guard.