open: nfs41_rpc_open() takes open_claim4 and open_delegation4

combined nfs41_open() and nfs41_open_reclaim() into nfs41_rpc_open() by factoring out the open_claim4 argument.  new function nfs41_open() in open.c deals with the nfs41_open_state, adding it to the client's list, and handles any delegations granted

added xdr for OPEN CLAIM types CLAIM_DELEGATE_CUR, CLAIM_DELEG_CUR_FH, CLAIM_DELEGATE_PREV, CLAIM_DELEG_PREV_FH (the _FH types are new to 4.1, and not supported by linux server)

Signed-off-by: Casey Bodley <cbodley@citi.umich.edu>
This commit is contained in:
Casey Bodley 2011-07-05 10:23:33 -04:00 committed by unknown
parent 2b5a5fb071
commit 0c874a66ba
7 changed files with 187 additions and 182 deletions

View file

@ -137,6 +137,13 @@ typedef struct __stateid4 {
unsigned char other[NFS4_STATEID_OTHER];
} stateid4;
typedef struct __open_delegation4 {
stateid4 stateid;
nfsace4 permissions;
enum open_delegation_type4 type;
bool_t recalled;
} open_delegation4;
typedef struct __fattr4 {
bitmap4 attrmask;
uint32_t attr_vals_len;