|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] libxl/libxl_dm.c: Enable websocket functionality
Hi all,
I have been testing the Xen 4.6.0 packages - however there is no way that I
have found to enable websocket support in any of the xen / qemu
configuration files.
The only way that I have been able to do this is with the following patch -
which works perfectly for my use case on a CentOS 6.x derived system:
-------------------------------------
diff -uNr xen-4.6.0.original/tools/libxl/libxl_dm.c
xen-4.6.0.modified/tools/libxl/libxl_dm.c
--- xen-4.6.0.original/tools/libxl/libxl_dm.c 2015-10-06
01:33:39.000000000 +1100
+++ xen-4.6.0.modified/tools/libxl/libxl_dm.c 2016-01-29
08:50:18.860371704 +1100
@@ -440,11 +440,11 @@
}
vncarg = vnc->listen;
} else {
- vncarg = libxl__sprintf(gc, "%s:%d", vnc->listen,
+ vncarg = libxl__sprintf(gc,
"%s:%d,websocket,x509=/etc/pki/xen", vnc->listen,
vnc->display);
}
} else
- vncarg = libxl__sprintf(gc, "127.0.0.1:%d", vnc->display);
+ vncarg = libxl__sprintf(gc,
"127.0.0.1:%d,websocket,x509=/etc/pki/xen", vnc->display);
if (vnc->passwd && vnc->passwd[0]) {
vncarg = libxl__sprintf(gc, "%s,password", vncarg);
@@ -806,11 +806,11 @@
}
vncarg = vnc->listen;
} else {
- vncarg = libxl__sprintf(gc, "%s:%d", vnc->listen,
+ vncarg = libxl__sprintf(gc,
"%s:%d,websocket,x509=/etc/pki/xen", vnc->listen,
vnc->display);
}
} else
- vncarg = libxl__sprintf(gc, "127.0.0.1:%d", vnc->display);
+ vncarg = libxl__sprintf(gc,
"127.0.0.1:%d,websocket,x509=/etc/pki/xen", vnc->display);
if (vnc->passwd && vnc->passwd[0]) {
vncarg = libxl__sprintf(gc, "%s,password", vncarg);
-------------------------------------
This however introduces 2 hard-coded items:
- Websocket will be enabled each time VNC is enabled.
- x509 certificate path
By default, the websocket port mirrors the vnc port = so vnc port = 5900,
then websocket port = 5700 and so on.
A better solution however in my mind would be to store the websocket & x509
path in the .cfg file for each virtual machine:
-------------------------------------
vnc=1
vncconsole=1
vnclisten='0.0.0.0'
vncpasswd='abcd1234'
vncdisplay=0
websocket=1 <- where 0 = disabled, 1 = enabled
x509={path} <- File system path to x509 files to cater for OS
system variance or user preference, would also allow for different
certificates per websocket connection if required
-------------------------------------
Best regards,
Alex
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |