All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] slirp: Port redirection option behave differently on Linux and Windows
@ 2013-08-13 20:00 Taimoor
  2013-08-13 20:21 ` Stefan Weil
  2013-08-13 21:05 ` Taimoor
  0 siblings, 2 replies; 7+ messages in thread
From: Taimoor @ 2013-08-13 20:00 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-trivial, Taimoor Mirza

From: Taimoor Mirza <tmirza@codesourcery.com>

port redirection code uses SO_REUSEADDR socket option before binding to
host port. Behavior of SO_REUSEADDR is different on Windows and Linux.
Relaunching QEMU with same host and guest port redirection values on Linux
throws error but on Windows it does not throw any error.
Problem is discussed in http://lists.gnu.org/archive/html/qemu-devel/2013-04/msg03089.html

Signed-off-by: Taimoor Mirza <tmirza@codesourcery.com>
---
 slirp/socket.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/slirp/socket.c b/slirp/socket.c
index 8e8819c..23780b3 100644
--- a/slirp/socket.c
+++ b/slirp/socket.c
@@ -627,7 +627,9 @@ tcp_listen(Slirp *slirp, uint32_t haddr, u_int hport, uint32_t laddr,
 	addr.sin_port = hport;
 
 	if (((s = qemu_socket(AF_INET,SOCK_STREAM,0)) < 0) ||
+#ifdef _WIN32
 	    (qemu_setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(int)) < 0) ||
+#endif
 	    (bind(s,(struct sockaddr *)&addr, sizeof(addr)) < 0) ||
 	    (listen(s,1) < 0)) {
 		int tmperrno = errno; /* Don't clobber the real reason we failed */
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] slirp: Port redirection option behave differently on Linux and Windows
  2013-08-13 20:00 [Qemu-devel] [PATCH] slirp: Port redirection option behave differently on Linux and Windows Taimoor
@ 2013-08-13 20:21 ` Stefan Weil
  2013-08-13 21:02   ` Taimoor Mirza
  2013-08-13 21:05 ` Taimoor
  1 sibling, 1 reply; 7+ messages in thread
From: Stefan Weil @ 2013-08-13 20:21 UTC (permalink / raw)
  To: Taimoor; +Cc: qemu-trivial, Taimoor Mirza, qemu-devel

Am 13.08.2013 22:00, schrieb Taimoor:
> From: Taimoor Mirza <tmirza@codesourcery.com>
>
> port redirection code uses SO_REUSEADDR socket option before binding to
> host port. Behavior of SO_REUSEADDR is different on Windows and Linux.
> Relaunching QEMU with same host and guest port redirection values on Linux
> throws error but on Windows it does not throw any error.
> Problem is discussed in http://lists.gnu.org/archive/html/qemu-devel/2013-04/msg03089.html
>
> Signed-off-by: Taimoor Mirza <tmirza@codesourcery.com>
> ---
>  slirp/socket.c |    2 ++
>  1 files changed, 2 insertions(+), 0 deletions(-)
>
> diff --git a/slirp/socket.c b/slirp/socket.c
> index 8e8819c..23780b3 100644
> --- a/slirp/socket.c
> +++ b/slirp/socket.c
> @@ -627,7 +627,9 @@ tcp_listen(Slirp *slirp, uint32_t haddr, u_int hport, uint32_t laddr,
>  	addr.sin_port = hport;
>  
>  	if (((s = qemu_socket(AF_INET,SOCK_STREAM,0)) < 0) ||
> +#ifdef _WIN32

Shouldn't this be replaced by #ifndef _WIN32?

>  	    (qemu_setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(int)) < 0) ||
> +#endif
>  	    (bind(s,(struct sockaddr *)&addr, sizeof(addr)) < 0) ||
>  	    (listen(s,1) < 0)) {
>  		int tmperrno = errno; /* Don't clobber the real reason we failed */

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] slirp: Port redirection option behave differently on Linux and Windows
  2013-08-13 20:21 ` Stefan Weil
