On 20.05.2013 17:54, Eric Blake wrote:
> On 05/20/2013 07:47 AM, Michal Privoznik wrote:
>> Currently, the openvzDomainSetNetwork function constructs an
>> array of strings representing a command line for VZCTL binary.
>> This is a overkill since our virCommand APIs can cover all the
>> functionality. Moreover, the function is not following our
>> structure where return value is set to -1 initially, and after
>> all operations succeeded then it is set to zero.
>> ---
>>  src/openvz/openvz_driver.c | 80 
>> +++++++++++-----------------------------------
>>  1 file changed, 19 insertions(+), 61 deletions(-)
>> @@ -919,40 +889,28 @@ openvzDomainSetNetwork(virConnectPtr conn, const char 
>> *vpsid,
>>              }
>>          }
>>  
>> -        if (!(opt = virBufferContentAndReset(&buf)))
>> -            goto no_memory;
>> +        if (!(opt = virBufferContentAndReset(&buf))) {
>> +            virReportOOMError();
>> +            goto cleanup;
>> +        }
> 
> You can skip the call to virBufferContentAndReset, if you instead do:
> 
>>  
>> -        ADD_ARG_LIT(opt) ;
>> +        /* --netif_add ifname[,mac,host_ifname,host_mac] */
>> +        virCommandAddArgList(cmd, "--netif_add", opt, NULL);
> 
> virCommandAddArg(cmd, "--netif_add");
> virCommandAddArgBuffer(cmd, opt);
> 

Even nicer! I went with this version and pushed. Thank you both guys.

Michal

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to