In incubator libfuse/master branch ,src/netfs.c lines 1436-1452:
/* using the inode based api */
if(! strcmp(name, "."))
inode = fuse_get_inode(handle->parent->path);
else if(handle->parent->parent && ! strcmp(name, ".."))
inode = fuse_get_inode(handle->parent->parent->path);
if(! stat)
{
DEBUG("critical", "use_ino flag set, but stat ptr not available.\n");
inode = 0;
}
else
inode = stat->st_ino;
The "." and ".." cases might to be overridden by the handling of the
stat argument.
In either cases, the `inode` will be overridden by 0 or stat->st_ino.
I'm not sure whether this is the intended behavior, so I'm sending this
as an RFC for discussion.