Hello,

I'm using libnetfs to create a directory of files, and these files return customized port when file_name_lookup() is called on it, so I override netfs_make_protid(), which creates the port I want.
Everything works fine except that 'ls -l' cannot work any more.

'ls -l' needs to call readdir() and stat().
As my understanding, stat() should get the port to the file by calling file_name_lookup() and call io_stat RPC to get the information of the file.
It can explain why 'ls -l' doesn't work.
But what confuses me is:
my translator creates another thread where netfs_io_server() is called to handle the request from the customized port, however, I didn't see any request goes to netfs_io_server() and netfs_S_io_stat() isn't still called.

I tried to read the implementation of stat() in glibc, but I couldn't find the version for Hurd and didn't see any place where io_stat() is called:-(

Any ideas?

Thank you in advance.
Zheng Da



Reply via email to