Я работаю над проектом linux C, и у меня возникают проблемы при работе с файловыми дескрипторами.
У меня есть дескриптор потерянного файла (файл был открыт () и затем unlink (), но fd все еще работает), который имеет разрешение только на запись. Исходный файл поддержки имел полные права (создан с помощью S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH), но, увы, файл был открыт с помощью O_WRONLY. Возможно ли дублировать дескриптор файла и изменить копию на O_RDWR?
псевдокод:
//open orphan file
int fd = open(fname, O_WRONLY, ...)
unlink(fname)
//fd is still good, but I can't read from it
//...
//I want to be able to read from orphan file
int fd2 = dup(fd)
//----change fd2 to read/write???----
Заранее спасибо!
-Эндрю