All of lore.kernel.org
 help / color / mirror / Atom feed
* using xen tools with python2.6
@ 2010-09-12 14:25 Matthias Klose
  2010-09-13  8:38 ` [Pkg-xen-devel] " Ian Campbell
  0 siblings, 1 reply; 7+ messages in thread
From: Matthias Klose @ 2010-09-12 14:25 UTC (permalink / raw)
  To: xen-devel, xen

[-- Attachment #1: Type: text/plain, Size: 596 bytes --]

there are at least some syntax errors when trying to use the xen utils with 
python2.6.  The attached patch changes these string exception into ValueError's.

  - tools/python/xen/util/bugtool.py (getBugTitle)
  - tools/python/xen/xend (class XendBase): not catched
  - tools/python/xen/xm/xenapi_create.py (sxp2xmlconvert_sxp_to_xml):
    the method already raises a ValueError for similiar condition.
  - tools/python/xen/xm/main.py (xm_network_attach): not catched.

For all but maybe the first one, the replacement of the string exceptions into 
ValueError's seems to be safe.

   Matthias



[-- Attachment #2: tools-python2.6.diff --]
[-- Type: text/plain, Size: 1907 bytes --]

Description: Replace python string exceptions with ValueError exceptions
Author: Matthias Klose <doko@debian.org>
Bug-Debian: http://bugs.debian.org/585372

--- xen-4.0.1.orig/tools/python/xen/util/bugtool.py
+++ xen-4.0.1/tools/python/xen/util/bugtool.py
@@ -139,7 +139,7 @@ def getBugTitle(bug):
     finally:
         f.close()
 
-    raise "Could not find title of bug %d!" % bug
+    raise ValueError("Could not find title of bug %d!" % bug)
 
 
 def send(bug, conn, fd, filename, username, password):
--- xen-4.0.1.orig/tools/python/xen/xend/XendBase.py
+++ xen-4.0.1/tools/python/xen/xend/XendBase.py
@@ -114,7 +114,7 @@ class XendBase:
             # In OSS, ref == uuid
             return uuid
         else:
-            raise "Big Error.. TODO!"
+            raise ValueError("Big Error.. TODO!")
 
     def get_all_records(cls):
         return dict([(inst.get_uuid(), inst.get_record())
--- xen-4.0.1.orig/tools/python/xen/xm/xenapi_create.py
+++ xen-4.0.1/tools/python/xen/xm/xenapi_create.py
@@ -702,7 +702,7 @@ class sxp2xml:
                 vm.attributes['security_label'] = \
                                     security.set_security_label(sec_data[0][1][1],sec_data[0][2][1])
             except Exception, e:
-                raise "Invalid security data format: %s" % str(sec_data)
+                raise ValueError("Invalid security data format: %s" % str(sec_data))
 
         # Make the name tag
 
--- xen-4.0.1.orig/tools/python/xen/xm/main.py
+++ xen-4.0.1/tools/python/xen/xm/main.py
@@ -2616,7 +2616,7 @@ def xm_network_attach(args):
                              for ref, record in server.xenapi.network
                              .get_all_records().items()])
             if bridge not in networks.keys():
-                raise "Unknown bridge name!"
+                raise ValueError("Unknown bridge name!")
             return networks[bridge]
 
         vif_conv = {

[-- Attachment #3: Type: text/plain, Size: 138 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Pkg-xen-devel] using xen tools with python2.6
  2010-09-12 14:25 using xen tools with python2.6 Matthias Klose
@ 2010-09-13  8:38 ` Ian Campbell
  2010-09-13  8:57   ` Matthias Klose
       [not found]   ` <m2n.s.1OvAmk-0012nR@chiark.greenend.org.uk>
  0 siblings, 2 replies; 7+ messages in thread
From: Ian Campbell @ 2010-09-13  8:38 UTC (permalink / raw)
  To: Matthias Klose; +Cc: xen, xen-devel

On Sun, 2010-09-12 at 16:25 +0200, Matthias Klose wrote:
> there are at least some syntax errors when trying to use the xen utils with 
> python2.6.  The attached patch changes these string exception into ValueError's.

Thanks Matthias.

>   - tools/python/xen/util/bugtool.py (getBugTitle)
>   - tools/python/xen/xend (class XendBase): not catched
>   - tools/python/xen/xm/xenapi_create.py (sxp2xmlconvert_sxp_to_xml):
>     the method already raises a ValueError for similiar condition.
>   - tools/python/xen/xm/main.py (xm_network_attach): not catched.
> 
> For all but maybe the first one, the replacement of the string exceptions into 
> ValueError's seems to be safe.

Why is the first one potentially unsafe?

What do you mean by "not catched" here? Just that nothing catches the
exception?

