Update examples/loopback.pl

Added ENOTDIR to POSIX exports (was missing).
Update examples/loopback.pl

Lchown might not be available on the platform, or it might just not work out-of-the-box, as for me today ("Can't locate loadable object for module Lchown"). Fallback gracefully in these cases.
Update examples/loopback.pl

I might misunderstand usage, but I think, without a path in @ARGV, the script should spit out some usage info, so a user doesn't have to dig into the code for a quick test-drive.
Update examples/loopback.pl

Unix::Mknod might not be available or might not work - same as for Lchown. Graceful fallback. Is "POSIX::errno();" the right error code?
Update examples/readdir.pl

$file already sanitized in filename_fixup, right?
Merge pull request #13 from isync/master

Tweaks on loopback.pl example
Clean up a few potential memleaks.
Okay, those sv_2mortal()s were bad.
Fix tabbing on lines added recently.

Use SP directly instead of &TOPs.

Describe the fix I made in the Changes file.
Incorporate FUSE 2.9 feature support.

Since the FUSE includes don't have a define for the micro version number,
and the 'fallocate' operation is new as of FUSE 2.9.1, add a bit to the
Makefile.PL to split up the version number into major, minor and micro
numbers and add -D defines for the build to pass them in.

Altered fuse_version() to provide separate major/minor/micro version
numbers if called in array context.

Added support for fallocate() and flock(). Also stubbed out read_buf()
and write_buf().

Added support for the 'nopath' and 'utime_omit_ok' flags. Also, added
implementations to access the UTIME_NOW and UTIME_OMIT constants.

Added basic docs for fallocate() and flock().

Added change note to Changes file.
Documented 'nopath' and 'utime_omit_ok' flags.

Exported UTIME_NOW and UTIME_OMIT under 'ALL' and 'utime' tags.

Implemented read_buf() operation, and added an implementation in
example/loopback.pl. Only tested with memory, not with FD based
mode.

Fixed fallocate() wrapper to use the correct callback number.

Altered testing infrastructure to pass logfile name to loopback.pl, and
have it open the logfile, instead of trying to open it in test/s/mount.t,
as since loopback.pl's daemonize() reopens stdout/stderr only /dev/null
normally, the logfile is worthless. This makes it functional again.
Document 'read_buf' operation.

Added accessors for the FUSE_BUF_* constants, and exported them under the
'zerocopy' and 'all' tags.

Removed unnecessary detritus from the read_buf() wrapper.
Change Fuse::main() unknown function handling path.

If a handler function with a name that isn't known is supplied to
Fuse::main(), instead of croak, use carp. There are legitimate situations
where a function (like one of the FUSE 2.8/2.9 specific ops) is passed,
but isn't available due to the underlying libfuse being too old to use
them, so they're just not available, and it's better to whine but not
die over them.
Implemented write_buf() wrapper. Still needs fuse_buf_copy().

Made alterations to read_buf() wrapper to use an array, instead of a
single item, to accommodate different strategies.

Altered loopback.pl to support write_buf, and to use the modified
read_buf semantics.

Also changed open() use in daemonize() inside loopback.pl to 3-operand
calling syntax, because it's just the right thing to do.
Document write_buf.

Fix up read_buf docs.

Change order of arguments for write_buf, to make it more consistent
with read_buf.

Fix up loopback.pl to use the new argument order for write_buf.
Return the number of bytes read in the example read_buf implementation.
Enable a potentially zero-copy read path.

Instead of using newSVpvn(), make an SV around the passed buffer, so we
can skip unnecessary data copying. This makes the write buffer SV read-only.
The only possible problem is if the write() implementation tries to hang
onto the SV; I'm thinking about making a "zerocopy" option flag and using
this path only when that option is enabled.
Implemented fuse_buf_copy().

Cast buf as (char *) to prevent a warning in the write() wrapper.

Handle positive returns properly in read_buf(). Returning 0 seems to
work okay, but we're supposed to return the total read size.

An extra little bit for the changelog.
Small correction to read_buf docs.
Implement fuse_buf_size in Perl.