On Tue, Mar 31, 2009 at 05:29:09PM +0200, Chris Lalancette wrote: > Daniel P. Berrange wrote: > > On Tue, Mar 31, 2009 at 10:07:31AM +0200, Gerrit.Slomma@xxxxxxxxxxx wrote: > >> Hello > >> > >> I am just curious if the checking of the connection string in qemu_driver.c > >> from libvirt-0.6.1 in qemudDomainMigratePrepare2 is faulty. > >> The source is: > >> > >> [...] > >> } else { > >> /* Check the URI starts with "tcp:". We will escape the > >> * URI when passing it to the qemu monitor, so bad > >> * characters in hostname part don't matter. > >> */ > >> if (!STREQLEN (uri_in, "tcp:", 6)) { > >> qemudReportError (dconn, NULL, NULL, VIR_ERR_INVALID_ARG, > >> "%s", _("only tcp URIs are supported for KVM > >> migrations")); > >> goto cleanup; > >> } > >> [...] > >> > >> The second compare-string "tcp:" is only 4 characters long, therefore a > >> check via strncmp must fail i presumed, i isolated this comparison: > > > > Can you try with this patch applied > > > > diff -r b5ad7b1c453b src/qemu_driver.c > > --- a/src/qemu_driver.c Tue Mar 31 14:55:23 2009 +0100 > > +++ b/src/qemu_driver.c Tue Mar 31 15:02:30 2009 +0100 > > @@ -4629,7 +4629,7 @@ qemudDomainMigratePrepare2 (virConnectPt > > * URI when passing it to the qemu monitor, so bad > > * characters in hostname part don't matter. > > */ > > - if (!STREQLEN (uri_in, "tcp:", 6)) { > > + if (!STRPREFIX (uri_in, "tcp:")) { > > qemudReportError (dconn, NULL, NULL, VIR_ERR_INVALID_ARG, > > "%s", _("only tcp URIs are supported for KVM migrations")); > > goto cleanup; > > Yeah, that's the way to fix this. The STREQLEN(uri_in, "tcp:", 6) is a leftover > from the KVM migration to QEMU migration implementation; in the KVM migration, > you would use "tcp://", which would be the correct 6 characters, but in the QEMU > migration implementation, you just use "tcp:". I guess I just forgot to fix > this up. ACK, Dan can you apply this too ? Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@xxxxxxxxxxxx | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list