Please could you provide a Signed-off-by line for upstream?

Ian.




Description: Replace python string exceptions with ValueError exceptions
Author: Matthias Klose <doko@debian.org>
Bug-Debian: http://bugs.debian.org/585372

--- xen-4.0.1.orig/tools/python/xen/util/bugtool.py
+++ xen-4.0.1/tools/python/xen/util/bugtool.py
@@ -139,7 +139,7 @@ def getBugTitle(bug):
     finally:
         f.close()
 
-    raise "Could not find title of bug %d!" % bug
+    raise ValueError("Could not find title of bug %d!" % bug)
 
 
 def send(bug, conn, fd, filename, username, password):
--- xen-4.0.1.orig/tools/python/xen/xend/XendBase.py
+++ xen-4.0.1/tools/python/xen/xend/XendBase.py
@@ -114,7 +114,7 @@ class XendBase:
             # In OSS, ref == uuid
             return uuid
         else:
-            raise "Big Error.. TODO!"
+            raise ValueError("Big Error.. TODO!")
 
     def get_all_records(cls):
         return dict([(inst.get_uuid(), inst.get_record())
--- xen-4.0.1.orig/tools/python/xen/xm/xenapi_create.py
+++ xen-4.0.1/tools/python/xen/xm/xenapi_create.py
@@ -702,7 +702,7 @@ class sxp2xml:
                 vm.attributes['security_label'] = \
                                     security.set_security_label(sec_data[0][1][1],sec_data[0][2][1])
             except Exception, e:
-                raise "Invalid security data format: %s" % str(sec_data)
+                raise ValueError("Invalid security data format: %s" % str(sec_data))
 
         # Make the name tag
 
--- xen-4.0.1.orig/tools/python/xen/xm/main.py
+++ xen-4.0.1/tools/python/xen/xm/main.py
@@ -2616,7 +2616,7 @@ def xm_network_attach(args):
                              for ref, record in server.xenapi.network
                              .get_all_records().items()])
             if bridge not in networks.keys():
-                raise "Unknown bridge name!"
+                raise ValueError("Unknown bridge name!")
             return networks[bridge]
 
         vif_conv = {

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Pkg-xen-devel] using xen tools with python2.6
  2010-09-13  8:38 ` [Pkg-xen-devel] " Ian Campbell
@ 2010-09-13  8:57   ` Matthias Klose
  2010-09-13  9:14     ` Ian Campbell
       [not found]   ` <m2n.s.1OvAmk-0012nR@chiark.greenend.org.uk>
  1 sibling, 1 reply; 7+ messages in thread
From: Matthias Klose @ 2010-09-13  8:57 UTC (permalink / raw)
  To: Ian Campbell; +Cc: xen, xen-devel

On 13.09.2010 10:38, Ian Campbell wrote:
> On Sun, 2010-09-12 at 16:25 +0200, Matthias Klose wrote:
>> there are at least some syntax errors when trying to use the xen utils with
>> python2.6.  The attached patch changes these string exception into ValueError's.
>
> Thanks Matthias.
>
>>    - tools/python/xen/util/bugtool.py (getBugTitle)
>>    - tools/python/xen/xend (class XendBase): not catched
>>    - tools/python/xen/xm/xenapi_create.py (sxp2xmlconvert_sxp_to_xml):
>>      the method already raises a ValueError for similiar condition.
>>    - tools/python/xen/xm/main.py (xm_network_attach): not catched.
>>
>> For all but maybe the first one, the replacement of the string exceptions into
>> ValueError's seems to be safe.
>
> Why is the first one potentially unsafe?

because I didn't check where it's used.

> What do you mean by "not catched" here? Just that nothing catches the
> exception?

yes, and the first one seems to match this definition too.

> Please could you provide a Signed-off-by line for upstream?

