Если вам посчастливилось использовать Mac OS X, вы можете использовать следующий код:
#define _DARWIN_C_SOURCE
#include <sys/fcntl.h>
.
.
.
char pathbuf[PATH_MAX];
if (fcntl(fd, F_GETPATH, pathbuf) >= 0) {
// pathbuf now contains *a* path to the open file descriptor
}
Обратите внимание, что возвращаемый вами путь не обязательно используется для открытия файла ... Если есть жесткие ссылки, особенно, возвращаемый путь будет a допустимый путь к файлу .