nfs_parse_url_incomplete: fix use after free in param parsing
[deb_libnfs.git] / README
diff --git a/README b/README
index 001e6b457814163380b105cc3b91f7d07c8923c2..6d3eb739a34ba22c26e337effaa265a80fa32acb 100644 (file)
--- a/README
+++ b/README
@@ -23,6 +23,21 @@ stat(), read(), ...
 
 examples/nfsclient-sync.c provides examples on how to use this API
 
+URL-FORMAT:
+===========
+Libnfs uses RFC2224 style URLs extended with libnfs specific url arguments some minor extensions.
+The basic syntax of these URLs is :
+
+nfs://<server|ipv4>/path[?arg=val[&arg=val]*]
+
+Arguments supported by libnfs are :
+ tcp-syncnt=<int>  : Number of SYNs to send during the seccion establish
+                     before failing settin up the tcp connection to the
+                     server.
+ uid=<int>         : UID value to use when talking to the server.
+                     default it 65534 on Windows and getuid() on unixen.
+ gid=<int>         : GID value to use when talking to the server.
+                     default it 65534 on Windows and getgid() on unixen.
 
 
 ROOT vs NON-ROOT
@@ -35,20 +50,50 @@ 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.
 
+Some versions of Linux support special capabilities that can be assigned to
+programs to allow non-root users to bind to system ports.
+This is set up by running 
+    sudo setcap 'cap_net_bind_service=+ep' /path/to/executable
+When libnfs is linked against an executable with this special capability
+assigned to it, libnfs may be able to use system ports even when executing
+under the privilege of a non-root user account.
+
+This is highly non-portable so IF this works on your linux system, count
+yourself lucky.
+
+
+FUSE
+====
+A simple FUSE filesystem built on libnfs can be found in
+examples/fuse_nfs.c
+
+Compile using : gcc fuse_nfs.c -o fuse_nfs -lfuse -lnfs
+Mount using : sudo ./fuse_nfs -n nfs://<server>/<export> -m <mountpoint>
+
+
 PLATFORM support
 =================
-As of now this is tested with linux, MacOSX and Apple iOS.
+This is a truly multiplatform library.
 
 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
-OpenSolaris
+Solaris
 Windows:- tested on Windows 7 64 and Windows XP 32 using Visual Studio 10 (see README.win32.txt for build instructions)
+Android:
+AROS: - Build with 'make -f aros/Makefile.AROS'
+
+
+RELEASE TARBALLS
+================
+Release tarballs are available at https://sites.google.com/site/libnfstarballs/li
+
 
 
-Cygwin
-------
-Configure with './configure --enable-tirpc' since cygwin only supports ti-rpc and not classic rpc.
+MAILINGLIST
+===========
+A libnfs mailinglist is available at http://groups.google.com/group/libnfs
+Announcements of new versions of libnfs will be posted to this list.