Commit Graph

48 Commits (master)

Author SHA1 Message Date
Ronnie Sahlberg f965ec74cf ps2ee: PS2 EE support
Initial support for building a library for PS2 EmotionEngine

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2021-09-17 07:27:44 +10:00
Ronnie Sahlberg fca28fe112 url: add support for using escaped characters in the url.
We need to allow users to specify escaped characters as part of the 'path'
field of a URL.
For example, '?' is used to separate the part and the optional list of
arguments.
IF 'path' contains a '?' character then that must be escaped as %3F.
So that libnfs will be able to tell it apart from the '?' separator.

I.e.
nfs://127.0.0.1/my?path/?version=4
must be escaped as
nfs://127.0.0.1/my%3Fpath/?version=4
before passed to any of the URL parsing functions.

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2021-09-01 08:17:23 +10:00
Ronnie Sahlberg 752cb4134d url: add support for server:port syntax in the url
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2021-07-18 07:46:09 +10:00
Damián Parrino ef0056cd13
Update README 2020-08-15 11:31:11 -03:00
Ronnie Sahlberg d86d5d1851 README: NFSv4 actually works now, update README to reflect this
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2018-09-04 18:12:20 +10:00
Ronnie Sahlberg b54fc96e00 Add nfsport/mountport arguments
Add two arguments to set which port to use for MOUNT (only used in NFSv3)
as well as for the NFS protocols.
When set to non-zero libnfs will connect directly to that port and bypass
the use of portmapper completely.

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2018-04-08 14:36:37 +10:00
Yann GASCUEL 53e3c86c58 examples/ld_nfs.c: feature: faking uid and gid
add the possiblity of faking the uid and the gid in the nfs context.
uid and gid value are read from env variables LD_NFS_UID and LD_NFS_GID.
This can be useful on "insecure" enabled NFS share to make the server
trust you as a root.

Few lines added to the README to document the feature.
2017-11-26 16:24:03 +01:00
Ronnie Sahlberg e1f01238d5 README: clarify status of nfsv4 support. I.e. not yet functional.
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2017-07-01 08:44:25 +10:00
Ronnie Sahlberg 4a6012ea74 NFSv4: Add support for selecting version via url argument or nfs_set_version
This only allow selecting the version for the context.
There is still no real v4 support and all I/O is still using v3.

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2017-06-30 13:48:59 +10:00
Ronnie Sahlberg 173ad2b1f3 Change how auto-reconnect works
For NFS sessions, change the autoreconnect options to be :
-1:  (default) retry connectiong back to the server forever. Just like
normal NFS clients do.
0: Do not attempt reconnecting at all. Immediately fail and return an
error back to the application on session loss.
>=1: Retry connecting to the server this many times before giving up.

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2017-05-31 19:46:18 -07:00
Ronnie Sahlberg 79d1dc5ad7 Merge branch 'issues-212' of https://github.com/earlchew/libnfs into earlchew-issues-212
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2017-05-10 21:26:57 -07:00
Earl Chew ef8c67e81e Provide documentation for autoreconnect option
Signed-off-by: Earl Chew <earl_chew@yahoo.com>
2017-05-10 20:29:00 -07:00
Ronnie Sahlberg 0e37be0339 Document the new url argument to disable autoreconnect
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2017-05-10 18:28:51 -07:00
Ronnie Sahlberg adf158bb23 Update README and mention NFSv4 and general RPC server support.
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2016-12-17 10:44:12 -08:00
Ronnie Sahlberg a2b37349fa Update README about capability support and fix some typos.
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2016-11-06 15:16:31 -08:00
Chris 5f75307a36 Added the ability to bind to a specific interface with the
`nfs_set_interface` and `rpc_set_interface` APIs, or via the
NFS URL `if=<interface>` parameter. This feature requires
`root` permissions.

NOTE: This has only been compiled and tested on Ubuntu 14.04. It's
unlikely that it'll work on other platforms without modification,
particularly around the inclusion of <net/if.h> and IFNAMSIZ define
in `libnfs-private.h`.
2016-09-19 18:31:49 -07:00
Dirk Jagdmann 1c13afae56 fix spelling errors. 2016-03-14 18:47:54 -07:00
Ronnie Sahlberg 458f6c2be5 Add option and method to disable/enable directory caching
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2016-02-07 16:06:00 -08:00
Jean-Baptiste Kempf f29382d03c README: mention Android 2016-01-16 19:16:35 +01:00
Jean-Baptiste Kempf 4324dcb846 README: mention MingW to cross-compile 2016-01-16 19:14:03 +01:00
Jean-Baptiste Kempf ab0b9b1f88 README: remove tabs and trailing spaces 2016-01-16 19:11:27 +01:00
Ronnie Sahlberg dc8d86628d Remove FUSE NFS filesystem
Remove the fuse module from the examples subdirectory.
This module is now a standalone repo :
https://github.com/sahlberg/fuse-nfs

