From mboxrd@z Thu Jan 1 00:00:00 1970 From: ZhouPeng Subject: [PATCH] tools/libxl: prepare vnc options for dm_args in libxl__build_device_model_args_new Date: Wed, 20 Apr 2011 14:30:36 +0800 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=bcaec539641c40d0fb04a153c3ac Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: "ian.jackson" , Stefano Stabellini Cc: "Xen-Devel (E-mail)" List-Id: xen-devel@lists.xenproject.org --bcaec539641c40d0fb04a153c3ac Content-Type: text/plain; charset=ISO-8859-1 This pacth clean up vnc options preparing code for xen-upstream-qemu. Add password option which allows you to use vncpasswd auth by xl. Signed-off-by: Zhou Peng tools/libxl: prepare vnc options for dm_args in libxl__build_device_model_args_new diff -r 569abaf2cc12 tools/libxl/libxl_dm.c --- a/tools/libxl/libxl_dm.c Tue Apr 19 13:17:14 2011 +0800 +++ b/tools/libxl/libxl_dm.c Wed Apr 20 13:47:42 2011 +0800 @@ -208,11 +208,7 @@ static char ** libxl__build_device_model if (info->vnc || info->vncdisplay || info->vnclisten || info->vncunused) { int display = 0; const char *listen = "127.0.0.1"; - - if (info->vncpasswd && info->vncpasswd[0]) { - assert(!"missing code for supplying vnc password to qemu"); - } - flexarray_append(dm_args, "-vnc"); + char *vncoptions = NULL; if (info->vncdisplay) { display = info->vncdisplay; @@ -224,13 +220,17 @@ static char ** libxl__build_device_model } if (strchr(listen, ':') != NULL) - flexarray_append(dm_args, - libxl__sprintf(gc, "%s%s", listen, - info->vncunused ? ",to=99" : "")); + vncoptions = libxl__sprintf(gc, + "%s%s", listen, info->vncunused ? ",to=99" : ""); else - flexarray_append(dm_args, - libxl__sprintf(gc, "%s:%d%s", listen, display, - info->vncunused ? ",to=99" : "")); + vncoptions = libxl__sprintf(gc, "%s:%d%s", listen, display, + info->vncunused ? ",to=99" : ""); + + if (info->vncpasswd && info->vncpasswd[0]) + vncoptions = libxl__sprintf(gc, "%s,password", vncoptions); + + flexarray_append(dm_args, "-vnc"); + flexarray_append(dm_args, vncoptions); } if (info->sdl) { flexarray_append(dm_args, "-sdl"); -- Zhou Peng Operating System Technology Group Institute of Software, the Chinese Academy of Sciences (ISCAS) --bcaec539641c40d0fb04a153c3ac Content-Type: text/x-patch; charset=US-ASCII; name="tools-libxl-vncoptions.diff" Content-Disposition: attachment; filename="tools-libxl-vncoptions.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gmpvsjmu0 VGhpcyBwYWN0aCBjbGVhbiB1cCB2bmMgb3B0aW9ucyBwcmVwYXJpbmcgY29kZSBmb3IgeGVuLXVw c3RyZWFtLXFlbXUuCkFkZCBwYXNzd29yZCBvcHRpb24gd2hpY2ggYWxsb3dzIHlvdSB0byB1c2Ug dm5jcGFzc3dkIGF1dGggYnkgeGwuCgoKU2lnbmVkLW9mZi1ieTogWmhvdSBQZW5nIDx6aG91cGVu Z0BuZnMuaXNjYXMuYWMuY24+Cgp0b29scy9saWJ4bDogcHJlcGFyZSB2bmMgb3B0aW9ucyBmb3Ig ZG1fYXJncyBpbiBsaWJ4bF9fYnVpbGRfZGV2aWNlX21vZGVsX2FyZ3NfbmV3CgpkaWZmIC1yIDU2 OWFiYWYyY2MxMiB0b29scy9saWJ4bC9saWJ4bF9kbS5jCi0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhs X2RtLmMJVHVlIEFwciAxOSAxMzoxNzoxNCAyMDExICswODAwCisrKyBiL3Rvb2xzL2xpYnhsL2xp YnhsX2RtLmMJV2VkIEFwciAyMCAxMzo0Nzo0MiAyMDExICswODAwCkBAIC0yMDgsMTEgKzIwOCw3 IEBAIHN0YXRpYyBjaGFyICoqIGxpYnhsX19idWlsZF9kZXZpY2VfbW9kZWwKICAgICBpZiAoaW5m by0+dm5jIHx8IGluZm8tPnZuY2Rpc3BsYXkgfHwgaW5mby0+dm5jbGlzdGVuIHx8IGluZm8tPnZu Y3VudXNlZCkgewogICAgICAgICBpbnQgZGlzcGxheSA9IDA7CiAgICAgICAgIGNvbnN0IGNoYXIg Kmxpc3RlbiA9ICIxMjcuMC4wLjEiOwotCi0gICAgICAgIGlmIChpbmZvLT52bmNwYXNzd2QgJiYg aW5mby0+dm5jcGFzc3dkWzBdKSB7Ci0gICAgICAgICAgICBhc3NlcnQoISJtaXNzaW5nIGNvZGUg Zm9yIHN1cHBseWluZyB2bmMgcGFzc3dvcmQgdG8gcWVtdSIpOwotICAgICAgICB9Ci0gICAgICAg IGZsZXhhcnJheV9hcHBlbmQoZG1fYXJncywgIi12bmMiKTsKKyAgICAgICAgY2hhciAqdm5jb3B0 aW9ucyA9IE5VTEw7CiAKICAgICAgICAgaWYgKGluZm8tPnZuY2Rpc3BsYXkpIHsKICAgICAgICAg ICAgIGRpc3BsYXkgPSBpbmZvLT52bmNkaXNwbGF5OwpAQCAtMjI0LDEzICsyMjAsMTcgQEAgc3Rh dGljIGNoYXIgKiogbGlieGxfX2J1aWxkX2RldmljZV9tb2RlbAogICAgICAgICB9CiAKICAgICAg ICAgaWYgKHN0cmNocihsaXN0ZW4sICc6JykgIT0gTlVMTCkKLSAgICAgICAgICAgIGZsZXhhcnJh eV9hcHBlbmQoZG1fYXJncywgCi0gICAgICAgICAgICAgICAgICAgIGxpYnhsX19zcHJpbnRmKGdj LCAiJXMlcyIsIGxpc3RlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgIGluZm8tPnZuY3VudXNl ZCA/ICIsdG89OTkiIDogIiIpKTsKKyAgICAgICAgICAgIHZuY29wdGlvbnMgPSBsaWJ4bF9fc3By aW50ZihnYywgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIlcyVzIiwgbGlzdGVuLCBp bmZvLT52bmN1bnVzZWQgPyAiLHRvPTk5IiA6ICIiKTsKICAgICAgICAgZWxzZQotICAgICAgICAg ICAgZmxleGFycmF5X2FwcGVuZChkbV9hcmdzLCAKLSAgICAgICAgICAgICAgICAgICAgbGlieGxf X3NwcmludGYoZ2MsICIlczolZCVzIiwgbGlzdGVuLCBkaXNwbGF5LAotICAgICAgICAgICAgICAg ICAgICAgICAgaW5mby0+dm5jdW51c2VkID8gIix0bz05OSIgOiAiIikpOworICAgICAgICAgICAg dm5jb3B0aW9ucyA9IGxpYnhsX19zcHJpbnRmKGdjLCAiJXM6JWQlcyIsIGxpc3RlbiwgZGlzcGxh eSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbmZvLT52bmN1bnVz ZWQgPyAiLHRvPTk5IiA6ICIiKTsKKworICAgICAgICBpZiAoaW5mby0+dm5jcGFzc3dkICYmIGlu Zm8tPnZuY3Bhc3N3ZFswXSkKKyAgICAgICAgICAgIHZuY29wdGlvbnMgPSBsaWJ4bF9fc3ByaW50 ZihnYywgIiVzLHBhc3N3b3JkIiwgdm5jb3B0aW9ucyk7CisKKyAgICAgICAgZmxleGFycmF5X2Fw cGVuZChkbV9hcmdzLCAiLXZuYyIpOworICAgICAgICBmbGV4YXJyYXlfYXBwZW5kKGRtX2FyZ3Ms IHZuY29wdGlvbnMpOwogICAgIH0KICAgICBpZiAoaW5mby0+c2RsKSB7CiAgICAgICAgIGZsZXhh cnJheV9hcHBlbmQoZG1fYXJncywgIi1zZGwiKTsK --bcaec539641c40d0fb04a153c3ac Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --bcaec539641c40d0fb04a153c3ac--