[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] Re: [PATCH 19/22] net: socket: replace qemu_format_nic_info
From: |
Luiz Capitulino |
Subject: |
[Qemu-devel] Re: [PATCH 19/22] net: socket: replace qemu_format_nic_info_str by qemu_format_nic_info_dict |
Date: |
Fri, 9 Apr 2010 14:47:53 -0300 |
On Thu, 8 Apr 2010 17:16:36 -0300
Miguel Di Ciurcio Filho <address@hidden> wrote:
> Signed-off-by: Miguel Di Ciurcio Filho <address@hidden>
> ---
> net/socket.c | 47 ++++++++++++++++++++++++++++++++++-------------
> 1 files changed, 34 insertions(+), 13 deletions(-)
>
> diff --git a/net/socket.c b/net/socket.c
> index 1c4e153..3521e21 100644
> --- a/net/socket.c
> +++ b/net/socket.c
> @@ -28,6 +28,10 @@
> #include "net.h"
> #include "qemu-char.h"
> #include "qemu-common.h"
> +#include "qdict.h"
> +#include "qstring.h"
> +#include "qbool.h"
> +#include "qint.h"
> #include "qemu-error.h"
> #include "qemu-option.h"
> #include "qemu_socket.h"
> @@ -266,11 +270,16 @@ static NetSocketState
> *net_socket_fd_init_dgram(VLANState *vlan,
> }
>
> nc = qemu_new_net_client(&net_dgram_socket_info, vlan, NULL, model,
> name);
> -
> - snprintf(nc->info_str, sizeof(nc->info_str),
> - "socket: fd=%d (%s mcast=%s:%d)",
> - fd, is_connected ? "cloned" : "",
> - inet_ntoa(saddr.sin_addr), ntohs(saddr.sin_port));
> +
> + nc->info_dict = qdict_new();
> + qdict_put(nc->info_dict, "fd", qint_from_int(fd));
> +
> + char mcast_addr[22];
> + snprintf(mcast_addr, strlen(mcast_addr), "%s:%d",
> + inet_ntoa(saddr.sin_addr),
> + ntohs(saddr.sin_port));
> + qdict_put(nc->info_dict, "mcast", qstring_from_str(mcast_addr));
We should break 'mcast', otherwise QMP clients will have to parse it. Maybe
you can make vnc.c::put_addr_qdict() public and use it (with a better name).
Note that this is also valid for 'connection_from' and all the others..
> + qdict_put(nc->info_dict, "cloned", qbool_from_int(is_connected));
>
> s = DO_UPCAST(NetSocketState, nc, nc);
>
> @@ -306,8 +315,9 @@ static NetSocketState
> *net_socket_fd_init_stream(VLANState *vlan,
> NetSocketState *s;
>
> nc = qemu_new_net_client(&net_socket_info, vlan, NULL, model, name);
> + nc->info_dict = qdict_new();
>
> - snprintf(nc->info_str, sizeof(nc->info_str), "socket: fd=%d", fd);
> + qdict_put(nc->info_dict, "fd", qint_from_int(fd));
>
> s = DO_UPCAST(NetSocketState, nc, nc);
>
> @@ -366,9 +376,12 @@ static void net_socket_accept(void *opaque)
> if (!s1) {
> closesocket(fd);
> } else {
> - snprintf(s1->nc.info_str, sizeof(s1->nc.info_str),
> - "socket: connection from %s:%d",
> + char connection_from[22];
> + s1->nc.info_dict = qdict_new();
> +
> + snprintf(connection_from, strlen(connection_from), "%s:%d",
> inet_ntoa(saddr.sin_addr), ntohs(saddr.sin_port));
> + qdict_put(s1->nc.info_dict, "connection_from",
> qstring_from_str(connection_from));
> }
> }
>
> @@ -459,9 +472,13 @@ static int net_socket_connect_init(VLANState *vlan,
> s = net_socket_fd_init(vlan, model, name, fd, connected);
> if (!s)
> return -1;
> - snprintf(s->nc.info_str, sizeof(s->nc.info_str),
> - "socket: connect to %s:%d",
> +
> + char connect_to[22];
> + s->nc.info_dict = qdict_new();
> +
> + snprintf(connect_to, strlen(connect_to), "%s:%d",
> inet_ntoa(saddr.sin_addr), ntohs(saddr.sin_port));
> + qdict_put(s->nc.info_dict, "connect_to", qstring_from_str(connect_to));
> return 0;
> }
>
> @@ -487,10 +504,14 @@ static int net_socket_mcast_init(VLANState *vlan,
> return -1;
>
> s->dgram_dst = saddr;
> +
> + s->nc.info_dict = qdict_new();
> + char mcast_addr[22];
> + snprintf(mcast_addr, strlen(mcast_addr), "%s:%d",
> + inet_ntoa(saddr.sin_addr),
> + ntohs(saddr.sin_port));
> + qdict_put(s->nc.info_dict, "mcast", qstring_from_str(mcast_addr));
>
> - snprintf(s->nc.info_str, sizeof(s->nc.info_str),
> - "socket: mcast=%s:%d",
> - inet_ntoa(saddr.sin_addr), ntohs(saddr.sin_port));
> return 0;
>
> }
- [Qemu-devel] [PATCH 11/22] net: rtl8139: replace qemu_format_nic_info_str by qemu_format_nic_info_dict, (continued)
- [Qemu-devel] [PATCH 11/22] net: rtl8139: replace qemu_format_nic_info_str by qemu_format_nic_info_dict, Miguel Di Ciurcio Filho, 2010/04/08
- [Qemu-devel] [PATCH 12/22] net: smc91c111: replace qemu_format_nic_info_str by qemu_format_nic_info_dict, Miguel Di Ciurcio Filho, 2010/04/08
- [Qemu-devel] [PATCH 13/22] net: stellaris_enet: replace qemu_format_nic_info_str by qemu_format_nic_info_dict, Miguel Di Ciurcio Filho, 2010/04/08
- [Qemu-devel] [PATCH 14/22] net: usb-net: replace qemu_format_nic_info_str by qemu_format_nic_info_dict, Miguel Di Ciurcio Filho, 2010/04/08
- [Qemu-devel] [PATCH 15/22] net: virtio-net: replace qemu_format_nic_info_str by qemu_format_nic_info_dict, Miguel Di Ciurcio Filho, 2010/04/08
- [Qemu-devel] [PATCH 17/22] net: dump: replace qemu_format_nic_info_str by qemu_format_nic_info_dict, Miguel Di Ciurcio Filho, 2010/04/08
- [Qemu-devel] [PATCH 16/22] net: xilinx_ethlite: replace qemu_format_nic_info_str by qemu_format_nic_info_dict, Miguel Di Ciurcio Filho, 2010/04/08
- [Qemu-devel] [PATCH 18/22] net: slirp: replace qemu_format_nic_info_str by qemu_format_nic_info_dict, Miguel Di Ciurcio Filho, 2010/04/08
- [Qemu-devel] [PATCH 19/22] net: socket: replace qemu_format_nic_info_str by qemu_format_nic_info_dict, Miguel Di Ciurcio Filho, 2010/04/08
- [Qemu-devel] Re: [PATCH 19/22] net: socket: replace qemu_format_nic_info_str by qemu_format_nic_info_dict,
Luiz Capitulino <=
- [Qemu-devel] [PATCH 20/22] net: tap: replace qemu_format_nic_info_str by info_dict, Miguel Di Ciurcio Filho, 2010/04/08
- [Qemu-devel] [PATCH 21/22] net: vde: replace qemu_format_nic_info_str by info_dict, Miguel Di Ciurcio Filho, 2010/04/08
- [Qemu-devel] [PATCH 22/22] monitor/net: Convert do_info_network() to QObject/QMP, Miguel Di Ciurcio Filho, 2010/04/08
- [Qemu-devel] Re: [PATCH 0/22] Convert do_info_network() to QObject/QMP, Luiz Capitulino, 2010/04/09