* [Qemu-devel] [PATCH] w32: Fix build with new net bridge code
@ 2012-02-04 8:24 Stefan Weil
2012-02-04 11:50 ` Blue Swirl
2012-02-05 16:14 ` Corey Bryant
0 siblings, 2 replies; 3+ messages in thread
From: Stefan Weil @ 2012-02-04 8:24 UTC (permalink / raw)
To: Anthony Liguori; +Cc: Stefan Weil, Corey Bryant, qemu-devel
Commit a7c36ee4920ea3acc227a0248dd161693f207357 added code for a net
bridge and explicitly said that "this is very Linux centric".
Indeed, compilation failed for w32, so the bridge code is now
conditional. Hosts which don't support it can simply remove the
definition of CONFIG_NET_BRIDGE.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
---
Was the .name = "helper" intentional? That name is rather unspecific.
Regards,
Stefan Weil
net.c | 19 ++++++++++++++++---
1 files changed, 16 insertions(+), 3 deletions(-)
diff --git a/net.c b/net.c
index 1944539..c34474f 100644
--- a/net.c
+++ b/net.c
@@ -38,6 +38,11 @@
#include "hw/qdev.h"
#include "iov.h"
+/* Net bridge is currently not supported for W32. */
+#if !defined(_WIN32)
+# define CONFIG_NET_BRIDGE
+#endif
+
static QTAILQ_HEAD(, VLANState) vlans;
static QTAILQ_HEAD(, VLANClientState) non_vlan_clients;
@@ -952,10 +957,12 @@ static const struct {
.type = QEMU_OPT_STRING,
.help = "script to shut down the interface",
}, {
+#ifdef CONFIG_NET_BRIDGE
.name = "helper",
.type = QEMU_OPT_STRING,
.help = "command to execute to configure bridge",
}, {
+#endif
.name = "sndbuf",
.type = QEMU_OPT_SIZE,
.help = "send buffer limit"
@@ -1057,6 +1064,7 @@ static const struct {
{ /* end of list */ }
},
},
+#ifdef CONFIG_NET_BRIDGE
[NET_CLIENT_TYPE_BRIDGE] = {
.type = "bridge",
.init = net_init_bridge,
@@ -1074,6 +1082,7 @@ static const struct {
{ /* end of list */ }
},
},
+#endif /* CONFIG_NET_BRIDGE */
};
int net_client_init(Monitor *mon, QemuOpts *opts, int is_netdev)
@@ -1090,14 +1099,16 @@ int net_client_init(Monitor *mon, QemuOpts *opts, int is_netdev)
if (is_netdev) {
if (strcmp(type, "tap") != 0 &&
+#ifdef CONFIG_NET_BRIDGE
+ strcmp(type, "bridge") != 0 &&
+#endif
#ifdef CONFIG_SLIRP
strcmp(type, "user") != 0 &&
#endif
#ifdef CONFIG_VDE
strcmp(type, "vde") != 0 &&
#endif
- strcmp(type, "socket") != 0 &&
- strcmp(type, "bridge") != 0) {
+ strcmp(type, "socket") != 0) {
qerror_report(QERR_INVALID_PARAMETER_VALUE, "type",
"a netdev backend type");
return -1;
@@ -1161,13 +1172,15 @@ static int net_host_check_device(const char *device)
{
int i;
const char *valid_param_list[] = { "tap", "socket", "dump"
+#ifdef CONFIG_NET_BRIDGE
+ , "bridge"
+#endif
#ifdef CONFIG_SLIRP
,"user"
#endif
#ifdef CONFIG_VDE
,"vde"
#endif
- , "bridge"
};
for (i = 0; i < sizeof(valid_param_list) / sizeof(char *); i++) {
if (!strncmp(valid_param_list[i], device,
--
1.7.8.3
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [Qemu-devel] [PATCH] w32: Fix build with new net bridge code
2012-02-04 8:24 [Qemu-devel] [PATCH] w32: Fix build with new net bridge code Stefan Weil
@ 2012-02-04 11:50 ` Blue Swirl
2012-02-05 16:14 ` Corey Bryant
1 sibling, 0 replies; 3+ messages in thread
From: Blue Swirl @ 2012-02-04 11:50 UTC (permalink / raw)
To: Stefan Weil; +Cc: Anthony Liguori, Corey Bryant, qemu-devel
Thanks, applied.
On Sat, Feb 4, 2012 at 08:24, Stefan Weil <sw@weilnetz.de> wrote:
> Commit a7c36ee4920ea3acc227a0248dd161693f207357 added code for a net
> bridge and explicitly said that "this is very Linux centric".
>
> Indeed, compilation failed for w32, so the bridge code is now
> conditional. Hosts which don't support it can simply remove the
> definition of CONFIG_NET_BRIDGE.
>
> Signed-off-by: Stefan Weil <sw@weilnetz.de>
> ---
>
> Was the .name = "helper" intentional? That name is rather unspecific.
>
> Regards,
> Stefan Weil
>
> net.c | 19 ++++++++++++++++---
> 1 files changed, 16 insertions(+), 3 deletions(-)
>
> diff --git a/net.c b/net.c
> index 1944539..c34474f 100644
> --- a/net.c
> +++ b/net.c
> @@ -38,6 +38,11 @@
> #include "hw/qdev.h"
> #include "iov.h"
>
> +/* Net bridge is currently not supported for W32. */
> +#if !defined(_WIN32)
> +# define CONFIG_NET_BRIDGE
> +#endif
> +
> static QTAILQ_HEAD(, VLANState) vlans;
> static QTAILQ_HEAD(, VLANClientState) non_vlan_clients;
>
> @@ -952,10 +957,12 @@ static const struct {
> .type = QEMU_OPT_STRING,
> .help = "script to shut down the interface",
> }, {
> +#ifdef CONFIG_NET_BRIDGE
> .name = "helper",
> .type = QEMU_OPT_STRING,
> .help = "command to execute to configure bridge",
> }, {
> +#endif
> .name = "sndbuf",
> .type = QEMU_OPT_SIZE,
> .help = "send buffer limit"
> @@ -1057,6 +1064,7 @@ static const struct {
> { /* end of list */ }
> },
> },
> +#ifdef CONFIG_NET_BRIDGE
> [NET_CLIENT_TYPE_BRIDGE] = {
> .type = "bridge",
> .init = net_init_bridge,
> @@ -1074,6 +1082,7 @@ static const struct {
> { /* end of list */ }
> },
> },
> +#endif /* CONFIG_NET_BRIDGE */
> };
>
> int net_client_init(Monitor *mon, QemuOpts *opts, int is_netdev)
> @@ -1090,14 +1099,16 @@ int net_client_init(Monitor *mon, QemuOpts *opts, int is_netdev)
>
> if (is_netdev) {
> if (strcmp(type, "tap") != 0 &&
> +#ifdef CONFIG_NET_BRIDGE
> + strcmp(type, "bridge") != 0 &&
> +#endif
> #ifdef CONFIG_SLIRP
> strcmp(type, "user") != 0 &&
> #endif
> #ifdef CONFIG_VDE
> strcmp(type, "vde") != 0 &&
> #endif
> - strcmp(type, "socket") != 0 &&
> - strcmp(type, "bridge") != 0) {
> + strcmp(type, "socket") != 0) {
> qerror_report(QERR_INVALID_PARAMETER_VALUE, "type",
> "a netdev backend type");
> return -1;
> @@ -1161,13 +1172,15 @@ static int net_host_check_device(const char *device)
> {
> int i;
> const char *valid_param_list[] = { "tap", "socket", "dump"
> +#ifdef CONFIG_NET_BRIDGE
> + , "bridge"
> +#endif
> #ifdef CONFIG_SLIRP
> ,"user"
> #endif
> #ifdef CONFIG_VDE
> ,"vde"
> #endif
> - , "bridge"
> };
> for (i = 0; i < sizeof(valid_param_list) / sizeof(char *); i++) {
> if (!strncmp(valid_param_list[i], device,
> --
> 1.7.8.3
>
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Qemu-devel] [PATCH] w32: Fix build with new net bridge code
2012-02-04 8:24 [Qemu-devel] [PATCH] w32: Fix build with new net bridge code Stefan Weil
2012-02-04 11:50 ` Blue Swirl
@ 2012-02-05 16:14 ` Corey Bryant
1 sibling, 0 replies; 3+ messages in thread
From: Corey Bryant @ 2012-02-05 16:14 UTC (permalink / raw)
To: Stefan Weil; +Cc: Anthony Liguori, qemu-devel
On 02/04/2012 03:24 AM, Stefan Weil wrote:
> Commit a7c36ee4920ea3acc227a0248dd161693f207357 added code for a net
> bridge and explicitly said that "this is very Linux centric".
>
> Indeed, compilation failed for w32, so the bridge code is now
> conditional. Hosts which don't support it can simply remove the
> definition of CONFIG_NET_BRIDGE.
>
> Signed-off-by: Stefan Weil<sw@weilnetz.de>
> ---
>
> Was the .name = "helper" intentional? That name is rather unspecific.
>
> Regards,
> Stefan Weil
>
Thanks a lot for the patch.
The "helper" option takes a command to execute a helper program that
adds a tap device to a network bridge. So I'm thinking "bridgehelper"
would be more descriptive, though a bit long.
--
Regards,
Corey
> net.c | 19 ++++++++++++++++---
> 1 files changed, 16 insertions(+), 3 deletions(-)
>
> diff --git a/net.c b/net.c
> index 1944539..c34474f 100644
> --- a/net.c
> +++ b/net.c
> @@ -38,6 +38,11 @@
> #include "hw/qdev.h"
> #include "iov.h"
>
> +/* Net bridge is currently not supported for W32. */
> +#if !defined(_WIN32)
> +# define CONFIG_NET_BRIDGE
> +#endif
> +
> static QTAILQ_HEAD(, VLANState) vlans;
> static QTAILQ_HEAD(, VLANClientState) non_vlan_clients;
>
> @@ -952,10 +957,12 @@ static const struct {
> .type = QEMU_OPT_STRING,
> .help = "script to shut down the interface",
> }, {
> +#ifdef CONFIG_NET_BRIDGE
> .name = "helper",
> .type = QEMU_OPT_STRING,
> .help = "command to execute to configure bridge",
> }, {
> +#endif
> .name = "sndbuf",
> .type = QEMU_OPT_SIZE,
> .help = "send buffer limit"
> @@ -1057,6 +1064,7 @@ static const struct {
> { /* end of list */ }
> },
> },
> +#ifdef CONFIG_NET_BRIDGE
> [NET_CLIENT_TYPE_BRIDGE] = {
> .type = "bridge",
> .init = net_init_bridge,
> @@ -1074,6 +1082,7 @@ static const struct {
> { /* end of list */ }
> },
> },
> +#endif /* CONFIG_NET_BRIDGE */
> };
>
> int net_client_init(Monitor *mon, QemuOpts *opts, int is_netdev)
> @@ -1090,14 +1099,16 @@ int net_client_init(Monitor *mon, QemuOpts *opts, int is_netdev)
>
> if (is_netdev) {
> if (strcmp(type, "tap") != 0&&
> +#ifdef CONFIG_NET_BRIDGE
> + strcmp(type, "bridge") != 0&&
> +#endif
> #ifdef CONFIG_SLIRP
> strcmp(type, "user") != 0&&
> #endif
> #ifdef CONFIG_VDE
> strcmp(type, "vde") != 0&&
> #endif
> - strcmp(type, "socket") != 0&&
> - strcmp(type, "bridge") != 0) {
> + strcmp(type, "socket") != 0) {
> qerror_report(QERR_INVALID_PARAMETER_VALUE, "type",
> "a netdev backend type");
> return -1;
> @@ -1161,13 +1172,15 @@ static int net_host_check_device(const char *device)
> {
> int i;
> const char *valid_param_list[] = { "tap", "socket", "dump"
> +#ifdef CONFIG_NET_BRIDGE
> + , "bridge"
> +#endif
> #ifdef CONFIG_SLIRP
> ,"user"
> #endif
> #ifdef CONFIG_VDE
> ,"vde"
> #endif
> - , "bridge"
> };
> for (i = 0; i< sizeof(valid_param_list) / sizeof(char *); i++) {
> if (!strncmp(valid_param_list[i], device,
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2012-02-05 16:15 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-04 8:24 [Qemu-devel] [PATCH] w32: Fix build with new net bridge code Stefan Weil
2012-02-04 11:50 ` Blue Swirl
2012-02-05 16:14 ` Corey Bryant
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).