[libvirt] [PATCH 5/7] conf: spice: Do more automation if autoport is requested
Daniel P. Berrange
berrange at redhat.com
Wed Apr 24 08:19:32 UTC 2013
On Tue, Apr 23, 2013 at 08:57:10PM +0200, Peter Krempa wrote:
> On 04/23/13 18:21, Daniel P. Berrange wrote:
> >On Tue, Apr 23, 2013 at 03:46:12PM +0200, Peter Krempa wrote:
> >>With autoport enabled, both ports were alocated. With enabling
> >>defaultMode or setting separate channel modes one of the ports may not
> >>be needed. This will allow later on doing this kind of change.
> >>---
> >> docs/formatdomain.html.in | 2 +-
> >> src/conf/domain_conf.c | 5 -----
> >> 2 files changed, 1 insertion(+), 6 deletions(-)
> >>
> >>diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
> >>index 888c005..bb75943 100644
> >>--- a/docs/formatdomain.html.in
> >>+++ b/docs/formatdomain.html.in
> >>@@ -3470,7 +3470,7 @@ qemu-kvm -net nic,model=? /dev/null
> >> while <code>tlsPort</code> gives an alternative secure
> >> port number. The <code>autoport</code> attribute is the
> >> new preferred syntax for indicating autoallocation of
> >>- both port numbers. The <code>listen</code> attribute is
> >>+ needed port numbers. The <code>listen</code> attribute is
> >> an IP address for the server to listen
> >> on. The <code>passwd</code> attribute provides a SPICE
> >> password in clear text. The <code>keymap</code>
> >>diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
> >>index dc0ecaa..86a444c 100644
> >>--- a/src/conf/domain_conf.c
> >>+++ b/src/conf/domain_conf.c
> >>@@ -7595,11 +7595,6 @@ virDomainGraphicsDefParseXML(xmlNodePtr node,
> >> VIR_FREE(defaultMode);
> >> }
> >>
> >>- if (def->data.spice.port == -1 && def->data.spice.tlsPort == -1) {
> >>- /* Legacy compat syntax, used -1 for auto-port */
> >>- def->data.spice.autoport = true;
> >>- }
> >
> >I'm not clear why this is safe. The idea is that if the user sends XML
> >
> > <graphics port='-1' tlsPort='-1'/>
> >
> >then libvirt would turn it into
> >
> > <graphics port='-1' tlsPort='-1' autoport='yes'/>
> >
> >with this removed, won't we be instead outputting
> >
> > <graphics port='-1' tlsPort='-1' autoport='no'/>
> >
> >despite the fact that it is auto-allocating the ports?
>
> Later on this will slightly change semantics:
>
> <graphics port='-1' tlsPort='-1' autoport='no'/>
>
> Will allocate both ports every time, even if one isn't needed
> because of other configuration (eg defaultMode="insecure")
That is certainly not right.
If we're allocating ports then we *must* be setting autoport='yes'.
Having port='1' and tlsPort='-1' and autoport='no' is a non-sensical
configuration.
> whereas
>
> <graphics autoport='yes'/>
>
> will automatically determine which ports are needed according to
> configuration and allocate just those. (only the insecure port in
> case of the example above)
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the libvir-list
mailing list