RFR 8007606 : Handle realloc() failure in unix/native/libnet/net_util_md.c correctly

Ivan Gerasimov ivan.gerasimov at oracle.com
Tue Jan 15 19:53:26 UTC 2019


Hello!

Do you think it is good to go now?

With kind regards,

Ivan


On 1/11/19 11:30 AM, Ivan Gerasimov wrote:
> Good catch, thank you!
>
> Indeed, if we don't reset localifsSize then we could end up accessing 
> already freed memory, which is worse than just a memory leak.
>
> Here's the updated webrev:
>
> http://cr.openjdk.java.net/~igerasim/8007606/01/webrev/
>
> With kind regards,
> Ivan
>
> On 1/11/19 4:43 AM, Baesken, Matthias wrote:
>> Hi Ivan,
>>
>> Shouldn't you reset    localifsSize to 0   in case of  the early 
>> return ?  The comment says  localifsSize is the size of the array so 
>> the size of the array is 0 again after freeing.
>>
>>
>> 637 static struct localinterface *localifs = 0;
>>   638 static int localifsSize = 0;    /* size of array */
>>   639 static int nifs = 0;            /* number of entries used in 
>> array */
>>
>>     ...
>>
>> 679             if (localifsTemp == 0) {
>>   680                 free(localifs);
>>   681                 localifs = 0;
>>   682                 nifs = 0;
>>   683                 fclose(f);
>>   684                 return;
>>   685             }
>>
>>
>>
>>
>> Best regards, Matthias
>>
>>
>>
>>> Date: Thu, 10 Jan 2019 20:29:08 -0800
>>> From: Ivan Gerasimov <ivan.gerasimov at oracle.com>
>>> To: "net-dev at openjdk.java.net" <net-dev at openjdk.java.net>
>>> Subject: RFR 8007606 : Handle realloc() failure in
>>>     unix/native/libnet/net_util_md.c correctly
>>> Message-ID: <3dc3c26b-fea7-2538-2c7a-bfa623f2fc86 at oracle.com>
>>> Content-Type: text/plain; charset=utf-8; format=flowed
>>>
>>> Hello!
>>>
>>> This seems to be the last use of realloc() without proper handling of a
>>> failure.
>>>
>>> Would you please help review a trivial fix?
>>>
>>> BUGURL: https://bugs.openjdk.java.net/browse/JDK-8007606
>>> WEBREV: http://cr.openjdk.java.net/~igerasim/8007606/00/webrev/
>>>
>>> Thanks in advance!
>>>
>>> -- 
>>> With kind regards,
>>> Ivan Gerasimov
>>>
>>>
>>
>

-- 
With kind regards,
Ivan Gerasimov



More information about the net-dev mailing list