LINUX.ORG.RU
А причём здесь C++?
Вообще, вместо tempnam нужно использовать mkstemp.

Вот отрывок из man tempnam:

BUGS
The precise meaning of `appropriate' is undefined;  it  is  unspecified how  accessibility  of a directory is determined.  Never use this 
function. Use mkstemp(3) instead.
anonymous
()
Ответ на: комментарий от anonymous
Мне нужно получать имя временного файла, а не дескриптор. Поэтому mkstemp мне не подходит.
anonymous
()
Ответ на: комментарий от anonymous
Это insecure. Появляется time window между получением имени временного файла и его открытием. Так что нужно использовать mkstemp, а затем привязывать файловый дескриптор к fstream, если необходимо.
anonymous
()
Ответ на: комментарий от anonymous
Следовательно не существует аналогичной замены для tempnam, так? Или каким-то фигом можно получить имя по дескриптору?
anonymous
()
Ответ на: комментарий от anonymous
Выдержка из man

RETURN VALUE

The mkstemp() fuction returns the file descriptor fd of the temporary file of -1 on error.

Нет тут упоминания на возвращение имени файла.

anonymous
()
Ответ на: комментарий от anonymous
Читайте внимательнее:

DESCRIPTION
The mkstemp() function generates a unique temporary file name from
template.  The last six characters of template must be  XXXXXX  and  these are  replaced with a string that makes the filename unique.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.