Commit Graph

292 Commits (master)

Author SHA1 Message Date
Ronnie Sahlberg 8704724f83 Change remaining "struct AUTH *" to "AUTH *" 2011-10-09 15:22:05 +11:00
Memphiz fa33813ed4 [fix] - fix improper definition of struct AUTH from osx (caution - API change - not clear if typedef is there on all plattforms...) 2011-10-08 18:10:06 +02:00
Ronnie Sahlberg d678b73e4d Fragment reassembly. Add reassembly of fragmented RPC PDUs 2011-10-04 12:31:56 +11:00
Ronnie Sahlberg 1744ef9011 Autoreconnect: autoreconnect was completely broken. Reimplement it so that it reconnects properly on session failure. 2011-10-04 11:25:10 +11:00
Ronnie Sahlberg 762621fa3d Donr declate AUTH as a struct in libnfs.h
make it include rpc/auth.h properly instead
2011-09-19 20:23:45 +10:00
Ronnie Sahlberg 83aa785d92 Add a call to find the queue-length so we can see how many I/O we have in flight from the application layer. 2011-09-11 21:32:48 +10:00
Ronnie Sahlberg 41d82d7d82 Merge branch 'win32' into win32-3 2011-09-03 10:57:42 +10:00
Ronnie Sahlberg 0804e67d7a using READDIRPLUS3 we get some extra fields for the direentry structure for free, such as type, mode, size, timestamps 2011-09-02 20:45:30 +10:00
Ronnie Sahlberg f390f18157 nfs_opendir() switch to using READDIRPLUS3 instead of READDIR3 when reading directories. 2011-09-02 20:27:01 +10:00
Ronnie Sahlberg 66ad6d8438 Win32: make the sympols public in a dll 2011-08-30 15:56:53 +10:00
Ronnie Sahlberg dd8fc17555 win32 oncrpc environment needx xdr.h before including auth.h 2011-08-28 19:46:12 +10:00
Ronnie Sahlberg eecdc4f3cd Win32 changes, include files we need when compiling under win32
and some socket ops are slightly different
2011-08-28 19:24:18 +10:00
Ronnie Sahlberg b84208a613 Dont install slist.h or libnfs-private.h 2011-07-31 18:29:10 +10:00
Ronnie Sahlberg b077fdeb65 Add automatic reconnect after TCP session failure for the sync interface.
Once a NFS TCP connection has been idle for a very long time, say
10-15 minutes, it is common that NFS servers will tear down the TCP connection.
So add code to re-connect to the NFS server and re-issue any i/o that might have been in flight (unlikely unless the server has hung)

While it is sufficient to just reconnect to tcp port 2049, it was much simplet to just utilize the nfs_mount() function.
This means that instead of just reconnecting TCP port 2049, we do a full blown
nfs mount via portmapper and mountd protocols.
2011-07-31 10:49:47 +10:00
Memphiz 4431432424 [fix] - install the raw headers ... 2011-07-19 20:12:31 +02:00
Ronnie Sahlberg 3847f8f6ae add support got NFSACL protocol and NULL and GETACL procedures.
add example of raw interface for NFSACL
2011-07-03 15:30:18 +10:00
Ronnie Sahlberg 2e4db0d145 Merge remote branch 't-nelson/automake' 2011-07-02 11:10:36 +10:00
Ronnie Sahlberg 9c4212bf55 document the find_all_servers function 2011-07-02 10:33:19 +10:00
Ronnie Sahlberg 552c766578 add example for sync interface to probe for all local servers 2011-07-02 10:30:16 +10:00
Trent Nelson 6c437065d3 Rewrite build system using automake
Initial commit, only linux tested so far.
2011-06-29 14:15:16 -04:00
Ronnie Sahlberg fd59fd0da3 add a function for portmap/callit
for the low level raw interface
2011-06-26 18:52:03 +10:00
Ronnie Sahlberg c481da67f2 add function to extract the sockaddr from which we received the current rpc pdu
(useful when parsing replies from broadcast rpc calls)
2011-06-26 18:45:38 +10:00
Ronnie Sahlberg 5bf60dc601 add function to set the target for UDP rpc calls.
including doing broadcast calls
2011-06-26 18:42:53 +10:00
Ronnie Sahlberg 485bc9b9a7 add function to bind a udp rpc context to a local port/address 2011-06-26 18:40:00 +10:00
Ronnie Sahlberg 2d0c44ced1 add a sockaddr_storage so we can store the socket UPD packets came in from 2011-06-26 18:29:49 +10:00
Ronnie Sahlberg a9b241622f add a sockaddr_storage to the rpc context so we can store the socket a upd packet came in from 2011-06-26 18:22:45 +10:00
Ronnie Sahlberg 2ae460667b add a 'is broadcast' flag to the rpc context structure
this is used for broadcast udp rpc calls (==pormatp/callit)
2011-06-26 18:18:59 +10:00
Ronnie Sahlberg 9e00b8c663 add function to request a UDP context
(private use only since we dont want applications to use UDP)
2011-06-26 17:27:40 +10:00
Ronnie Sahlberg d16a3ca4bb add rpc_context field to track if a UDP connection was requested 2011-06-26 17:17:59 +10:00
Ronnie Sahlberg cdb19ec164 Redo the buffer handling for input buffers and make sure we only read one PDU at a time 2011-06-20 00:56:47 +10:00
Ronnie Sahlberg e210bd2af8 remove the need for an explicit rpc context for the highlevel function mount_getexports() 2011-06-19 23:20:35 +10:00
Ronnie Sahlberg df5af25fd2 add a sync function to get the export list from a server and add an example of how to use this functio n to nfsclient-sync 2011-06-19 22:31:34 +10:00
Ronnie Sahlberg 7f0242ca9a Add a high-level async function to read the export list 2011-06-19 14:54:17 +10:00
Ronnie Sahlberg 1896d37bfa get rid of all remaining printfs from the library
add a helper function nfs_set_error() to use instead of the printfs
2011-06-19 09:38:20 +10:00
Ronnie Sahlberg e2ba5764d4 Remove the _sync postfix for the synchronous functions 2011-06-18 15:07:53 +10:00
Ronnie Sahlberg 77c23b46c0 Add support for version 2 of the rquota protocol 2011-06-02 22:16:42 +10:00
Ronnie Sahlberg 19e74f5a32 Add RQUOTA1/GETACTIVEQUOTA call to the raw low level API 2011-06-02 22:06:25 +10:00
Memphis d6ced294d8 - refactored parametername from reserved keyword "export" to "exportname" 2011-06-01 18:05:18 +02:00
Ronnie Sahlberg 05a777d98a Initial support for RQUOTA protocol 2011-06-01 20:55:27 +10:00
Ronnie Sahlberg 17ef62fad7 Read the max read/write sizes supported when connecting to NFS
and store in the nfs context.
Privide accessor functions to read the max sizes.
2011-06-01 00:08:29 +10:00
Ronnie Sahlberg 1058201ef0 Add support for async version of NFS/FSINFO3 call 2011-05-31 23:50:18 +10:00
Ronnie Sahlberg 84004dbf9b initial libnfs checkin 2011-02-06 15:45:09 +11:00