Do not trust FetchData length from fileservers
authorAndrew Deason <adeason@sinenomine.net>
Thu, 17 Dec 2009 20:59:44 +0000 (14:59 -0600)
committerDerrick Brashear <shadow|account-1000005@unknown>
Fri, 18 Dec 2009 20:58:11 +0000 (12:58 -0800)
commitc7b92a3018044f7aca4d9a77644e5c06ef64d1e9
tree624bf2d12d4ea28264ca33fd88a5bdbc45632687
parent244397335e41bb83e4dba12bc30a7b4ec6fc6218
Do not trust FetchData length from fileservers

Currently the Unix CM implicitly trusts that the length from a FetchData
request from a fileserver will always be less than the requested length.
If the fileserver sends more data than requested, we can use up more
cache space than we intended, possibly exceeding the cacheinfo cache
limits.

Add a check for this, and return EIO to the caller if the fileserver
responds with too much data.

Change-Id: I413393a7bacbf207332d7f904cf396c79b77b6b5
Reviewed-on: http://gerrit.openafs.org/996
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
src/afs/afs_fetchstore.c