Re: [libvirt] [PATCH 6/6] conf: Use virXMLFormatElement to format disk source network

2017-09-15 Thread John Ferlan


On 09/15/2017 12:10 AM, Peter Krempa wrote:
> On Thu, Sep 14, 2017 at 14:03:10 -0400, John Ferlan wrote:
>> Commit id 'e02ff020cac' neglected to use the attrBuf and childBuf
>> in the virDomainDiskSourceFormatNetwork call.
>>
>> So make the necessary alterations to allow usage.
>>
>> Signed-off-by: John Ferlan 
>> ---
>>  src/conf/domain_conf.c | 34 ++
>>  1 file changed, 14 insertions(+), 20 deletions(-)
>>
>> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
>> index 09c5bc1ae..a8771a3a4 100644
>> --- a/src/conf/domain_conf.c
>> +++ b/src/conf/domain_conf.c
>> @@ -21674,13 +21674,14 @@ virDomainSourceDefFormatSeclabel(virBufferPtr buf,
>>  
>>  
>>  static int
>> -virDomainDiskSourceFormatNetwork(virBufferPtr buf,
>> +virDomainDiskSourceFormatNetwork(virBufferPtr attrBuf,
>> + virBufferPtr childBuf,
>>   virStorageSourcePtr src)
>>  {
>>  size_t n;
>>  char *path = NULL;
>>  
>> -virBufferAsprintf(buf, "> +virBufferAsprintf(attrBuf, " protocol='%s'",
>>virStorageNetProtocolTypeToString(src->protocol));
>>  
>>  if (src->volume) {
>> @@ -21688,36 +21689,29 @@ virDomainDiskSourceFormatNetwork(virBufferPtr buf,
>>  return -1;
>>  }
>>  
>> -virBufferEscapeString(buf, " name='%s'", path ? path : src->path);
>> +virBufferEscapeString(attrBuf, " name='%s'", path ? path : src->path);
>>  
>>  VIR_FREE(path);
>>  
>> -if (src->nhosts == 0 && !src->snapshot && !src->configFile) {
>> -virBufferAddLit(buf, "/>\n");
>> -} else {
>> -virBufferAddLit(buf, ">\n");
>> -virBufferAdjustIndent(buf, 2);
>> +if (src->nhosts > 0 || src->snapshot || src->configFile) {
> 
> This condition isn't necessary as well after these adjustments, drop it
> and un-indent the block below.
> 

Oh yeah right... The EscapeString's won't format NULL


Tks-

John
>>  
>>  for (n = 0; n < src->nhosts; n++) {
>> -virBufferAddLit(buf, "> -virBufferEscapeString(buf, " name='%s'", src->hosts[n].name);
>> +virBufferAddLit(childBuf, "> +virBufferEscapeString(childBuf, " name='%s'", 
>> src->hosts[n].name);
>>  
>>  if (src->hosts[n].port)
>> -virBufferAsprintf(buf, " port='%u'", src->hosts[n].port);
>> +virBufferAsprintf(childBuf, " port='%u'", 
>> src->hosts[n].port);
>>  
>>  if (src->hosts[n].transport)
>> -virBufferAsprintf(buf, " transport='%s'",
>> +virBufferAsprintf(childBuf, " transport='%s'",
>>
>> virStorageNetHostTransportTypeToString(src->hosts[n].transport));
>>  
>> -virBufferEscapeString(buf, " socket='%s'", 
>> src->hosts[n].socket);
>> -virBufferAddLit(buf, "/>\n");
>> +virBufferEscapeString(childBuf, " socket='%s'", 
>> src->hosts[n].socket);
>> +virBufferAddLit(childBuf, "/>\n");
>>  }
>>  
>> -virBufferEscapeString(buf, "\n", 
>> src->snapshot);
>> -virBufferEscapeString(buf, "\n", 
>> src->configFile);
>> -
>> -virBufferAdjustIndent(buf, -2);
>> -virBufferAddLit(buf, "\n");
>> +virBufferEscapeString(childBuf, "\n", 
>> src->snapshot);
>> +virBufferEscapeString(childBuf, "\n", 
>> src->configFile);
>>  }
>>  
>>  return 0;
> 
> ACK with the tweak above.
> 

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


Re: [libvirt] [PATCH 6/6] conf: Use virXMLFormatElement to format disk source network

2017-09-14 Thread Peter Krempa
On Thu, Sep 14, 2017 at 14:03:10 -0400, John Ferlan wrote:
> Commit id 'e02ff020cac' neglected to use the attrBuf and childBuf
> in the virDomainDiskSourceFormatNetwork call.
> 
> So make the necessary alterations to allow usage.
> 
> Signed-off-by: John Ferlan 
> ---
>  src/conf/domain_conf.c | 34 ++
>  1 file changed, 14 insertions(+), 20 deletions(-)
> 
> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
> index 09c5bc1ae..a8771a3a4 100644
> --- a/src/conf/domain_conf.c
> +++ b/src/conf/domain_conf.c
> @@ -21674,13 +21674,14 @@ virDomainSourceDefFormatSeclabel(virBufferPtr buf,
>  
>  
>  static int
> -virDomainDiskSourceFormatNetwork(virBufferPtr buf,
> +virDomainDiskSourceFormatNetwork(virBufferPtr attrBuf,
> + virBufferPtr childBuf,
>   virStorageSourcePtr src)
>  {
>  size_t n;
>  char *path = NULL;
>  
> -virBufferAsprintf(buf, " +virBufferAsprintf(attrBuf, " protocol='%s'",
>virStorageNetProtocolTypeToString(src->protocol));
>  
>  if (src->volume) {
> @@ -21688,36 +21689,29 @@ virDomainDiskSourceFormatNetwork(virBufferPtr buf,
>  return -1;
>  }
>  
> -virBufferEscapeString(buf, " name='%s'", path ? path : src->path);
> +virBufferEscapeString(attrBuf, " name='%s'", path ? path : src->path);
>  
>  VIR_FREE(path);
>  
> -if (src->nhosts == 0 && !src->snapshot && !src->configFile) {
> -virBufferAddLit(buf, "/>\n");
> -} else {
> -virBufferAddLit(buf, ">\n");
> -virBufferAdjustIndent(buf, 2);
> +if (src->nhosts > 0 || src->snapshot || src->configFile) {

This condition isn't necessary as well after these adjustments, drop it
and un-indent the block below.

>  
>  for (n = 0; n < src->nhosts; n++) {
> -virBufferAddLit(buf, " -virBufferEscapeString(buf, " name='%s'", src->hosts[n].name);
> +virBufferAddLit(childBuf, " +virBufferEscapeString(childBuf, " name='%s'", 
> src->hosts[n].name);
>  
>  if (src->hosts[n].port)
> -virBufferAsprintf(buf, " port='%u'", src->hosts[n].port);
> +virBufferAsprintf(childBuf, " port='%u'", 
> src->hosts[n].port);
>  
>  if (src->hosts[n].transport)
> -virBufferAsprintf(buf, " transport='%s'",
> +virBufferAsprintf(childBuf, " transport='%s'",
>
> virStorageNetHostTransportTypeToString(src->hosts[n].transport));
>  
> -virBufferEscapeString(buf, " socket='%s'", src->hosts[n].socket);
> -virBufferAddLit(buf, "/>\n");
> +virBufferEscapeString(childBuf, " socket='%s'", 
> src->hosts[n].socket);
> +virBufferAddLit(childBuf, "/>\n");
>  }
>  
> -virBufferEscapeString(buf, "\n", src->snapshot);
> -virBufferEscapeString(buf, "\n", src->configFile);
> -
> -virBufferAdjustIndent(buf, -2);
> -virBufferAddLit(buf, "\n");
> +virBufferEscapeString(childBuf, "\n", 
> src->snapshot);
> +virBufferEscapeString(childBuf, "\n", 
> src->configFile);
>  }
>  
>  return 0;

ACK with the tweak above.


signature.asc
Description: PGP signature
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

[libvirt] [PATCH 6/6] conf: Use virXMLFormatElement to format disk source network

2017-09-14 Thread John Ferlan
Commit id 'e02ff020cac' neglected to use the attrBuf and childBuf
in the virDomainDiskSourceFormatNetwork call.

So make the necessary alterations to allow usage.

Signed-off-by: John Ferlan 
---
 src/conf/domain_conf.c | 34 ++
 1 file changed, 14 insertions(+), 20 deletions(-)

diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 09c5bc1ae..a8771a3a4 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -21674,13 +21674,14 @@ virDomainSourceDefFormatSeclabel(virBufferPtr buf,
 
 
 static int
-virDomainDiskSourceFormatNetwork(virBufferPtr buf,
+virDomainDiskSourceFormatNetwork(virBufferPtr attrBuf,
+ virBufferPtr childBuf,
  virStorageSourcePtr src)
 {
 size_t n;
 char *path = NULL;
 
-virBufferAsprintf(buf, "protocol));
 
 if (src->volume) {
@@ -21688,36 +21689,29 @@ virDomainDiskSourceFormatNetwork(virBufferPtr buf,
 return -1;
 }
 
-virBufferEscapeString(buf, " name='%s'", path ? path : src->path);
+virBufferEscapeString(attrBuf, " name='%s'", path ? path : src->path);
 
 VIR_FREE(path);
 
-if (src->nhosts == 0 && !src->snapshot && !src->configFile) {
-virBufferAddLit(buf, "/>\n");
-} else {
-virBufferAddLit(buf, ">\n");
-virBufferAdjustIndent(buf, 2);
+if (src->nhosts > 0 || src->snapshot || src->configFile) {
 
 for (n = 0; n < src->nhosts; n++) {
-virBufferAddLit(buf, "hosts[n].name);
+virBufferAddLit(childBuf, "hosts[n].name);
 
 if (src->hosts[n].port)
-virBufferAsprintf(buf, " port='%u'", src->hosts[n].port);
+virBufferAsprintf(childBuf, " port='%u'", src->hosts[n].port);
 
 if (src->hosts[n].transport)
-virBufferAsprintf(buf, " transport='%s'",
+virBufferAsprintf(childBuf, " transport='%s'",
   
virStorageNetHostTransportTypeToString(src->hosts[n].transport));
 
-virBufferEscapeString(buf, " socket='%s'", src->hosts[n].socket);
-virBufferAddLit(buf, "/>\n");
+virBufferEscapeString(childBuf, " socket='%s'", 
src->hosts[n].socket);
+virBufferAddLit(childBuf, "/>\n");
 }
 
-virBufferEscapeString(buf, "\n", src->snapshot);
-virBufferEscapeString(buf, "\n", src->configFile);
-
-virBufferAdjustIndent(buf, -2);
-virBufferAddLit(buf, "\n");
+virBufferEscapeString(childBuf, "\n", 
src->snapshot);
+virBufferEscapeString(childBuf, "\n", 
src->configFile);
 }
 
 return 0;
@@ -21766,7 +21760,7 @@ virDomainDiskSourceFormatInternal(virBufferPtr buf,
 break;
 
 case VIR_STORAGE_TYPE_NETWORK:
-if (virDomainDiskSourceFormatNetwork(buf, src) < 0)
+if (virDomainDiskSourceFormatNetwork(, , src) < 0)
 goto error;
 break;
 
-- 
2.13.5

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