2015-03-05 18:33:14

by Thomas Haynes

[permalink] [raw]
Subject: Updates to the NFSv4.2 xdr

Hi,

We've just pushed two changes to the XDR:

struct COPY_NOTIFY4resok {
nfstime4 cnr_lease_time;
netloc4 cnr_source_server<>;
};

became:

struct COPY_NOTIFY4resok {
nfstime4 cnr_lease_time;
stateid4 cnr_stateid;
netloc4 cnr_source_server<>;
};

and

enum netloc_type4 {
NL4_NAME = 0,
NL4_URL = 1,
NL4_NETADDR = 2
};

became:

enum netloc_type4 {
NL4_NAME = 1,
NL4_URL = 2,
NL4_NETADDR = 3
};

Thanks!


2015-03-06 17:00:25

by Thomas Haynes

[permalink] [raw]
Subject: Re: Updates to the NFSv4.2 xdr

And as a follow-up, I took Jorge's changes for the COPY result:

struct COPY4res {
nfsstat4 cr_status;
write_response4 cr_response;
bool cr_consecutive;
bool cr_synchronous;
};

becomes:

truct write_response4 {
stateid4 wr_callback_id<1>;
length4 wr_count;
stable_how4 wr_committed;
verifier4 wr_writeverf;
};


struct copy_requirements4 {
bool cr_consecutive;
bool cr_synchronous;
};

struct COPY4resok {
write_response4 cr_response;
copy_requirements4 cr_requirements;
};

union COPY4res switch (nfsstat4 cr_status) {
case NFS4_OK:
COPY4resok cr_resok4;
case NFS4ERR_OFFLOAD_NO_REQS:
copy_requirements4 cr_requirements;
default:
void;
};