Xen 
 
Home About Xen.org Xen Xen Summit Wiki Mailing List Bug Tracker Xen Downloads
 
   
 

xen-devel

[Xen-devel] [PATCH] Fix X11 authorization problem when VMX domain use SD

To: Xen Mailing List <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] [PATCH] Fix X11 authorization problem when VMX domain use SDL
From: Hiromichi Itou <ito@xxxxxxxx>
Date: Tue, 27 Dec 2005 20:21:07 +0900
Delivery-date: Tue, 27 Dec 2005 11:25:08 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Hi,

This patch fixes an X11 authorization problem when VMX domain use SDL.

In my environment, the VMX domain that used SDL did not operate.
Because xend has not passed to qemu-dm a necessary environment variable for
X11 authorization.

 I was using xhost command as workaround until I made this patch.
ex.
xhost local: (this command add non-network local connections to access control list)

But this workaround is not good for security.

---
Begi.net (http://Begi.net)
Director of Engineering Department   
Hiromichi Itou (ito@xxxxxxxx)

diff -r 829517be689f tools/python/xen/xend/image.py
--- a/tools/python/xen/xend/image.py    Fri Dec 23 15:42:46 2005
+++ b/tools/python/xen/xend/image.py    Tue Dec 27 19:21:19 2005
@@ -194,6 +194,7 @@
         if not self.device_model:
             raise VmError("vmx: missing device model")
         self.display = sxp.child_value(imageConfig, 'display')
+        self.xauthority = sxp.child_value(imageConfig, 'xauthority')

         self.vm.storeVm(("image/dmargs", " ".join(self.dmargs)),
                         ("image/device-model", self.device_model),
@@ -340,6 +341,8 @@
         env = dict(os.environ)
         if self.display:
             env['DISPLAY'] = self.display
+        if self.xauthority:
+            env['XAUTHORITY'] = self.xauthority
log.info("spawning device models: %s %s", self.device_model, args) self.pid = os.spawnve(os.P_NOWAIT, self.device_model, args, env)
         log.info("device model pid: %d", self.pid)
diff -r 829517be689f tools/python/xen/xm/create.py
--- a/tools/python/xen/xm/create.py     Fri Dec 23 15:42:46 2005
+++ b/tools/python/xen/xm/create.py     Tue Dec 27 19:21:19 2005
@@ -387,6 +387,10 @@
 gopts.var('display', val='DISPLAY',
           fn=set_value, default=None,
           use="X11 display to use")
+
+gopts.var('xauthority', val='XAUTHORITY',
+          fn=set_value, default=None,
+          use="X11 Authority to use")


 def err(msg):
@@ -526,7 +530,8 @@
     """
     args = [ 'device_model', 'vcpus', 'cdrom', 'boot', 'fda', 'fdb',
'localtime', 'serial', 'stdvga', 'isa', 'nographic', 'audio',
-             'vnc', 'vncviewer', 'sdl', 'display', 'ne2000', 'lapic']
+             'vnc', 'vncviewer', 'sdl', 'display', 'ne2000', 'lapic' ,
+            'xauthority' ]
     for a in args:
         if (vals.__dict__[a]):
             config_image.append([a, vals.__dict__[a]])
@@ -801,6 +806,9 @@
     if not gopts.vals.display:
         gopts.vals.display = os.getenv("DISPLAY")

+    if not gopts.vals.xauthority:
+        gopts.vals.xauthority = os.getenv("XAUTHORITY")
+
     # Process remaining args as config variables.
     for arg in args:
         if '=' in arg:


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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] [PATCH] Fix X11 authorization problem when VMX domain use SDL, Hiromichi Itou <=