And it comes with proper build rules, documentation etc etc.
It is a useful module and it has now graduated to become its own
repo.

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2015-10-19 18:59:38 -07:00
Ronnie Sahlberg d1c2c47ff0 Add auto-traverse-mount URL argument and default it to TRUE
Add a URL argument to enable/disable the use of automatic traversal of nested
mounts for a libnfs context. Default it to enabled.

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2015-01-17 11:49:08 -08:00
Ronnie Sahlberg 9c1d38488e DOCS: document the readahead url argument
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2014-12-05 08:52:17 -08:00
Ronnie Sahlberg 2e630bbd76 fix linebreak in README 2014-08-14 19:05:28 -07:00
Ronnie Sahlberg 8e003243fb docs: add a prebuilt manpage to the distribution
Add a prebuilt manpage for nfs-ls and change the makefiles to not build the
manpage by default. This is because the manpages change rarely and this removes
the need for an internet connection when building the library.
(previously building the library required downloading a template from
sourceforge)

Update the README and mention that you now need to manually rebuild the
manpages if the manpage sources change.

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
2014-05-14 19:04:43 -07:00
Ronnie Sahlberg b3525a9439 IPV6: Update the README and specify ipv6 is supported 2014-03-19 18:25:50 -07:00
Ronnie Sahlberg b8c28d541e Add a simple LD_PRELOAD toy to make cat and cp nfs-aware 2014-02-02 18:03:50 -08:00
Ronnie Sahlberg f893b680f2 Add support for chdir and getcwd
Add chdir and getcwd and store cwd in the nfs_context.
Add functions to process the paths specified and normalize them
by performing the transforms :
    // -> /
    /./ -> /
    ^/../ -> error
    ^[^/] -> error
    /string/../ -> /
    /$ -> \0
    /.$ -> \0
    ^/..$ -> error
    /string/..$ -> /

Update the path lookup function to allow specifying relative paths based on
cwd for all functions.
2014-01-30 20:06:57 -08:00
Ronnie Sahlberg 0df47959c4 Revert "Add support for chdir and getcwd"
This reverts commit fb6f315257.
2014-01-30 18:26:39 -08:00
Ronnie Sahlberg fb6f315257 Add support for chdir and getcwd
Add chdir and getcwd and store cwd in the nfs_context.
Add functions to process the paths specified and normalize them
by performing the transforms :
    // -> /
    /./ -> /
    ^/../ -> error
    ^[^/] -> error
    /string/../ -> /
    /$ -> \0
    /.$ -> \0
    ^/..$ -> error
    /string/..$ -> /

Update the path lookup function to allow specifying relative paths based on
cwd for all functions.
2014-01-27 20:54:59 -08:00
Ronnie Sahlberg 0961765a56 Document the URL syntax 2013-12-25 16:27:10 -08:00
Ronnie Sahlberg c6bd90a235 Add a simple FUSE filesystem based on libnfs. 2013-11-03 19:36:57 -08:00
Ronnie Sahlberg e083c2a090 READE update the location of the tarballs 2013-05-27 21:50:24 -07:00
Ronnie Sahlberg e267bb128c AROS: Update README and list AROS as supported and provide build instruction for it 2013-04-13 03:49:15 -07:00
Ronnie Sahlberg 273850767d README: We dont need tirpc for cygwin builds anymore 2013-01-03 18:13:05 -08:00
Ronnie Sahlberg 8afcdc959f New version 1.5
- Switch to our own builtin RPC/XDR replacement
- Android support
2012-12-03 06:38:18 -08:00
Ronnie Sahlberg 6494f8fcd4 README, document where the mailinglist is and where release tarballs can be downloaded 2012-03-05 13:29:31 +11:00
Ronnie Sahlberg 22e73f32dd update README with highly non-portable capability support on some linux kernels 2011-09-13 15:17:21 +10:00
Memphiz fcc42bfe85 [win32] - completed win32 port 2011-09-12 19:53:33 +02:00
Ronnie Sahlberg 4b6737c15c Add Windows as a supported platform 2011-09-03 15:40:13 +10:00
Ronnie Sahlberg 647d2ea11c add support for opensolaris 2011-09-01 19:48:42 +10:00
Ronnie Sahlberg 9f88cb06f5 typo 2011-07-18 11:49:21 +10:00
Ronnie Sahlberg 51b9335b9c FreeBSD works too 2011-07-18 10:45:54 +10:00
Ronnie Sahlberg c03a1e82ac Add cygwin to supported/tested platforms 2011-07-17 16:45:12 +10:00
Memphiz 2461e2117e - adapted README with tested plattforms 2011-06-11 19:37:28 +02:00
Ronnie Sahlberg f7b81274cb README: mention that you need "insecure" to use libnfs as non-root user 2011-02-06 16:39:37 +11:00
Ronnie Sahlberg 84004dbf9b initial libnfs checkin 2011-02-06 15:45:09 +11:00