Get rid of unused function definitions.

Signed-off-by: Sachin Bhamare <sbhamare@panasas.com>
Add definitions of two new syscalls to be used on FreeBSD platform.

This commit adds definitions of following 2 syscalls which are essentially
by-handle versions for link and readlink.
1. fhlink() -- Link file by handle.
2. fhreadlink() -- Read the symbolic link by handle.

Signed-off-by: Sachin Bhamare <sbhamare@panasas.com>
Add link_by_handle and readlink_by_handle APIs.

link_by_handle() on freebsd translates to fhlink(), a newly added syscall.
link_by_handle() on linux doesn't change current semantics and continues to use
linkat() with empty path name under the hood.

readlink_by_handle() on freebsd translates to fhreadlink(), a newly added
syscall.
readlink_by_handle() on linux doesn't change current semantics and continues to
use readlinkat() with empty path name under the hood.

Signed-off-by: Sachin Bhamare <sbhamare@panasas.com>
Re-work VFS FSAL handle code to use newly added by-handle APIs in OS layer.

This commit fixes some places in the VFS FSAL handle code where linkat() and
readlinkat() calls were used with empty path names.
Since FreeBSD doesn't support empty path names in at-syscalls, we ended up
using new syscalls in FreeBSD which allow us to link() and readlink() by handle
instead.
On linux platform, these by-handle APIs continue to use linkat() and
readlinkat() with emprty path names as before.

Signed-off-by: Sachin Bhamare <sbhamare@panasas.com>