Chuck Lever fc788f64f1 nfsd: Limit end of page list when decoding NFSv4 WRITE
When processing an NFSv4 WRITE operation, argp->end should never
point past the end of the data in the final page of the page list.
Otherwise, nfsd4_decode_compound can walk into uninitialized memory.

More critical, nfsd4_decode_write is failing to increment argp->pagelen
when it increments argp->pagelist.  This can cause later xdr decoders
to assume more data is available than really is, which can cause server
crashes on malformed requests.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Cc: stable@vger.kernel.org
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
2017-08-24 18:05:30 -04:00
..
2017-07-11 06:08:58 -04:00
2017-07-11 06:06:17 -04:00
2017-07-10 14:29:45 -07:00
2017-07-13 12:30:43 -04:00
2017-07-06 16:24:35 -07:00
2017-07-13 14:35:37 -07:00
2017-07-07 20:09:10 -04:00
2017-07-06 03:31:46 -04:00
2017-07-06 03:31:46 -04:00
2017-07-14 22:57:32 -07:00
2017-04-17 12:52:27 -04:00
2017-07-07 19:38:17 -07:00
2017-07-07 13:48:18 -07:00
2017-07-14 22:57:32 -07:00
2016-12-14 23:48:11 -05:00
2017-06-22 11:44:55 -04:00
2017-07-06 03:27:09 -04:00
2017-07-06 03:27:09 -04:00
2017-05-08 17:15:12 -07:00
2017-06-09 16:28:01 -04:00
2017-07-11 06:09:21 -04:00
2017-07-05 18:44:23 -04:00