[ovs-dev] [PATCH V3 1/1] ofp-parse: Fix segfault due to bad meter n_bands

Ilya Maximets i.maximets at ovn.org
Wed Mar 31 23:44:27 UTC 2021


On 3/17/21 8:40 PM, Aaron Conole wrote:
> Flavio Fernandes <flavio at flaviof.com> writes:
> 
>> Meter commands internally use ofctl_meter_mod__ and ofctl_meter_request__ functions,
>> which have an optional parameter called str. When str is NULL, these 2 functions initialize
>> a struct with meter bands set as NULL. It also needs to set meter n_bands to 0.
>>
>> Once del-meters change in test dpif-netdev.at is added, the valgrind report on test
>> '992: dpif-netdev - meters' shows this issue:
>>
>>    Conditional jump or move depends on uninitialised value(s)
>>       at 0x473534: ofputil_put_bands (ofp-meter.c:207)
>>       by 0x473534: ofputil_encode_meter_mod (ofp-meter.c:557)
>>       by 0x40FBA2: ofctl_meter_mod__ (ovs-ofctl.c:4038)
>>       by 0x417BD3: ovs_cmdl_run_command__ (command-line.c:247)
>>       by 0x4078BA: main (ovs-ofctl.c:179)
>>     Uninitialised value was created by a stack allocation
>>       at 0x409350: ofctl_del_meters (ovs-ofctl.c:4088)
>>
>> Fixes: 3200ed5805 ("ovs-ofctl: Add meter support.")
>> Signed-off-by: Flavio Fernandes <flavio at flaviof.com>
>> ---
>> v3:
>>  - Nit: Fix commit message
>>
>> v2:
>>  - Use memset to initialize struct instead of setting individial members
>>  - Invoke del-meters in existing tests/dpif-netdev.at test
>> ---
> 
> Nice, and thanks for including the test case enhancement :)
> 
> Acked-by: Aaron Conole <aconole at redhat.com>


Thanks!  Applied to master and backported down to 2.12.

Best regards, Ilya Maximets.


More information about the dev mailing list