diff options
Diffstat (limited to 'net')
-rw-r--r-- | net/Makefile.objs | 15 | ||||
-rw-r--r-- | net/colo-compare.c | 33 | ||||
-rw-r--r-- | net/dump.c | 3 | ||||
-rw-r--r-- | net/filter-mirror.c | 35 | ||||
-rw-r--r-- | net/net.c | 13 | ||||
-rw-r--r-- | net/tap-haiku.c | 87 | ||||
-rw-r--r-- | net/tap-stub.c (renamed from net/tap-aix.c) | 3 | ||||
-rw-r--r-- | net/trace-events | 3 |
8 files changed, 64 insertions, 128 deletions
diff --git a/net/Makefile.objs b/net/Makefile.objs index 2e2fd43014..67ba5e26fb 100644 --- a/net/Makefile.objs +++ b/net/Makefile.objs @@ -3,13 +3,7 @@ common-obj-y += socket.o common-obj-y += dump.o common-obj-y += eth.o common-obj-$(CONFIG_L2TPV3) += l2tpv3.o -common-obj-$(CONFIG_POSIX) += tap.o vhost-user.o -common-obj-$(CONFIG_LINUX) += tap-linux.o -common-obj-$(CONFIG_WIN32) += tap-win32.o -common-obj-$(CONFIG_BSD) += tap-bsd.o -common-obj-$(CONFIG_SOLARIS) += tap-solaris.o -common-obj-$(CONFIG_AIX) += tap-aix.o -common-obj-$(CONFIG_HAIKU) += tap-haiku.o +common-obj-$(CONFIG_POSIX) += vhost-user.o common-obj-$(CONFIG_SLIRP) += slirp.o common-obj-$(CONFIG_VDE) += vde.o common-obj-$(CONFIG_NETMAP) += netmap.o @@ -20,3 +14,10 @@ common-obj-y += colo-compare.o common-obj-y += colo.o common-obj-y += filter-rewriter.o common-obj-y += filter-replay.o + +tap-obj-$(CONFIG_LINUX) = tap-linux.o +tap-obj-$(CONFIG_BSD) = tap-bsd.o +tap-obj-$(CONFIG_SOLARIS) = tap-solaris.o +tap-obj-y ?= tap-stub.o +common-obj-$(CONFIG_POSIX) += tap.o $(tap-obj-y) +common-obj-$(CONFIG_WIN32) += tap-win32.o diff --git a/net/colo-compare.c b/net/colo-compare.c index 4ab80b1cbb..2639c7f0a2 100644 --- a/net/colo-compare.c +++ b/net/colo-compare.c @@ -265,17 +265,28 @@ static int colo_packet_compare_tcp(Packet *spkt, Packet *ppkt) } if (res != 0 && trace_event_get_state(TRACE_COLO_COMPARE_MISCOMPARE)) { - trace_colo_compare_pkt_info_src(inet_ntoa(ppkt->ip->ip_src), - ntohl(stcp->th_seq), - ntohl(stcp->th_ack), - res, stcp->th_flags, - spkt->size); - - trace_colo_compare_pkt_info_dst(inet_ntoa(ppkt->ip->ip_dst), - ntohl(ptcp->th_seq), - ntohl(ptcp->th_ack), - res, ptcp->th_flags, - ppkt->size); + char pri_ip_src[20], pri_ip_dst[20], sec_ip_src[20], sec_ip_dst[20]; + + strcpy(pri_ip_src, inet_ntoa(ppkt->ip->ip_src)); + strcpy(pri_ip_dst, inet_ntoa(ppkt->ip->ip_dst)); + strcpy(sec_ip_src, inet_ntoa(spkt->ip->ip_src)); + strcpy(sec_ip_dst, inet_ntoa(spkt->ip->ip_dst)); + + trace_colo_compare_ip_info(ppkt->size, pri_ip_src, + pri_ip_dst, spkt->size, + sec_ip_src, sec_ip_dst); + + trace_colo_compare_tcp_info("pri tcp packet", + ntohl(ptcp->th_seq), + ntohl(ptcp->th_ack), + res, ptcp->th_flags, + ppkt->size); + + trace_colo_compare_tcp_info("sec tcp packet", + ntohl(stcp->th_seq), + ntohl(stcp->th_ack), + res, stcp->th_flags, + spkt->size); qemu_hexdump((char *)ppkt->data, stderr, "colo-compare ppkt", ppkt->size); diff --git a/net/dump.c b/net/dump.c index 89a149b5dd..442eb532f9 100644 --- a/net/dump.c +++ b/net/dump.c @@ -194,6 +194,9 @@ int net_init_dump(const Netdev *netdev, const char *name, assert(peer); + error_report("'-net dump' is deprecated. " + "Please use '-object filter-dump' instead."); + if (dump->has_file) { file = dump->file; } else { diff --git a/net/filter-mirror.c b/net/filter-mirror.c index 72fa7c2b6c..8b1b06977d 100644 --- a/net/filter-mirror.c +++ b/net/filter-mirror.c @@ -43,9 +43,9 @@ typedef struct MirrorState { SocketReadState rs; } MirrorState; -static int filter_mirror_send(CharBackend *chr_out, - const struct iovec *iov, - int iovcnt) +static int filter_send(CharBackend *chr_out, + const struct iovec *iov, + int iovcnt) { int ret = 0; ssize_t size = 0; @@ -141,9 +141,9 @@ static ssize_t filter_mirror_receive_iov(NetFilterState *nf, MirrorState *s = FILTER_MIRROR(nf); int ret; - ret = filter_mirror_send(&s->chr_out, iov, iovcnt); + ret = filter_send(&s->chr_out, iov, iovcnt); if (ret) { - error_report("filter_mirror_send failed(%s)", strerror(-ret)); + error_report("filter mirror send failed(%s)", strerror(-ret)); } /* @@ -164,9 +164,9 @@ static ssize_t filter_redirector_receive_iov(NetFilterState *nf, int ret; if (qemu_chr_fe_get_driver(&s->chr_out)) { - ret = filter_mirror_send(&s->chr_out, iov, iovcnt); + ret = filter_send(&s->chr_out, iov, iovcnt); if (ret) { - error_report("filter_mirror_send failed(%s)", strerror(-ret)); + error_report("filter redirector send failed(%s)", strerror(-ret)); } return iov_size(iov, iovcnt); } else { @@ -194,12 +194,6 @@ static void filter_mirror_setup(NetFilterState *nf, Error **errp) MirrorState *s = FILTER_MIRROR(nf); Chardev *chr; - if (!s->outdev) { - error_setg(errp, "filter mirror needs 'outdev' " - "property set"); - return; - } - chr = qemu_chr_find(s->outdev); if (chr == NULL) { error_set(errp, ERROR_CLASS_DEVICE_NOT_FOUND, @@ -292,8 +286,9 @@ static char *filter_redirector_get_indev(Object *obj, Error **errp) return g_strdup(s->indev); } -static void -filter_redirector_set_indev(Object *obj, const char *value, Error **errp) +static void filter_redirector_set_indev(Object *obj, + const char *value, + Error **errp) { MirrorState *s = FILTER_REDIRECTOR(obj); @@ -308,8 +303,9 @@ static char *filter_mirror_get_outdev(Object *obj, Error **errp) return g_strdup(s->outdev); } -static void -filter_mirror_set_outdev(Object *obj, const char *value, Error **errp) +static void filter_mirror_set_outdev(Object *obj, + const char *value, + Error **errp) { MirrorState *s = FILTER_MIRROR(obj); @@ -329,8 +325,9 @@ static char *filter_redirector_get_outdev(Object *obj, Error **errp) return g_strdup(s->outdev); } -static void -filter_redirector_set_outdev(Object *obj, const char *value, Error **errp) +static void filter_redirector_set_outdev(Object *obj, + const char *value, + Error **errp) { MirrorState *s = FILTER_REDIRECTOR(obj); @@ -45,6 +45,7 @@ #include "qapi-visit.h" #include "qapi/opts-visitor.h" #include "sysemu/sysemu.h" +#include "sysemu/qtest.h" #include "net/filter.h" #include "qapi/string-output-visitor.h" @@ -1149,6 +1150,12 @@ void hmp_host_net_add(Monitor *mon, const QDict *qdict) const char *opts_str = qdict_get_try_str(qdict, "opts"); Error *local_err = NULL; QemuOpts *opts; + static bool warned; + + if (!warned && !qtest_enabled()) { + error_report("host_net_add is deprecated, use netdev_add instead"); + warned = true; + } if (!net_host_check_device(device)) { monitor_printf(mon, "invalid host network device %s\n", device); @@ -1175,6 +1182,12 @@ void hmp_host_net_remove(Monitor *mon, const QDict *qdict) NetClientState *nc; int vlan_id = qdict_get_int(qdict, "vlan_id"); const char *device = qdict_get_str(qdict, "device"); + static bool warned; + + if (!warned && !qtest_enabled()) { + error_report("host_net_remove is deprecated, use netdev_del instead"); + warned = true; + } nc = net_hub_find_client_by_name(vlan_id, device); if (!nc) { diff --git a/net/tap-haiku.c b/net/tap-haiku.c deleted file mode 100644 index b27e57e955..0000000000 --- a/net/tap-haiku.c +++ /dev/null @@ -1,87 +0,0 @@ -/* - * QEMU System Emulator - * - * Copyright (c) 2003-2008 Fabrice Bellard - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#include "qemu/osdep.h" -#include "qapi/error.h" -#include "tap_int.h" - -int tap_open(char *ifname, int ifname_size, int *vnet_hdr, - int vnet_hdr_required, int mq_required, Error **errp) -{ - error_setg(errp, "no tap on Haiku"); - return -1; -} - -void tap_set_sndbuf(int fd, const NetdevTapOptions *tap, Error **errp) -{ -} - -int tap_probe_vnet_hdr(int fd) -{ - return 0; -} - -int tap_probe_has_ufo(int fd) -{ - return 0; -} - -int tap_probe_vnet_hdr_len(int fd, int len) -{ - return 0; -} - -void tap_fd_set_vnet_hdr_len(int fd, int len) -{ -} - -int tap_fd_set_vnet_le(int fd, int is_le) -{ - return -EINVAL; -} - -int tap_fd_set_vnet_be(int fd, int is_be) -{ - return -EINVAL; -} - -void tap_fd_set_offload(int fd, int csum, int tso4, - int tso6, int ecn, int ufo) -{ -} - -int tap_fd_enable(int fd) -{ - return -1; -} - -int tap_fd_disable(int fd) -{ - return -1; -} - -int tap_fd_get_ifname(int fd, char *ifname) -{ - return -1; -} diff --git a/net/tap-aix.c b/net/tap-stub.c index 0e6da63963..a9ab8f8293 100644 --- a/net/tap-aix.c +++ b/net/tap-stub.c @@ -29,7 +29,7 @@ int tap_open(char *ifname, int ifname_size, int *vnet_hdr, int vnet_hdr_required, int mq_required, Error **errp) { - error_setg(errp, "no tap on AIX"); + error_setg(errp, "tap is not supported in this build"); return -1; } @@ -85,4 +85,3 @@ int tap_fd_get_ifname(int fd, char *ifname) { return -1; } - diff --git a/net/trace-events b/net/trace-events index 35198bc742..247e5c04db 100644 --- a/net/trace-events +++ b/net/trace-events @@ -13,8 +13,7 @@ colo_compare_icmp_miscompare(const char *sta, int size) ": %s = %d" colo_compare_ip_info(int psize, const char *sta, const char *stb, int ssize, const char *stc, const char *std) "ppkt size = %d, ip_src = %s, ip_dst = %s, spkt size = %d, ip_src = %s, ip_dst = %s" colo_old_packet_check_found(int64_t old_time) "%" PRId64 colo_compare_miscompare(void) "" -colo_compare_pkt_info_src(const char *src, uint32_t sseq, uint32_t sack, int res, uint32_t sflag, int ssize) "src/dst: %s s: seq/ack=%u/%u res=%d flags=%x spkt_size: %d\n" -colo_compare_pkt_info_dst(const char *dst, uint32_t dseq, uint32_t dack, int res, uint32_t dflag, int dsize) "src/dst: %s d: seq/ack=%u/%u res=%d flags=%x dpkt_size: %d\n" +colo_compare_tcp_info(const char *pkt, uint32_t seq, uint32_t ack, int res, uint32_t flag, int size) "side: %s seq/ack= %u/%u res= %d flags= %x pkt_size: %d\n" # net/filter-rewriter.c colo_filter_rewriter_debug(void) "" |