]> git.proxmox.com Git - mirror_zfs-debian.git/commit
Replace tempnam() with mkstemp()
authorBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 4 Oct 2012 18:36:52 +0000 (11:36 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 4 Oct 2012 20:19:10 +0000 (13:19 -0700)
commitfacbbe436670b4910475fb937a26468f7178b541
tree56c839ef4d32a358e2760b8c72e83023df8d5bc0
parent483106eb71b1886c824951b3a35d89d47d41405e
Replace tempnam() with mkstemp()

The use of tempnam() is racy and it should be avoided in favor of
mkstemp().  According to the Linux tempnam(3) man page.

  "Although tempnam() generates names that are difficult to guess,
  it is nevertheless possible that between the time that tempnam()
  returns a pathname, and the time that the program opens it, another
  program might create that pathname using open(2), or create it as
  a symbolic link.  This can lead to security holes.  To avoid such
  possibilities, use the open(2) O_EXCL flag to open the  pathname.
  Or better yet, use mkstemp(3) or tmpfile(3)."

This issue was flagged by gcc.

  ztest.o: In function `setup_data_fd': cmd/ztest/ztest.c:5822:
  warning: the use of `tempnam' is dangerous, better use `mkstemp'

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
cmd/ztest/ztest.c