Re: [PATCH] 9p: validate PDU length

From: Tomas Bortoli
Date: Wed Jul 25 2018 - 06:50:43 EST


On 07/25/2018 06:11 AM, Dominique Martinet wrote:
> Tomas Bortoli wrote on Mon, Jul 23, 2018:
>> diff --git a/net/9p/client.c b/net/9p/client.c
>> index 18c5271910dc..92240ccf476b 100644
>> --- a/net/9p/client.c
>> +++ b/net/9p/client.c
>> @@ -524,6 +525,12 @@ static int p9_check_errors(struct p9_client *c, struct p9_req_t *req)
>> int ecode;
>>
>> err = p9_parse_header(req->rc, NULL, &type, NULL, 0);
>> + if (req->rc->size >= c->msize) {
>
> I was looking at this again, I think it's more appropriate to use
> req->rc->capacity at this point like you did in the first version of the
> patch.
>
> I had suggested msize in the common p9_parse_header function because
> that'd let us accept zc requests where the size in the pdu could be
> bigger than capacity, but this isn't the case in p9_check_errors.
>
> If you're ok with this I'll edit your commit directly, this is less work
> for me than having to check a new patch.
>
> Thanks,
>

Yes sure, just forward me the changes later.

Tomas