매뉴얼 페이지에는 openat(2)
에 비해 많은 장점이 설명되어 있지만 open(2)
단점은 전혀 다루지 않는 것 같습니다.
C에서 경로를 수동으로 연결하는 것은 어려울 수 있으므로(불행히도 POSIX의 일부가 아닌 대부분의 할당 논리를 원하지 않거나 오프로드할 수 없다고 가정할 때 asprintf(3)
), 이에 대한 파일 설명자를 구할 생각입니다. 기본 디렉토리를 만들고 이를 사용하여 이 디렉토리와 관련된 파일에 액세스합니다 openat(2)
.
이 접근 방식에 단점이 있나요?
답변1
한 가지 단점이 있습니다. openat
이 방법을 사용하려면 추가 파일 설명자가 필요합니다.
내가 아는 한 이것이 유일한 것입니다(제 생각에는 사소한 것입니다).