Loading fs/nfsd/export.c +4 −3 Original line number Diff line number Diff line Loading @@ -438,13 +438,14 @@ fsloc_parse(char **mesg, char *buf, struct nfsd4_fs_locations *fsloc) static int secinfo_parse(char **mesg, char *buf, struct svc_export *exp) { int listsize, err; struct exp_flavor_info *f; u32 listsize; int err; err = get_int(mesg, &listsize); err = get_uint(mesg, &listsize); if (err) return err; if (listsize < 0 || listsize > MAX_SECINFO_LIST) if (listsize > MAX_SECINFO_LIST) return -EINVAL; for (f = exp->ex_flavors; f < exp->ex_flavors + listsize; f++) { Loading fs/nfsd/export.h +1 −1 Original line number Diff line number Diff line Loading @@ -54,7 +54,7 @@ struct svc_export { int ex_fsid; unsigned char * ex_uuid; /* 16 byte fsid */ struct nfsd4_fs_locations ex_fslocs; int ex_nflavors; uint32_t ex_nflavors; struct exp_flavor_info ex_flavors[MAX_SECINFO_LIST]; struct cache_detail *cd; }; Loading Loading
fs/nfsd/export.c +4 −3 Original line number Diff line number Diff line Loading @@ -438,13 +438,14 @@ fsloc_parse(char **mesg, char *buf, struct nfsd4_fs_locations *fsloc) static int secinfo_parse(char **mesg, char *buf, struct svc_export *exp) { int listsize, err; struct exp_flavor_info *f; u32 listsize; int err; err = get_int(mesg, &listsize); err = get_uint(mesg, &listsize); if (err) return err; if (listsize < 0 || listsize > MAX_SECINFO_LIST) if (listsize > MAX_SECINFO_LIST) return -EINVAL; for (f = exp->ex_flavors; f < exp->ex_flavors + listsize; f++) { Loading
fs/nfsd/export.h +1 −1 Original line number Diff line number Diff line Loading @@ -54,7 +54,7 @@ struct svc_export { int ex_fsid; unsigned char * ex_uuid; /* 16 byte fsid */ struct nfsd4_fs_locations ex_fslocs; int ex_nflavors; uint32_t ex_nflavors; struct exp_flavor_info ex_flavors[MAX_SECINFO_LIST]; struct cache_detail *cd; }; Loading