Fuse-Simple

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN

            Debug Fuse::Simple. All filesystem calls, arguments, and return
            values will be dumped, a bit like strace for perl.

        fuse_debug => *0|1*,
            Debug FUSE itself. More low-level than debug

        threaded => *0|1*,
            See Fuse

        "/" => { hash for your root directory },
        chmod chown flush fsync getattr getdir etc
            See Fuse

            You can replace any of the low-level functions if you want, but
            if you wanted to mess around with the dirty bits, you'd probably
            not be using Fuse::Simple, would you?

        others
            If I've forgotten any Fuse args, you can supply them too.

UTIL FUNCTIONS

README  view on Meta::CPAN

      ls /mnt/magic        # return cached copy
      echo foo >/mnt/magic # mysub("foo",0);
      ls /mnt/magic        # mysub("");
      ls /mnt/magic        # return cached copy

EXAMPLES
      see L</SYNOPSIS>

NOTES
    Most things apart from coderefs can't be written, and nothing can be
    renamed, chown()ed, deleted, etc. This is not considered a bug, but I
    reserve the right to add something clever in a later release :-)

BUGS
    accessor() is a bit thick, doesn't handle seeks, multi-block writes,
    etc.

    Please report any bugs or feature requests to <bug-fuse-simple at
    rt.cpan.org>, or through the web interface at
    <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Fuse-Simple>. I will be
    notified, and then you'll automatically be notified of progress on your

Todo  view on Meta::CPAN

TODO list for Perl module Fuse::Simple

- a more intelligent accessor() that understands $off etc?

- implement some more functionality like (optional) ability to rename,
  chmod, chown, touch, edit non-coderef files?

- check it's taint-safe

- check it's thread-safe

lib/Fuse/Simple.pm  view on Meta::CPAN

=item B<fuse_debug> => I<0|1>,

Debug FUSE itself. More low-level than B<debug>

=item B<threaded> => I<0|1>,

See L<Fuse>

=item B<"/"> => { hash for your root directory },

=item B<chmod> B<chown> B<flush> B<fsync> B<getattr> B<getdir> etc

See L<Fuse>

You can replace any of the low-level functions if you want, but if
you wanted to mess around with the dirty bits, you'd probably not be
using L<Fuse::Simple>, would you?

=item others

If I've forgotten any L<Fuse> args, you can supply them too.

lib/Fuse/Simple.pm  view on Meta::CPAN

    my %args = (
	"mountpoint"  => $ARGV[0] || "",
	"debug"       => $debug,
	"fuse_debug"  => 0,
	"threaded"    => 0,
	"/"           => $fs,
    );
    # the default subs
    my %fs_subs = (
	"chmod"       => \&fs_not_imp,
	"chown"       => \&fs_not_imp,
	"flush"       => \&fs_flush,
	"fsync"       => \&fs_not_imp,
	"getattr"     => \&fs_getattr,
	"getdir"      => \&fs_getdir,
	"getxattr"    => \&fs_not_imp,
	"link"        => \&fs_not_imp,
	"listxattr"   => \&fs_not_imp,
	"mkdir"       => \&fs_not_imp,
	"mknod"       => \&fs_not_imp,
	"open"        => \&fs_open,

lib/Fuse/Simple.pm  view on Meta::CPAN

  ls /mnt/magic        # mysub("");
  ls /mnt/magic        # return cached copy

=head1 EXAMPLES

  see L</SYNOPSIS>

=head1 NOTES

Most things apart from coderefs can't be written, and nothing can be
renamed, chown()ed, deleted, etc. This is not considered a bug, but I
reserve the right to add something clever in a later release :-)

=head1 BUGS

accessor() is a bit thick, doesn't handle seeks, multi-block writes,
etc.

Please report any bugs or feature requests to
E<lt>bug-fuse-simple at rt.cpan.orgE<gt>, or through the web interface at
L<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Fuse-Simple>.



( run in 1.021 second using v1.01-cache-2.11-cpan-71847e10f99 )