hmm, any pointers? I hope my friendly distribution packager could help ...

   Matthias

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Pkg-xen-devel] using xen tools with python2.6
  2010-09-13  8:57   ` Matthias Klose
@ 2010-09-13  9:14     ` Ian Campbell
  2010-09-14 15:55       ` Matthias Klose
  0 siblings, 1 reply; 7+ messages in thread
From: Ian Campbell @ 2010-09-13  9:14 UTC (permalink / raw)
  To: Matthias Klose; +Cc: xen, xen-devel

On Mon, 2010-09-13 at 10:57 +0200, Matthias Klose wrote:
> On 13.09.2010 10:38, Ian Campbell wrote:
> > On Sun, 2010-09-12 at 16:25 +0200, Matthias Klose wrote:
> >> there are at least some syntax errors when trying to use the xen utils with
> >> python2.6.  The attached patch changes these string exception into ValueError's.
> >
> > Thanks Matthias.
> >
> >>    - tools/python/xen/util/bugtool.py (getBugTitle)
> >>    - tools/python/xen/xend (class XendBase): not catched
> >>    - tools/python/xen/xm/xenapi_create.py (sxp2xmlconvert_sxp_to_xml):
> >>      the method already raises a ValueError for similiar condition.
> >>    - tools/python/xen/xm/main.py (xm_network_attach): not catched.
> >>
> >> For all but maybe the first one, the replacement of the string exceptions into
> >> ValueError's seems to be safe.
> >
> > Why is the first one potentially unsafe?
> 
> because I didn't check where it's used.
> 
> > What do you mean by "not catched" here? Just that nothing catches the
> > exception?
> 
> yes, and the first one seems to match this definition too.

I suspect so too, I think these changes are good.
> 
> > Please could you provide a Signed-off-by line for upstream?
> 
> hmm, any pointers? I hope my friendly distribution packager could help ...

As with the Linux kernel Xen requires that contributions are signed off
to indicate that the code is suitable (copyright-wise etc) for inclusion
in Xen. e.g.
   Signed-off-by: Ian Campbell <ian.campbell@eu.citrix.com>
except with your name and email address.

You can find the precise meaning in the Linux
upstream kernel tree (Documentation/SubmittingPatches, copy below).

Ian.

       Developer's Certificate of Origin 1.1

        By making a contribution to this project, I certify that:

        (a) The contribution was created in whole or in part by me and I
            have the right to submit it under the open source license
            indicated in the file; or

        (b) The contribution is based upon previous work that, to the best
            of my knowledge, is covered under an appropriate open source
            license and I have the right under that license to submit that
            work with modifications, whether created in whole or in part
            by me, under the same open source license (unless I am
            permitted to submit under a different license), as indicated
            in the file; or

        (c) The contribution was provided directly to me by some other
            person who certified (a), (b) or (c) and I have not modified
            it.

        (d) I understand and agree that this project and the contribution
            are public and that a record of the contribution (including all
            personal information I submit with it, including my sign-off) is
            maintained indefinitely and may be redistributed consistent with
            this project or the open source license(s) involved.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Pkg-xen-devel] using xen tools with python2.6
  2010-09-13  9:14     ` Ian Campbell
@ 2010-09-14 15:55       ` Matthias Klose
  0 siblings, 0 replies; 7+ messages in thread
From: Matthias Klose @ 2010-09-14 15:55 UTC (permalink / raw)
  To: Ian Campbell; +Cc: xen, xen-devel

[-- Attachment #1: Type: text/plain, Size: 1781 bytes --]

On 13.09.2010 11:14, Ian Campbell wrote:
> On Mon, 2010-09-13 at 10:57 +0200, Matthias Klose wrote:
>> On 13.09.2010 10:38, Ian Campbell wrote:
>>> On Sun, 2010-09-12 at 16:25 +0200, Matthias Klose wrote:
>>>> there are at least some syntax errors when trying to use the xen utils with
>>>> python2.6.  The attached patch changes these string exception into ValueError's.
>>>
>>> Thanks Matthias.
>>>
>>>>     - tools/python/xen/util/bugtool.py (getBugTitle)
>>>>     - tools/python/xen/xend (class XendBase): not catched
>>>>     - tools/python/xen/xm/xenapi_create.py (sxp2xmlconvert_sxp_to_xml):
>>>>       the method already raises a ValueError for similiar condition.
>>>>     - tools/python/xen/xm/main.py (xm_network_attach): not catched.
>>>>
>>>> For all but maybe the first one, the replacement of the string exceptions into
>>>> ValueError's seems to be safe.
>>>
>>> Why is the first one potentially unsafe?
>>
>> because I didn't check where it's used.
>>
>>> What do you mean by "not catched" here? Just that nothing catches the
>>> exception?
>>
>> yes, and the first one seems to match this definition too.
>
> I suspect so too, I think these changes are good.
>>
>>> Please could you provide a Signed-off-by line for upstream?
>>
>> hmm, any pointers? I hope my friendly distribution packager could help ...
>
> As with the Linux kernel Xen requires that contributions are signed off
> to indicate that the code is suitable (copyright-wise etc) for inclusion
> in Xen. e.g.
>     Signed-off-by: Ian Campbell<ian.campbell@eu.citrix.com>
> except with your name and email address.
>
> You can find the precise meaning in the Linux
> upstream kernel tree (Documentation/SubmittingPatches, copy below).

thanks, attached the patch with this line added.

    Matthias


[-- Attachment #2: tools-python2.6.diff --]
[-- Type: text/plain, Size: 1955 bytes --]

Description: Replace python string exceptions with ValueError exceptions
Author: Matthias Klose <doko@debian.org>
Bug-Debian: http://bugs.debian.org/585372
Signed-off-by: Matthias Klose <doko@debian.org>

--- xen-4.0.1.orig/tools/python/xen/util/bugtool.py
+++ xen-4.0.1/tools/python/xen/util/bugtool.py
@@ -139,7 +139,7 @@ def getBugTitle(bug):
     finally:
         f.close()
 
-    raise "Could not find title of bug %d!" % bug
+    raise ValueError("Could not find title of bug %d!" % bug)
 
 
 def send(bug, conn, fd, filename, username, password):
--- xen-4.0.1.orig/tools/python/xen/xend/XendBase.py
+++ xen-4.0.1/tools/python/xen/xend/XendBase.py
@@ -114,7 +114,7 @@ class XendBase:
             # In OSS, ref == uuid
             return uuid
         else:
-            raise "Big Error.. TODO!"
+            raise ValueError("Big Error.. TODO!")
 
     def get_all_records(cls):
         return dict([(inst.get_uuid(), inst.get_record())
--- xen-4.0.1.orig/tools/python/xen/xm/xenapi_create.py
+++ xen-4.0.1/tools/python/xen/xm/xenapi_create.py
@@ -702,7 +702,7 @@ class sxp2xml:
                 vm.attributes['security_label'] = \
                                     security.set_security_label(sec_data[0][1][1],sec_data[0][2][1])
             except Exception, e:
-                raise "Invalid security data format: %s" % str(sec_data)
+                raise ValueError("Invalid security data format: %s" % str(sec_data))
 
         # Make the name tag
 
--- xen-4.0.1.orig/tools/python/xen/xm/main.py
+++ xen-4.0.1/tools/python/xen/xm/main.py
@@ -2616,7 +2616,7 @@ def xm_network_attach(args):
                              for ref, record in server.xenapi.network
                              .get_all_records().items()])
             if bridge not in networks.keys():
-                raise "Unknown bridge name!"
+                raise ValueError("Unknown bridge name!")
             return networks[bridge]
 
         vif_conv = {

[-- Attachment #3: Type: text/plain, Size: 138 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Pkg-xen-devel] using xen tools with python2.6
       [not found]   ` <m2n.s.1OvAmk-0012nR@chiark.greenend.org.uk>
