use mktmpname(), not tmpnam().