Lines Matching refs:open
850 nfsd4_decode_open(struct nfsd4_compoundargs *argp, struct nfsd4_open *open) in nfsd4_decode_open() argument
855 memset(open->op_bmval, 0, sizeof(open->op_bmval)); in nfsd4_decode_open()
856 open->op_iattr.ia_valid = 0; in nfsd4_decode_open()
857 open->op_openowner = NULL; in nfsd4_decode_open()
859 open->op_xdr_error = 0; in nfsd4_decode_open()
862 open->op_seqid = be32_to_cpup(p++); in nfsd4_decode_open()
864 status = nfsd4_decode_share_access(argp, &open->op_share_access, in nfsd4_decode_open()
865 &open->op_deleg_want, &dummy); in nfsd4_decode_open()
868 status = nfsd4_decode_share_deny(argp, &open->op_share_deny); in nfsd4_decode_open()
872 COPYMEM(&open->op_clientid, sizeof(clientid_t)); in nfsd4_decode_open()
873 status = nfsd4_decode_opaque(argp, &open->op_owner); in nfsd4_decode_open()
877 open->op_create = be32_to_cpup(p++); in nfsd4_decode_open()
878 switch (open->op_create) { in nfsd4_decode_open()
883 open->op_createmode = be32_to_cpup(p++); in nfsd4_decode_open()
884 switch (open->op_createmode) { in nfsd4_decode_open()
887 status = nfsd4_decode_fattr(argp, open->op_bmval, in nfsd4_decode_open()
888 &open->op_iattr, &open->op_acl, &open->op_label); in nfsd4_decode_open()
894 COPYMEM(open->op_verf.data, NFS4_VERIFIER_SIZE); in nfsd4_decode_open()
900 COPYMEM(open->op_verf.data, NFS4_VERIFIER_SIZE); in nfsd4_decode_open()
901 status = nfsd4_decode_fattr(argp, open->op_bmval, in nfsd4_decode_open()
902 &open->op_iattr, &open->op_acl, &open->op_label); in nfsd4_decode_open()
916 open->op_claim_type = be32_to_cpup(p++); in nfsd4_decode_open()
917 switch (open->op_claim_type) { in nfsd4_decode_open()
921 open->op_fname.len = be32_to_cpup(p++); in nfsd4_decode_open()
922 READ_BUF(open->op_fname.len); in nfsd4_decode_open()
923 SAVEMEM(open->op_fname.data, open->op_fname.len); in nfsd4_decode_open()
924 if ((status = check_filename(open->op_fname.data, open->op_fname.len))) in nfsd4_decode_open()
929 open->op_delegate_type = be32_to_cpup(p++); in nfsd4_decode_open()
932 status = nfsd4_decode_stateid(argp, &open->op_delegate_stateid); in nfsd4_decode_open()
936 open->op_fname.len = be32_to_cpup(p++); in nfsd4_decode_open()
937 READ_BUF(open->op_fname.len); in nfsd4_decode_open()
938 SAVEMEM(open->op_fname.data, open->op_fname.len); in nfsd4_decode_open()
939 if ((status = check_filename(open->op_fname.data, open->op_fname.len))) in nfsd4_decode_open()
951 status = nfsd4_decode_stateid(argp, &open->op_delegate_stateid); in nfsd4_decode_open()
3266 nfsd4_encode_open(struct nfsd4_compoundres *resp, __be32 nfserr, struct nfsd4_open *open) in nfsd4_encode_open() argument
3274 nfserr = nfsd4_encode_stateid(xdr, &open->op_stateid); in nfsd4_encode_open()
3280 p = encode_cinfo(p, &open->op_cinfo); in nfsd4_encode_open()
3281 *p++ = cpu_to_be32(open->op_rflags); in nfsd4_encode_open()
3283 nfserr = nfsd4_encode_bitmap(xdr, open->op_bmval[0], open->op_bmval[1], in nfsd4_encode_open()
3284 open->op_bmval[2]); in nfsd4_encode_open()
3292 *p++ = cpu_to_be32(open->op_delegate_type); in nfsd4_encode_open()
3293 switch (open->op_delegate_type) { in nfsd4_encode_open()
3297 nfserr = nfsd4_encode_stateid(xdr, &open->op_delegate_stateid); in nfsd4_encode_open()
3303 *p++ = cpu_to_be32(open->op_recall); in nfsd4_encode_open()
3314 nfserr = nfsd4_encode_stateid(xdr, &open->op_delegate_stateid); in nfsd4_encode_open()
3338 switch (open->op_why_no_deleg) { in nfsd4_encode_open()
3344 *p++ = cpu_to_be32(open->op_why_no_deleg); in nfsd4_encode_open()
3352 *p++ = cpu_to_be32(open->op_why_no_deleg); in nfsd4_encode_open()