Forráskód Böngészése

NFS: Fix bad checking of max taglen in callback request

The taglen should be checked with CB_OP_TAGLEN_MAXSZ directly.

Signed-off-by: Kinglong Mee <kinglongmee@gmail.com>
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Kinglong Mee 10 éve
szülő
commit
403889c039
1 módosított fájl, 1 hozzáadás és 1 törlés
  1. 1 1
      fs/nfs/callback_xdr.c

+ 1 - 1
fs/nfs/callback_xdr.c

@@ -159,7 +159,7 @@ static __be32 decode_compound_hdr_arg(struct xdr_stream *xdr, struct cb_compound
 	if (unlikely(status != 0))
 	if (unlikely(status != 0))
 		return status;
 		return status;
 	/* We do not like overly long tags! */
 	/* We do not like overly long tags! */
-	if (hdr->taglen > CB_OP_TAGLEN_MAXSZ - 12) {
+	if (hdr->taglen > CB_OP_TAGLEN_MAXSZ) {
 		printk("NFS: NFSv4 CALLBACK %s: client sent tag of length %u\n",
 		printk("NFS: NFSv4 CALLBACK %s: client sent tag of length %u\n",
 				__func__, hdr->taglen);
 				__func__, hdr->taglen);
 		return htonl(NFS4ERR_RESOURCE);
 		return htonl(NFS4ERR_RESOURCE);