@ 2010-09-14 16:46     ` Ian Jackson
  2010-09-15  8:38       ` Ian Campbell
  0 siblings, 1 reply; 7+ messages in thread
From: Ian Jackson @ 2010-09-14 16:46 UTC (permalink / raw)
  To: Matthias Klose; +Cc: xen, xen-devel, Ian Campbell

Matthias Klose writes ("[Xen-devel] Re: [Pkg-xen-devel] using xen tools with python2.6"):
> On 13.09.2010 10:38, Ian Campbell wrote:
> > Why is the first one potentially unsafe?
> 
> because I didn't check where it's used.

I think, to be honest, that the exception and error handling in the
Xen python code is bad enough already that this patch is very unlikely
to make things worse.  Particularly since you've diligently checked
all the occurrences in xend and xm itself.

So I have applied your patch.

Thanks,
Ian.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Re: [Pkg-xen-devel] using xen tools with python2.6
  2010-09-14 16:46     ` Ian Jackson
@ 2010-09-15  8:38       ` Ian Campbell
  0 siblings, 0 replies; 7+ messages in thread
From: Ian Campbell @ 2010-09-15  8:38 UTC (permalink / raw)
  To: Ian Jackson; +Cc: xen, Matthias Klose, xen-devel

On Tue, 2010-09-14 at 17:46 +0100, Ian Jackson wrote:
> Matthias Klose writes ("[Xen-devel] Re: [Pkg-xen-devel] using xen tools with python2.6"):
> > On 13.09.2010 10:38, Ian Campbell wrote:
> > > Why is the first one potentially unsafe?
> > 
> > because I didn't check where it's used.
> 
> I think, to be honest, that the exception and error handling in the
> Xen python code is bad enough already that this patch is very unlikely
> to make things worse.  Particularly since you've diligently checked
> all the occurrences in xend and xm itself.
> 
> So I have applied your patch.

Ack, I agree.

Thanks Matthias.

Ian.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2010-09-15  8:38 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-12 14:25 using xen tools with python2.6 Matthias Klose
2010-09-13  8:38 ` [Pkg-xen-devel] " Ian Campbell
2010-09-13  8:57   ` Matthias Klose
2010-09-13  9:14     ` Ian Campbell
2010-09-14 15:55       ` Matthias Klose
     [not found]   ` <m2n.s.1OvAmk-0012nR@chiark.greenend.org.uk>
2010-09-14 16:46     ` Ian Jackson
2010-09-15  8:38       ` Ian Campbell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.