strerror is not threadsafe, replace with fr_syserror

fr_syserror uses TLS to create a thread local buffer, and calls strerror_r to write out the value.