| From 5a02ab7c3c4580f94d13c683721039855b67cda6 Mon Sep 17 00:00:00 2001 |
| From: Mi Jinlong <mijinlong@cn.fujitsu.com> |
| Date: Fri, 11 Mar 2011 12:13:55 +0800 |
| Subject: nfsd: wrong index used in inner loop |
| |
| From: Mi Jinlong <mijinlong@cn.fujitsu.com> |
| |
| commit 5a02ab7c3c4580f94d13c683721039855b67cda6 upstream. |
| |
| We must not use dummy for index. |
| After the first index, READ32(dummy) will change dummy!!!! |
| |
| Signed-off-by: Mi Jinlong <mijinlong@cn.fujitsu.com> |
| [bfields@redhat.com: Trond points out READ_BUF alone is sufficient.] |
| Signed-off-by: J. Bruce Fields <bfields@redhat.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> |
| |
| --- |
| fs/nfsd/nfs4xdr.c | 5 +---- |
| 1 file changed, 1 insertion(+), 4 deletions(-) |
| |
| --- a/fs/nfsd/nfs4xdr.c |
| +++ b/fs/nfsd/nfs4xdr.c |
| @@ -1106,7 +1106,7 @@ nfsd4_decode_create_session(struct nfsd4 |
| |
| u32 dummy; |
| char *machine_name; |
| - int i, j; |
| + int i; |
| int nr_secflavs; |
| |
| READ_BUF(16); |
| @@ -1179,8 +1179,6 @@ nfsd4_decode_create_session(struct nfsd4 |
| READ_BUF(4); |
| READ32(dummy); |
| READ_BUF(dummy * 4); |
| - for (j = 0; j < dummy; ++j) |
| - READ32(dummy); |
| break; |
| case RPC_AUTH_GSS: |
| dprintk("RPC_AUTH_GSS callback secflavor " |
| @@ -1196,7 +1194,6 @@ nfsd4_decode_create_session(struct nfsd4 |
| READ_BUF(4); |
| READ32(dummy); |
| READ_BUF(dummy); |
| - p += XDR_QUADLEN(dummy); |
| break; |
| default: |
| dprintk("Illegal callback secflavor\n"); |