@ 2013-08-13 21:02   ` Taimoor Mirza
  0 siblings, 0 replies; 7+ messages in thread
From: Taimoor Mirza @ 2013-08-13 21:02 UTC (permalink / raw)
  To: Stefan Weil; +Cc: qemu-trivial, Taimoor Mirza, qemu-devel

Thanks for reviewing the patch

On Wed, Aug 14, 2013 at 1:21 AM, Stefan Weil <sw@weilnetz.de> wrote:
> Am 13.08.2013 22:00, schrieb Taimoor:
>> From: Taimoor Mirza <tmirza@codesourcery.com>
>>
>> port redirection code uses SO_REUSEADDR socket option before binding to
>> host port. Behavior of SO_REUSEADDR is different on Windows and Linux.
>> Relaunching QEMU with same host and guest port redirection values on Linux
>> throws error but on Windows it does not throw any error.
>> Problem is discussed in http://lists.gnu.org/archive/html/qemu-devel/2013-04/msg03089.html
>>
>> Signed-off-by: Taimoor Mirza <tmirza@codesourcery.com>
>> ---
>>  slirp/socket.c |    2 ++
>>  1 files changed, 2 insertions(+), 0 deletions(-)
>>
>> diff --git a/slirp/socket.c b/slirp/socket.c
>> index 8e8819c..23780b3 100644
>> --- a/slirp/socket.c
>> +++ b/slirp/socket.c
>> @@ -627,7 +627,9 @@ tcp_listen(Slirp *slirp, uint32_t haddr, u_int hport, uint32_t laddr,
>>       addr.sin_port = hport;
>>
>>       if (((s = qemu_socket(AF_INET,SOCK_STREAM,0)) < 0) ||
>> +#ifdef _WIN32
>
> Shouldn't this be replaced by #ifndef _WIN32?
Yes it should be. I am resending the patch
>
>>           (qemu_setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(int)) < 0) ||
>> +#endif
>>           (bind(s,(struct sockaddr *)&addr, sizeof(addr)) < 0) ||
>>           (listen(s,1) < 0)) {
>>               int tmperrno = errno; /* Don't clobber the real reason we failed */
>

-Taimoor

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Qemu-devel] [PATCH] slirp: Port redirection option behave differently on Linux and Windows
  2013-08-13 20:00 [Qemu-devel] [PATCH] slirp: Port redirection option behave differently on Linux and Windows Taimoor
  2013-08-13 20:21 ` Stefan Weil
@ 2013-08-13 21:05 ` Taimoor
  2013-08-13 21:20   ` Eric Blake
  1 sibling, 1 reply; 7+ messages in thread
From: Taimoor @ 2013-08-13 21:05 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-trivial, Taimoor Mirza

From: Taimoor Mirza <tmirza@codesourcery.com>

port redirection code uses SO_REUSEADDR socket option before binding to
host port. Behavior of SO_REUSEADDR is different on Windows and Linux.
Relaunching QEMU with same host and guest port redirection values on Linux
throws error but on Windows it does not throw any error.
Problem is discussed in http://lists.gnu.org/archive/html/qemu-devel/2013-04/msg03089.html

Signed-off-by: Taimoor Mirza <tmirza@codesourcery.com>
---
 slirp/socket.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/slirp/socket.c b/slirp/socket.c
index 8e8819c..23780b3 100644
--- a/slirp/socket.c
+++ b/slirp/socket.c
@@ -627,7 +627,9 @@ tcp_listen(Slirp *slirp, uint32_t haddr, u_int hport, uint32_t laddr,
 	addr.sin_port = hport;
 
 	if (((s = qemu_socket(AF_INET,SOCK_STREAM,0)) < 0) ||
+#ifndef _WIN32
 	    (qemu_setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(int)) < 0) ||
+#endif
 	    (bind(s,(struct sockaddr *)&addr, sizeof(addr)) < 0) ||
 	    (listen(s,1) < 0)) {
 		int tmperrno = errno; /* Don't clobber the real reason we failed */
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] slirp: Port redirection option behave differently on Linux and Windows
  2013-08-13 21:05 ` Taimoor
@ 2013-08-13 21:20   ` Eric Blake
  2013-08-14 15:49     ` Taimoor Mirza
  0 siblings, 1 reply; 7+ messages in thread
From: Eric Blake @ 2013-08-13 21:20 UTC (permalink / raw)
  To: Taimoor; +Cc: qemu-trivial, Taimoor Mirza, qemu-devel

[-- Attachment #1: Type: text/plain, Size: 870 bytes --]

On 08/13/2013 03:05 PM, Taimoor wrote:
> From: Taimoor Mirza <tmirza@codesourcery.com>
> 
> port redirection code uses SO_REUSEADDR socket option before binding to
> host port. Behavior of SO_REUSEADDR is different on Windows and Linux.
> Relaunching QEMU with same host and guest port redirection values on Linux
> throws error but on Windows it does not throw any error.
> Problem is discussed in http://lists.gnu.org/archive/html/qemu-devel/2013-04/msg03089.html

When resending a patch, please use a v2 in the subject line (git
send-email --subject-prefix PATCHv2), send as a top-level thread, and
include a changelog after the --- divider that explains what changed
from v1.  See http://wiki.qemu.org/Contribute/SubmitAPatch for more hints.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 621 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] slirp: Port redirection option behave differently on Linux and Windows
  2013-08-13 21:20   ` Eric Blake
