Christoph Egger
2011-Apr-15 08:28 UTC
Re: [Xen-devel] [PATCH]tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL
On 04/15/11 10:33, ZhouPeng wrote:> Signed-off-by: Zhou Peng<zhoupeng@nfs.iscas.ac.cn> > > tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL >NACK! This can info->vncpasswd[0] contains ''\0'' if you have vncpasswd='''' in the guest config file. Christoph> diff -r 3f00c5faa12a tools/libxl/libxl_dm.c > --- a/tools/libxl/libxl_dm.c Wed Apr 13 16:10:26 2011 +0100 > +++ b/tools/libxl/libxl_dm.c Fri Apr 15 09:45:43 2011 +0800 > @@ -209,7 +209,7 @@ static char ** libxl__build_device_model > int display = 0; > const char *listen = "127.0.0.1"; > > - if (info->vncpasswd&& info->vncpasswd[0]) { > + if (info->vncpasswd&& !info->vncpasswd[0]) { > assert(!"missing code for supplying vnc password to qemu"); > } > flexarray_append(dm_args, "-vnc"); > > -- > Zhou Peng > Operating System Technology Group > Institute of Software, the Chinese Academy of Sciences (ISCAS) > <mailto:ailvpeng25@gmail.com> >-- ---to satisfy European Law for business letters: Advanced Micro Devices GmbH Einsteinring 24, 85689 Dornach b. Muenchen Geschaeftsfuehrer: Alberto Bozzo, Andrew Bowd Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen Registergericht Muenchen, HRB Nr. 43632 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
ZhouPeng
2011-Apr-15 08:33 UTC
[Xen-devel] [PATCH]tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL
Signed-off-by: Zhou Peng <zhoupeng@nfs.iscas.ac.cn> tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL diff -r 3f00c5faa12a tools/libxl/libxl_dm.c --- a/tools/libxl/libxl_dm.c Wed Apr 13 16:10:26 2011 +0100 +++ b/tools/libxl/libxl_dm.c Fri Apr 15 09:45:43 2011 +0800 @@ -209,7 +209,7 @@ static char ** libxl__build_device_model int display = 0; const char *listen = "127.0.0.1"; - if (info->vncpasswd && info->vncpasswd[0]) { + if (info->vncpasswd && !info->vncpasswd[0]) { assert(!"missing code for supplying vnc password to qemu"); } flexarray_append(dm_args, "-vnc"); -- Zhou Peng Operating System Technology Group Institute of Software, the Chinese Academy of Sciences (ISCAS) <ailvpeng25@gmail.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Ian Campbell
2011-Apr-15 08:42 UTC
Re: [Xen-devel] [PATCH]tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL
On Fri, 2011-04-15 at 09:28 +0100, Christoph Egger wrote:> On 04/15/11 10:33, ZhouPeng wrote: > > Signed-off-by: Zhou Peng<zhoupeng@nfs.iscas.ac.cn> > > > > tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL > > > > NACK! This can info->vncpasswd[0] contains ''\0'' if you have > > > vncpasswd='''' > > in the guest config file.perhaps a strcmp(...., "") might make this more obvious to the casual reader?> > Christoph > > > > diff -r 3f00c5faa12a tools/libxl/libxl_dm.c > > --- a/tools/libxl/libxl_dm.c Wed Apr 13 16:10:26 2011 +0100 > > +++ b/tools/libxl/libxl_dm.c Fri Apr 15 09:45:43 2011 +0800 > > @@ -209,7 +209,7 @@ static char ** libxl__build_device_model > > int display = 0; > > const char *listen = "127.0.0.1"; > > > > - if (info->vncpasswd&& info->vncpasswd[0]) { > > + if (info->vncpasswd&& !info->vncpasswd[0]) { > > assert(!"missing code for supplying vnc password to qemu"); > > } > > flexarray_append(dm_args, "-vnc"); > > > > -- > > Zhou Peng > > Operating System Technology Group > > Institute of Software, the Chinese Academy of Sciences (ISCAS) > > <mailto:ailvpeng25@gmail.com> > > > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
ZhouPeng
2011-Apr-15 09:36 UTC
Re: [Xen-devel] [PATCH]tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL
2011/4/15 Christoph Egger <Christoph.Egger@amd.com>> On 04/15/11 10:33, ZhouPeng wrote: > >> Signed-off-by: Zhou Peng<zhoupeng@nfs.iscas.ac.cn> >> >> tools/libxl: fix a bug in libxl__build_device_model_args_new. >> info->vncpasswd can''t be empty if info->vncpasswd != NULL >> >> > NACK! This can info->vncpasswd[0] contains ''\0'' if you have > > > vncpasswd='''' > > in the guest config file. >" if (info->vncpasswd&& info->vncpasswd[0]) “ can vncpasswd='''' in guest cfg file, when using upstream-qemu-xen and block vncpasswd=''passwd'' Can it be reasonable? Christoph> > > diff -r 3f00c5faa12a tools/libxl/libxl_dm.c >> --- a/tools/libxl/libxl_dm.c Wed Apr 13 16:10:26 2011 +0100 >> +++ b/tools/libxl/libxl_dm.c Fri Apr 15 09:45:43 2011 +0800 >> @@ -209,7 +209,7 @@ static char ** libxl__build_device_model >> int display = 0; >> const char *listen = "127.0.0.1"; >> >> - if (info->vncpasswd&& info->vncpasswd[0]) { >> + if (info->vncpasswd&& !info->vncpasswd[0]) { >> assert(!"missing code for supplying vnc password to qemu"); >> } >> flexarray_append(dm_args, "-vnc"); >> >> -- >> Zhou Peng >> Operating System Technology Group >> Institute of Software, the Chinese Academy of Sciences (ISCAS) >> <mailto:ailvpeng25@gmail.com> >> >> > > -- > ---to satisfy European Law for business letters: > Advanced Micro Devices GmbH > Einsteinring 24, 85689 Dornach b. Muenchen > Geschaeftsfuehrer: Alberto Bozzo, Andrew Bowd > Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen > Registergericht Muenchen, HRB Nr. 43632 > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel >-- Zhou Peng Operating System Technology Group Institute of Software, the Chinese Academy of Sciences (ISCAS) <ailvpeng25@gmail.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Christoph Egger
2011-Apr-15 09:37 UTC
Re: [Xen-devel] [PATCH]tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL
On 04/15/11 11:36, ZhouPeng wrote:> > > 2011/4/15 Christoph Egger<Christoph.Egger@amd.com<mailto:Christoph.Egger@amd.com>> > On 04/15/11 10:33, ZhouPeng wrote: > Signed-off-by: Zhou Peng<zhoupeng@nfs.iscas.ac.cn<mailto:zhoupeng@nfs.iscas.ac.cn>> > > tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL > > > NACK! This can info->vncpasswd[0] contains ''\0'' if you have > > > vncpasswd='''' > > in the guest config file. > > " if (info->vncpasswd&& info->vncpasswd[0]) “ can > vncpasswd='''' in guest cfg file, when using upstream-qemu-xen > and block vncpasswd=''passwd'' > Can it be reasonable? >Does that mean upstream qemu-xen and in-tree qemu-xen behave differently? Christoph -- ---to satisfy European Law for business letters: Advanced Micro Devices GmbH Einsteinring 24, 85689 Dornach b. Muenchen Geschaeftsfuehrer: Alberto Bozzo, Andrew Bowd Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen Registergericht Muenchen, HRB Nr. 43632 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
ZhouPeng
2011-Apr-15 09:53 UTC
Re: [Xen-devel] [PATCH]tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL
2011/4/15 Christoph Egger <Christoph.Egger@amd.com>> On 04/15/11 11:36, ZhouPeng wrote: > >> >> >> 2011/4/15 Christoph Egger<Christoph.Egger@amd.com<mailto: >> Christoph.Egger@amd.com>> >> >> On 04/15/11 10:33, ZhouPeng wrote: >> Signed-off-by: Zhou Peng<zhoupeng@nfs.iscas.ac.cn<mailto: >> zhoupeng@nfs.iscas.ac.cn>> >> >> >> tools/libxl: fix a bug in libxl__build_device_model_args_new. >> info->vncpasswd can''t be empty if info->vncpasswd != NULL >> >> >> NACK! This can info->vncpasswd[0] contains ''\0'' if you have >> >> >> vncpasswd='''' >> >> in the guest config file. >> >> " if (info->vncpasswd&& info->vncpasswd[0]) “ can >> vncpasswd='''' in guest cfg file, when using upstream-qemu-xen >> and block vncpasswd=''passwd'' >> Can it be reasonable? >> >> > > Does that mean upstream qemu-xen and in-tree qemu-xen behave differently? >if (new_qemu == 1) { return libxl__build_device_model_args_new(gc, info, disks, num_disks, vifs, num_vifs); } else { return libxl__build_device_model_args_old(gc, info, disks, num_disks, vifs, num_vifs); }> Christoph > > > > -- > ---to satisfy European Law for business letters: > Advanced Micro Devices GmbH > Einsteinring 24, 85689 Dornach b. Muenchen > Geschaeftsfuehrer: Alberto Bozzo, Andrew Bowd > Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen > Registergericht Muenchen, HRB Nr. 43632 > >-- Zhou Peng Operating System Technology Group Institute of Software, the Chinese Academy of Sciences (ISCAS) <ailvpeng25@gmail.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
ZhouPeng
2011-Apr-15 10:02 UTC
Re: [Xen-devel] [PATCH]tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL
This patch may be more readable =Signed-off-by: Zhou Peng <zhoupeng@nfs.iscas.ac.cn> tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL diff -r 3f00c5faa12a tools/libxl/libxl_dm.c --- a/tools/libxl/libxl_dm.c Wed Apr 13 16:10:26 2011 +0100 +++ b/tools/libxl/libxl_dm.c Fri Apr 15 09:45:43 2011 +0800 @@ -209,7 +209,7 @@ static char ** libxl__build_device_model int display = 0; const char *listen = "127.0.0.1"; - if (info->vncpasswd && info->vncpasswd[0]) { + if (info->vncpasswd && (info->vncpasswd[0] == ''\0'')) { assert(!"missing code for supplying vnc password to qemu"); } flexarray_append(dm_args, "-vnc"); 2011/4/15 ZhouPeng <zpengxen@gmail.com>> > > 2011/4/15 Christoph Egger <Christoph.Egger@amd.com> > >> On 04/15/11 11:36, ZhouPeng wrote: >> >>> >>> >>> 2011/4/15 Christoph Egger<Christoph.Egger@amd.com<mailto: >>> Christoph.Egger@amd.com>> >>> >>> On 04/15/11 10:33, ZhouPeng wrote: >>> Signed-off-by: Zhou Peng<zhoupeng@nfs.iscas.ac.cn<mailto: >>> zhoupeng@nfs.iscas.ac.cn>> >>> >>> >>> tools/libxl: fix a bug in libxl__build_device_model_args_new. >>> info->vncpasswd can''t be empty if info->vncpasswd != NULL >>> >>> >>> NACK! This can info->vncpasswd[0] contains ''\0'' if you have >>> >>> >>> vncpasswd='''' >>> >>> in the guest config file. >>> >>> " if (info->vncpasswd&& info->vncpasswd[0]) “ can >>> vncpasswd='''' in guest cfg file, when using upstream-qemu-xen >>> and block vncpasswd=''passwd'' >>> Can it be reasonable? >>> >>> >> >> Does that mean upstream qemu-xen and in-tree qemu-xen behave differently? >> > if (new_qemu == 1) { > return libxl__build_device_model_args_new(gc, info, disks, > num_disks, vifs, num_vifs); > } else { > return libxl__build_device_model_args_old(gc, info, disks, > num_disks, vifs, num_vifs); > } > > >> Christoph >> >> >> >> -- >> ---to satisfy European Law for business letters: >> Advanced Micro Devices GmbH >> Einsteinring 24, 85689 Dornach b. Muenchen >> Geschaeftsfuehrer: Alberto Bozzo, Andrew Bowd >> Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen >> Registergericht Muenchen, HRB Nr. 43632 >> >> > > > -- > Zhou Peng > Operating System Technology Group > Institute of Software, the Chinese Academy of Sciences (ISCAS) > <ailvpeng25@gmail.com> >-- Zhou Peng Operating System Technology Group Institute of Software, the Chinese Academy of Sciences (ISCAS) <ailvpeng25@gmail.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Ian Jackson
2011-Apr-18 15:06 UTC
Re: [Xen-devel] [PATCH]tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL
ZhouPeng writes ("Re: [Xen-devel] [PATCH]tools/libxl: fix a bug in libxl__build_device_model_args_new. info->vncpasswd can''t be empty if info->vncpasswd != NULL"):> diff -r 3f00c5faa12a tools/libxl/libxl_dm.c > --- a/tools/libxl/libxl_dm.c Wed Apr 13 16:10:26 2011 +0100 > +++ b/tools/libxl/libxl_dm.c Fri Apr 15 09:45:43 2011 +0800 > @@ -209,7 +209,7 @@ static char ** libxl__build_device_model > int display = 0; > const char *listen = "127.0.0.1"; > > - if (info->vncpasswd && info->vncpasswd[0]) { > + if (info->vncpasswd && (info->vncpasswd[0] == ''\0'')) { > assert(!"missing code for supplying vnc password to qemu"); > } > flexarray_append(dm_args, "-vnc");I still think this is wrong. As I wrote on the 15th of April: Looking just at the diff there, I think the original code is correct. That is, the assert trips when: * a password is supplied (info->vncpasswd != NULL) * the password is nonemtpy (strlen(info->vncpasswd) > 0 which is the same as !!info->vncpasswd[0] * we''re using a new qemu for which this code has not been implemented That the failure manifests as an assert might be argued to be unfortunate, but this is still code under development... I have a reply from you in my mailbox but it''s a hideously incomprehensible HTML mess. Please post only in plain text. Thanks, Ian. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel