On Wed, Aug 17, 2005 at 02:55:07AM +0400, Dmitry V. Levin wrote: > > Есть ещё tmpfile(3) из stdio. Надеюсь, он использует mkstemp(3). :) > Да, tmpfile(3) удаляет созданный файл сразу, и возвращает дескриптор на > файл, имени которому уже нет. Если кто-то не переименовал его между > open(2) и unlink(2). :) Нужно возвращать дескриптор *только* если сработал unlink. Тогда не будет смысла переименовывать, потому что до данных таким образом всё равно не добраться.