Bugfix in CMakeLists.txt to manage "non DBUS" case correctly.
cmake: add missing dependencies to mooshika for the 9P/RDMA case.
cmake: turn USE_9P to ON if it was OFF and USE_9P_RDMA is ON
Clean GPFS FSAL interface.
FSAL VFS - factor out common code for dealing with new objects

Every time make_file_safe is called it's followed immediately
by the call to alloc_handle: move alloc_handle into make_file_safe
and save on lines of code.

Signed-off-by: Max Matveev <makc@gmx.co.uk>
FSAL VFS - factor out common code for dealing with 'strange ducks'

Symlinks, block and character device nodes, pipes, fifos etc require
special handling. The information used for special handling is stashed
in the vfs_fsal_obj_handle but code which deals with acquiring this
information is spread around.

Because the code action always preceed calls to alloc_handle() is makes
sense to move the code into alloc_handle().

Signed-off-by: Max Matveev <makc@gmx.co.uk>
FSAL VFS - deal with setattr on symlinks

Symlinks are strange - unless one opens then
for read/write fchownat does not work. futimes/futimens
and friends don't work on them at all, so make fchmodat
happy and ignore timestamps: it's better then failing
and leaving debris behind.

Signed-off-by: Max Matveev <makc@gmx.co.uk>
Housekeeping - update gitignore

Now that autotools are gone do not ignore .lo and .la
files but do ignore .a.

Also ignore FSAL shared objects - anything which starts
with libfsal is fair game.

Signed-off-by: Max Matveev <makc@gmx.co.uk>
Cmake - make sure DEBUG_SYMS are honoured

Override CMAKE_C_FLAGS after setting project defaults
to include -g if DEBUG_SYMS was set.

Signed-off-by: Max Matveev <makc@gmx.co.uk>
FSAL VFS - deal with XFS-specific handles

Abstract operations which deal with creating and
manipulating of handles and add XFS-specific
handle processing.

I'm still using vfs_file_handle_t as container
for XFS handles but every place which used
to call vfs_XXX_by_handle_at is now going via
indirection vector in vfs_fsal_export.

The vector has to be in the export because we
need to be able to create vfs_fsal_obj_handle
out of the opaque file handle which could have been
cached on the client.

Signed-off-by: Max Matveev <makc@gmx.co.uk>
FSAL XFS - good bye

FSAL XFS is now part of FSAL VFS

Signed-off-by: Max Matveev <makc@gmx.co.uk>
Avoid re-defining common types

Some compilers don't like when types are re-defined,
so take care to only define them once: e.g. if a type
is defined the common header which includes OS-specific
one then don't define the same type in OS-specific header.

Signed-off-by: Max Matveev <makc@gmx.co.uk>
Add a few commands to src/CMakeLists.txt to activate CPack.
You now can run "make package" and "make package_source"
CPACK_* variables added to be able to produce .deb and .rpm files.
This is an early version for sub packages are not generated (and we clearly need subpackages).
Move CPack configuration to a dedicated file and include it to src/CMakeLists.txt
Add Changelog in CPack generated rpm
CMake/CPack: components were added to split the single generated rpm into several ones.
CMake/CPack: more source generators were added.
Refactor dbus core to simplify adding new paths and interfaces

All that is required for a new service is to register a path and
a data structure describing its interfaces and their methods.  All
the dbus magic for marshalling stuff is in dbus_server.

Signed-off-by: Jim Lieb <jlieb@panasas.com>
Fix introspection and object call problems in get_clientids.py

Signed-off-by: Jim Lieb <jlieb@panasas.com>
Merge remote-tracking branch 'phdeniel/new_api_dev_16' into merge_next
gitignore: Add build*/

It looks like everyone is costumed to build_foo naming convention
for building with cmake. So It should be safe to make this a policy:

	NAME your compilation directory starting with build*
	and it will be ignored by git..

I know that the strict among us would say that it needs to be
a folder outside of ganesha's git. But for developers this means
inconvenience  because it means we need everything one directory
deeper, in an already deep directory structure. So I would like to
keep everything under ~/git/ganesha/... thank you.

personally I don't mine the build* naming convention, though some
people might prefer:
	.build*
With the "dot" it should be more of a private "ignored" stuff.

So please complain about this patch if you don't like it or
Jim can take it.

Signed-off-by: Boaz Harrosh <bharrosh@panasas.com>