@ 2013-08-14 15:49     ` Taimoor Mirza
  2013-08-14 16:08       ` Eric Blake
  0 siblings, 1 reply; 7+ messages in thread
From: Taimoor Mirza @ 2013-08-14 15:49 UTC (permalink / raw)
  To: Eric Blake; +Cc: qemu-trivial, Taimoor Mirza, qemu-devel

On Wed, Aug 14, 2013 at 2:20 AM, Eric Blake <eblake@redhat.com> wrote:
> On 08/13/2013 03:05 PM, Taimoor wrote:
>> From: Taimoor Mirza <tmirza@codesourcery.com>
>>
>> port redirection code uses SO_REUSEADDR socket option before binding to
>> host port. Behavior of SO_REUSEADDR is different on Windows and Linux.
>> Relaunching QEMU with same host and guest port redirection values on Linux
>> throws error but on Windows it does not throw any error.
>> Problem is discussed in http://lists.gnu.org/archive/html/qemu-devel/2013-04/msg03089.html
>
> When resending a patch, please use a v2 in the subject line (git
> send-email --subject-prefix PATCHv2), send as a top-level thread, and
> include a changelog after the --- divider that explains what changed
> from v1.  See http://wiki.qemu.org/Contribute/SubmitAPatch for more hints.


Thanks Eric. Should I resend with changelog of v2 and v2 in subject line?
>
> --
> Eric Blake   eblake redhat com    +1-919-301-3266
> Libvirt virtualization library http://libvirt.org
>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] [PATCH] slirp: Port redirection option behave differently on Linux and Windows
  2013-08-14 15:49     ` Taimoor Mirza
@ 2013-08-14 16:08       ` Eric Blake
  0 siblings, 0 replies; 7+ messages in thread
From: Eric Blake @ 2013-08-14 16:08 UTC (permalink / raw)
  To: Taimoor Mirza; +Cc: qemu-trivial, Taimoor Mirza, qemu-devel

[-- Attachment #1: Type: text/plain, Size: 1154 bytes --]

On 08/14/2013 09:49 AM, Taimoor Mirza wrote:
> On Wed, Aug 14, 2013 at 2:20 AM, Eric Blake <eblake@redhat.com> wrote:
>> On 08/13/2013 03:05 PM, Taimoor wrote:
>>> From: Taimoor Mirza <tmirza@codesourcery.com>
>>>
>>> port redirection code uses SO_REUSEADDR socket option before binding to
>>> host port. Behavior of SO_REUSEADDR is different on Windows and Linux.
>>> Relaunching QEMU with same host and guest port redirection values on Linux
>>> throws error but on Windows it does not throw any error.
>>> Problem is discussed in http://lists.gnu.org/archive/html/qemu-devel/2013-04/msg03089.html
>>
>> When resending a patch, please use a v2 in the subject line (git
>> send-email --subject-prefix PATCHv2), send as a top-level thread, and
>> include a changelog after the --- divider that explains what changed
>> from v1.  See http://wiki.qemu.org/Contribute/SubmitAPatch for more hints.
> 
> 
> Thanks Eric. Should I resend with changelog of v2 and v2 in subject line?

Yes, doing so will give it better visibility.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 621 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2013-08-14 16:08 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-08-13 20:00 [Qemu-devel] [PATCH] slirp: Port redirection option behave differently on Linux and Windows Taimoor
2013-08-13 20:21 ` Stefan Weil
2013-08-13 21:02   ` Taimoor Mirza
2013-08-13 21:05 ` Taimoor
2013-08-13 21:20   ` Eric Blake
2013-08-14 15:49     ` Taimoor Mirza
2013-08-14 16:08       ` Eric Blake

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.