2016-06-09 3 views
2

truncate() 함수에서 struct fuse_file_info* fi을 얻을 수 있습니까? 왜 처음에는 거기에 있지 않습니까?FUSE의 truncate()에서 fuse_file_info를 얻으십시오

int truncate(const char* path, off_t size) 

나는 fuse_file_info 구조, 파일 핸들러, fh 내 파일 기술자를 저장하고있다. 함수 open()이 미리 호출되어 파일에 대한 구조가 만들어집니다. fh에 대한 설명은 다음과 같습니다. "파일 핸들. open()의 파일 시스템으로 채울 수 있습니다. 다른 모든 파일 작업"에서 사용할 수 있습니다.

(최후의 수단으로이 정보를 저장하고 해시 맵에 저장 한 다음 파일 핸들러를 사용하여 키를 저장하는 방법을 생각합니다. 이렇게하면 구조를 검색 할 수 있습니다. path, 각각의 파일 기술자를 찾기 위해)

참고 :. 실제로 jnr-fuse를 사용하고 있지만있어이 libfuse 내가 특별히 부탁 아니에요을 모방하기 때문에; 어떤 사람에게는 일하는 것이 다른 사람에게는 일종의 일이되어야합니다.

+0

[추가 truncate 관련 정보] (https://sourceforge.net/p/fuse/mailman/message/7409252/)는 FUSE 메일 링리스트에 있습니다. – Daniel

답변

2

왜 처음에는 없습니까?

Linux 커널에서 truncate을 구현했기 때문에. 서명은 here입니다.