Ok, I have some more information.
Now it actually seems like there is a READDIR callback made, but I
also saw that the initial GETATTR when 'cd' was made
also resulted in a GETXATTR operation, do I need to implement that
for OS X ?
Also, something that is never called on Linux is the STATFS operation,
is that also mandatory ?
unique: 1, opcode: GETXATTR (22), nodeid: 1, insize: 77
unique: 1, error: -78 (Function not implemented), outsize: 16
This is the log from doing 'inside' the root folder "/".
Does the struct stat make sense? I think it looks ok, but I am not
sure. It looks different on Linux
when it comes to st_size and st_blocks.
unique: 0, opcode: GETATTR (3), nodeid: 1, insize: 40
struct stat {
st_dev = 234881026
st_mode = 40755 (octal)
st_nlink = 4
st_ino = 5467126
st_uid = 502
st_gid = 20
st_rdev = 0
st_size = 136
st_blocks = 0
st_blksize = 4096
st_gen = 0
}
unique: 0, error: 0 (Unknown error: 0), outsize: 128
unique: 3, opcode: OPENDIR (27), nodeid: 1, insize: 48
unique: 3, error: 0 (Unknown error: 0), outsize: 32
unique: 4, opcode: STATFS (17), nodeid: 1, insize: 40
unique: 4, error: 0 (Unknown error: 0), outsize: 96
unique: 2, opcode: READDIR (28), nodeid: 1, insize: 64
unique: 2, error: 0 (Unknown error: 0), outsize: 120
unique: 1, opcode: READDIR (28), nodeid: 1, insize: 64
unique: 1, error: 0 (Unknown error: 0), outsize: 16
unique: 0, opcode: RELEASEDIR (29), nodeid: 1, insize: 64
unique: 0, error: 0 (Unknown error: 0), outsize: 16
On Apr 29, 1:52 pm, hasse69 <[email protected]> wrote:
> On Apr 29, 1:23 pm, Erik Larsson <[email protected]> wrote:
>
>
>
> > AFAIK, 32-bit inode numbers are fine. You only really need 64-bit ones
> > if you intend to support >2^32 file system entries.
>
> Ok. I assume then that FUSE takes care of the translation from 64 to
> 32 bit inodes.
> I just saw that LFS support in Linux automatically takes in file
> serial numbers of 64-bit.
> That is why I never had to think about this before.
>
> > > The getattr() returns 0 in case of a successful stat(2) call on "/"
> > > which I have no reason to suspect does not succeed. At least the log I
> > > have does not indicate such a problem.
>
> > I was more interested in what values it filled in. Did you memset the
> > struct stat to 0 first?
>
> Yes, I realized that 1 second after I pushed the button :)
> I do memset the struct stat received in the FUSE call, but I see now
> that I do no memset() the struct stat passed to function stat(2) that
> is used to populate the cache. That could be a problem if stat(2) does
> not guarantee a properly filled in structure.
--
You received this message because you are subscribed to the Google Groups
"MacFUSE" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/macfuse?hl=en.