use result. And if it fails, have the error message report
the directory where the failed temporary file creation occurred.
And, removed all chmod()'s of temporary files created by mktemp()/
mktemp2() because they set the umask to 077 before calling mkstemp(3).