From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NrvEQ-0000rX-Ci for qemu-devel@nongnu.org; Wed, 17 Mar 2010 11:32:26 -0400 Received: from [199.232.76.173] (port=37635 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NrvEP-0000r5-TT for qemu-devel@nongnu.org; Wed, 17 Mar 2010 11:32:25 -0400 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1NrvEN-0008Dn-LE for qemu-devel@nongnu.org; Wed, 17 Mar 2010 11:32:25 -0400 Received: from mail-pw0-f45.google.com ([209.85.160.45]:58241) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NrvEN-0008Dh-1J for qemu-devel@nongnu.org; Wed, 17 Mar 2010 11:32:23 -0400 Received: by pwi9 with SMTP id 9so799420pwi.4 for ; Wed, 17 Mar 2010 08:32:21 -0700 (PDT) Message-ID: <4BA0F601.4060802@codemonkey.ws> Date: Wed, 17 Mar 2010 10:32:17 -0500 From: Anthony Liguori MIME-Version: 1.0 Subject: Re: [Qemu-devel] [PATCH] better describe -net options References: <9cd4c8fc1003051307o5cf65642rd065d0da5f75c901@mail.gmail.com> In-Reply-To: <9cd4c8fc1003051307o5cf65642rd065d0da5f75c901@mail.gmail.com> Content-Type: multipart/alternative; boundary="------------080509070003090604010102" List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Brian Thomason Cc: qemu-devel@nongnu.org This is a multi-part message in MIME format. --------------080509070003090604010102 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit On 03/05/2010 03:07 PM, Brian Thomason wrote: > The manpage reflects that multiple -net user calls may be made, > but if this is done, it can cause the program to hang. Instead, > multiple -net calls can be combined into one, and this patch adds > that information to qemu-options.hx. Also, -net user may only > be used in conjunction with -net nic. This is already implcitly > stated, but this patch makes that statement more explicit. Actually, the problem is that the user created a loop. It's actually valid to have something like: -net user -net dump,file=foo.pcap -net nic But having -net user -net user creates a loop. Regards, Anthony Liguori > > https://bugs.launchpad.net/ubuntu/+source/qemu-kvm/+bug/474969 > https://bugs.launchpad.net/ubuntu/+source/qemu-kvm/+bug/453617 > > Signed-off-by: Brian Thomason > > --- > qemu-options.hx | 15 +++++++++++++-- > 1 files changed, 13 insertions(+), 2 deletions(-) > > diff --git a/qemu-options.hx b/qemu-options.hx > index fd50add..724f434 100644 > --- a/qemu-options.hx > +++ b/qemu-options.hx > @@ -952,7 +952,8 @@ for a list of available devices for your target. > > @item -net user[,@var{option}][,@var{option}][,...] > Use the user mode network stack which requires no administrator > -privilege to run. Valid options are: > +privilege to run. Please note that this can be used only in > conjunction with > +@option{-net nic}. Valid options are: > > @table @option > @item vlan=@var{n} > @@ -1028,7 +1029,8 @@ the guest IP address @var{guestaddr} on guest > port @var{guestport}. If > @var{guestaddr} is not specified, its value is x.x.x.15 (default > first address > given by the built-in DHCP server). By specifying @var{hostaddr}, the > rule can > be bound to a specific host interface. If no connection type is set, > TCP is > -used. This option can be given multiple times. > +used. This option can not be given multiple times, but multiple rules may > +be combined. > > For example, to redirect host X11 connection from screen 1 to guest > screen 0, use the following: > @@ -1052,6 +1054,15 @@ telnet localhost 5555 > Then when you use on the host @code{telnet localhost 5555}, you > connect to the guest telnet server. > > +To combine two or more hostfwd rules, simply use a comma as a > delimiter. For > +example, to combine the two rules mentioned in the examples above, > use the > +following: > + > +@example > +#on the host > +qemu -net user,hostfwd=tcp:127.0.0.1:6001-:6000,hostfwd=tcp:5555-::23 > [...] > +@end example > + > @item guestfwd=[tcp]:@var{server}:@var{port}-@var{dev} > Forward guest TCP connections to the IP address @var{server} on port > @var{port} > to the character device @var{dev}. This option can be given multiple > times. > -- > 1.6.3.3 > --------------080509070003090604010102 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit On 03/05/2010 03:07 PM, Brian Thomason wrote:
The manpage reflects that multiple -net user calls may be made,
but if this is done, it can cause the program to hang. Instead,
multiple -net calls can be combined into one, and this patch adds
that information to qemu-options.hx. Also, -net user may only
be used in conjunction with -net nic.  This is already implcitly
stated, but this patch makes that statement more explicit.

Actually, the problem is that the user created a loop.  It's actually valid to have something like:

-net user -net dump,file=foo.pcap -net nic

But having -net user -net user creates a loop.

Regards,

Anthony Liguori


https://bugs.launchpad.net/ubuntu/+source/qemu-kvm/+bug/474969
https://bugs.launchpad.net/ubuntu/+source/qemu-kvm/+bug/453617

Signed-off-by: Brian Thomason <brian.thomason@canonical.com>
---
 qemu-options.hx |   15 +++++++++++++--
 1 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/qemu-options.hx b/qemu-options.hx
index fd50add..724f434 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -952,7 +952,8 @@ for a list of available devices for your target.
 
 @item -net user[,@var{option}][,@var{option}][,...]
 Use the user mode network stack which requires no administrator
-privilege to run. Valid options are:
+privilege to run. Please note that this can be used only in conjunction with
+@option{-net nic}. Valid options are:
 
 @table @option
 @item vlan=@var{n}
@@ -1028,7 +1029,8 @@ the guest IP address @var{guestaddr} on guest port @var{guestport}. If
 @var{guestaddr} is not specified, its value is x.x.x.15 (default first address
 given by the built-in DHCP server). By specifying @var{hostaddr}, the rule can
 be bound to a specific host interface. If no connection type is set, TCP is
-used. This option can be given multiple times.
+used. This option can not be given multiple times, but multiple rules may
+be combined.
 
 For example, to redirect host X11 connection from screen 1 to guest
 screen 0, use the following:
@@ -1052,6 +1054,15 @@ telnet localhost 5555
 Then when you use on the host @code{telnet localhost 5555}, you
 connect to the guest telnet server.
 
+To combine two or more hostfwd rules, simply use a comma as a delimiter. For
+example, to combine the two rules mentioned in the examples above, use the
+following:
+
+@example
+#on the host
+qemu -net user,hostfwd=tcp:127.0.0.1:6001-:6000,hostfwd=tcp:5555-::23 [...]
+@end example
+
 @item guestfwd=[tcp]:@var{server}:@var{port}-@var{dev}
 Forward guest TCP connections to the IP address @var{server} on port @var{port}
 to the character device @var{dev}. This option can be given multiple times.
--
1.6.3.3


--------------080509070003090604010102--