- Удаление файла имея только его дескриптор, int_0d, 12:15 , 18-Авг-06 (1)
- Удаление файла имея только его дескриптор, apr2504, 13:27 , 18-Авг-06 (2)
>man unlink? #include <unistd.h> int unlink(const char *pathname); У меня есть только открытый дескриптор файла!!!
- Удаление файла имея только его дескриптор, int_0d, 13:37 , 18-Авг-06 (3)
- Удаление файла имея только его дескриптор, EL, 15:47 , 18-Авг-06 (4)
- Удаление файла имея только его дескриптор, BsDr, 16:27 , 18-Авг-06 (5)
- Удаление файла имея только его дескриптор, Forth, 16:34 , 18-Авг-06 (6)
- Удаление файла имея только его дескриптор, apr2504, 17:02 , 18-Авг-06 (7)
>1. Я не знаю получится или нет, ну вообщем вот! если есть >дискриптор то можно попробовать так: man fstat, функция запишет структуру(struct stat >*buf) может в ней и будет путь и имя файла, просто >для меня не понятны названия этих полей! Затем unlink()! > >2. Можно вначале открыть файл fopen(), в структуре FILE есть поле >в котором содержится путь файла! Затем unlink()! > >Второй вариант точно будет работать! Собственно проблема-то возникла из-за того, что программа открывает файл, потом делает chroot до конца работы. А файл-то она удалить уже не сможет! Я вот думал может получить дескриптор каталога командой opendir(), но там в структуре удалить не удастся файл.
|