From: Anatol P. <ana...@gm...> - 2012-05-25 23:11:48
|
Hi On Fri, May 25, 2012 at 3:53 PM, Han-Wen Nienhuys <ha...@gm...> wrote: > On Fri, May 25, 2012 at 4:46 PM, Christopher Howard > <chr...@fr...> wrote: > > 2) In creating my first FUSE-based file system, I have been following > > one of the examples that uses the fuse-operations struct, as opposed to > > fuse_lowlevel_ops. However, in trying to test my write function (by > > editing a file with a text editor) I keep getting the error > > > > code: > > -------- > > unique: 22, opcode: SETATTR (4), nodeid: 3, insize: 128 > > unique: 22, error: -38 (Function not implemented), outsize: 16 > > -------- > > > > But fuse_operations doesn't have a setattr function, only > > fuse_lowlevel_ops. Does this mean I have to use fuse_lowlevel_ops? > > setattr is usually used to truncate. Doesn't the high level interface > have truncate function to implement? > Not only truncate/ftruncate but also for chmod/chown/utime Christopher, depending on what attributes it tries to set fuse library calls one (or several) of the high-level functions (truncate/ftruncate/chmod/chown/utime/utimens). If at least one of the required functions is not implemented then ENOSYS error is returned. |