Libnfs with two patches, already merged to upstream
 
 
 
 
 
 
Go to file
Ronnie Sahlberg f4442bec27 wondows dont have vasprintf()
disable for now  and reimplement later
2011-08-28 19:45:00 +10:00
examples Win32 changes, include files we need when compiling under win32 2011-08-28 19:24:18 +10:00
include Win32 changes, include files we need when compiling under win32 2011-08-28 19:24:18 +10:00
lib wondows dont have vasprintf() 2011-08-28 19:45:00 +10:00
mount Win32 changes, include files we need when compiling under win32 2011-08-28 19:24:18 +10:00
nfs Win32 changes, include files we need when compiling under win32 2011-08-28 19:24:18 +10:00
packaging/RPM Add packaging directory and script and specfile to build RPM packages 2011-07-31 18:29:28 +10:00
portmap Win32 changes, include files we need when compiling under win32 2011-08-28 19:24:18 +10:00
rquota Win32 changes, include files we need when compiling under win32 2011-08-28 19:24:18 +10:00
.gitignore Add new example bins to .gitignore 2011-07-06 16:37:06 -04:00
COPYING initial libnfs checkin 2011-02-06 15:45:09 +11:00
Makefile.am Rewrite build system using automake 2011-06-29 14:15:16 -04:00
README typo 2011-07-18 11:49:21 +10:00
bootstrap Rewrite build system using automake 2011-06-29 14:15:16 -04:00
configure.ac bump the configure.ac version to 1.0 2011-08-01 07:32:08 +10:00

README

LIBNFS is a client library for accessing NFS shares over a network.

LIBNFS offers three different APIs, for different use :
1, RAW : A fully async low level rpc library for nfs protocols
This API is described in include/libnfs-raw.h
it offers a fully async interface to raw XDR encoded blobs.
This api provides very flexible and precice control of the RPC issued.

examples/nfsclient-raw.c provides examples on how to use the raw API

2, NFS ASYNC : A fully asynchronous library for high level vfs functions
This API is described by the *_async() fucntions in include/libnfs.h.
This API provides a fully async access to posix vfs like functions such as 
stat(), read(), ...

examples/nfsclient-async.c provides examples on how to use this API


3, NFS SYNC : A synchronous library for high level vfs functions
This API is described by the *_sync() fucntions in include/libnfs.h.
This API provides access to posix vfs like functions such as 
stat(), read(), ...

examples/nfsclient-sync.c provides examples on how to use this API



ROOT vs NON-ROOT
================
When running as root, libnfs tries to allocate a system port for its connection
to the nfs server. When running as non-root it will use a normal 
ephemeral port.
Many NFS servers default to a mode where they do not allow non-system
ports from connecting.
These servers require you use the "insecure" export option in /etc/exports
in order to allow libnfs clients to be able to connect.

PLATFORM support
=================
As of now this is tested with linux, MacOSX and Apple iOS.

Linux:  - tested with Ubuntu 10.04 - should work with others aswell
Cygwin: - tested under 64bit win2k8.
MacOSX: - tested with SDK 10.4 (under Snow Leopard) - should also work with later SDKs and 64Bit
iOS:    - tested with iOS SDK 4.2 - running on iOS 4.3.x
FreeBSD:- tested with 8.2


Cygwin
------
Configure with './configure --enable-tirpc' since cygwin only supports ti-rpc and not classic rpc.