[libvirt] [PATCH 3/4] nwfilter: Push configFile building into LoadConfig

Cole Robinson crobinso at redhat.com
Sat Apr 30 19:19:13 UTC 2016


On 04/30/2016 09:32 AM, John Ferlan wrote:
> 
> 
> On 04/24/2016 07:22 PM, Cole Robinson wrote:
>> This matches the pattern used for network object APIs, and we want
>> configDir in LoadConfig for upcoming patches
>> ---
>>  src/conf/nwfilter_conf.c | 45 ++++++++++++++++++++++++---------------------
>>  1 file changed, 24 insertions(+), 21 deletions(-)
>>
>> diff --git a/src/conf/nwfilter_conf.c b/src/conf/nwfilter_conf.c
>> index d02bbff..d8e83f0 100644
>> --- a/src/conf/nwfilter_conf.c
>> +++ b/src/conf/nwfilter_conf.c
>> @@ -3156,30 +3156,39 @@ virNWFilterObjAssignDef(virNWFilterObjListPtr nwfilters,
>>  
>>  
>>  static virNWFilterObjPtr
>> -virNWFilterObjLoad(virNWFilterObjListPtr nwfilters,
>> -                   const char *file,
>> -                   const char *path)
>> +virNWFilterLoadConfig(virNWFilterObjListPtr nwfilters,
>> +                      const char *configDir,
>> +                      const char *name)
>>  {
>> -    virNWFilterDefPtr def;
>> +    virNWFilterDefPtr def = NULL;
>>      virNWFilterObjPtr nwfilter;
>> +    char *configFile = NULL;
>>  
>> -    if (!(def = virNWFilterDefParseFile(path)))
>> -        return NULL;
>> +    if (!(configFile = virFileBuildPath(configDir, name, ".xml")))
>> +        goto error;
>>  
>> -    if (!virFileMatchesNameSuffix(file, def->name, ".xml")) {
>> +    if (!(def = virNWFilterDefParseFile(configFile)))
>> +        goto error;
>> +
>> +    if (STRNEQ(name, def->name)) {
>>          virReportError(VIR_ERR_XML_ERROR,
>> -                       _("network filter config filename '%s' does not match name '%s'"),
>> -                       path, def->name);
>> -        virNWFilterDefFree(def);
>> -        return NULL;
>> +                       _("network filter config filename '%s' "
>> +                         "does not match name '%s'"),
>> +                       configFile, def->name);
>> +        goto error;
>>      }
>>  
>>      if (!(nwfilter = virNWFilterObjAssignDef(nwfilters, def))) {
>> -        virNWFilterDefFree(def);
>> -        return NULL;
>> +        goto error;
>>      }
> 
> Make sure you run 'syntax-check'... A window I had used for compiles was
> obscured and I see the syntax-check fails because of the { } and one
> line goto error.
> 

Yeah I just noticed that after your first review :/ Not sure how I keep
missing syntax-check ...

I've queued this series for after the release (with that bit fixed), thanks

- Cole




More information about the libvir-list mailing list