From nobody Fri Dec 10 11:05:31 2021 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id A38C518DF0A7; Fri, 10 Dec 2021 11:05:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4J9Sk32ZYsz3NDM; Fri, 10 Dec 2021 11:05:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2B19C1916C; Fri, 10 Dec 2021 11:05:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 1BAB5Vih049083; Fri, 10 Dec 2021 11:05:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 1BAB5VO9049082; Fri, 10 Dec 2021 11:05:31 GMT (envelope-from git) Date: Fri, 10 Dec 2021 11:05:31 GMT Message-Id: <202112101105.1BAB5VO9049082@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Rene Ladan Subject: git: c46943ed9d69 - main - cleanup: Remove expired ports: List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rene X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c46943ed9d699a2b3a9e80c92c199c15d734d773 Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1639134331; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PNfhlMwJSKGI/XcLdpLe1gCTxRoRYU65LeLhTPfrBfc=; b=Jw3aKm+5YTORIN+M2cHSaR6wWyZY4AsT2Gc4UyCIgQCGvaCPAaZ7nQhLz2EtWwfELYTAHK /UyMPj+1d5TY6hehxVZzWmf+ZNPulJJQNyzmwPCC/o7HqDPPeFW1qIDBogFEmzQZ34gmds b01mkbO1wBiG9c4O5UYlSmSQR+KW+SWUtvsFOh204+5yb/Q5t1Hth2gxSSSgEoDDE2GgMW /c/h+9u4SHHIwLr/aVkZqmEQ0xdfTzbc34C75Bo22LuHLy0te5HZ/VqUFpoQOP50Nr56fJ w8AUEldqq01R+Iqrek3vTxFLEXml9LdmvVYkFWd11+1Z6zZrZYm1bY2fDKckxg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1639134331; a=rsa-sha256; cv=none; b=RXg9qplg6nUR9O62FKziWgHvRXoiEQjul2JvWrwCDH2mLL5JPXyrw28BdyBplOreDjZ077 K7ad/y+1igTB9/C2bH81YsXEkSs8bYcOPOMRYgHDsuuc6uWuysHuYRwD4BIo8/XjKm2DM9 D8INL2CpSHldwfUI+5wC3ujHj/H2BLQkwYIfOJ9EFiObqDJodiEruo8Lir83Qf1rnJ7o66 EPXboEW7dJUsBoP1buyh2L6E2kcNEAlWZxFWTciK8uNky0bLYQxodAaZ8VwZ+zXohnOMp6 NLMdxO8kghIrIr+tOYQgk9oQS5Y3gVkuHZDgnBhAZcSDiRE4E6NqWddRXbttpg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by rene: URL: https://cgit.FreeBSD.org/ports/commit/?id=c46943ed9d699a2b3a9e80c92c199c15d734d773 commit c46943ed9d699a2b3a9e80c92c199c15d734d773 Author: Rene Ladan AuthorDate: 2021-12-10 11:05:15 +0000 Commit: Rene Ladan CommitDate: 2021-12-10 11:05:15 +0000 cleanup: Remove expired ports: 2021-12-10 emulators/qemu41: Use emulators/qemu or emulators/qemu-devel --- MOVED | 1 + emulators/Makefile | 1 - emulators/qemu41/Makefile | 169 -------------- emulators/qemu41/distinfo | 3 - emulators/qemu41/files/patch-Makefile | 42 ---- emulators/qemu41/files/patch-configure | 213 ------------------ .../patch-disas_libvixl_vixl_a64_disasm-a64.cc | 11 - emulators/qemu41/files/patch-include_net_net.h | 13 -- emulators/qemu41/files/patch-include_qemu_atomic.h | 54 ----- emulators/qemu41/files/patch-net_tap-bsd.c | 10 - .../qemu41/files/patch-pc-bios_spapr-rtas_Makefile | 15 -- emulators/qemu41/files/patch-qemu-doc.texi | 21 -- emulators/qemu41/files/pcap-patch-net_clients.h | 13 -- emulators/qemu41/files/pcap-patch-net_net.c | 250 --------------------- emulators/qemu41/files/pcap-patch-qapi_net.json | 56 ----- emulators/qemu41/files/qemu-ifdown.sample | 2 - emulators/qemu41/files/qemu-ifup.sample | 2 - emulators/qemu41/pkg-descr | 16 -- emulators/qemu41/pkg-message | 188 ---------------- emulators/qemu41/pkg-plist | 177 --------------- 20 files changed, 1 insertion(+), 1256 deletions(-) diff --git a/MOVED b/MOVED index 056b821c6d7e..fe4058aac1b9 100644 --- a/MOVED +++ b/MOVED @@ -16612,3 +16612,4 @@ sysutils/bareos17-client-static||2021-12-05|Has expired: Deprecated, no new rele sysutils/bareos17-server|sysutils/bareos18-server|2021-12-05|Has expired: Deprecated, no new release since 2020 www/bareos17-webui|www/bareos18-webui|2021-12-05|Has expired: Deprecated, no new release since 2020 math/eigen2||2021-12-07|Has expired: No longer available upstream, no consumers in ports +emulators/qemu41||2021-12-10|Has expired: Use emulators/qemu or emulators/qemu-devel diff --git a/emulators/Makefile b/emulators/Makefile index ea5b9addf8b8..87f32bf6aaf0 100644 --- a/emulators/Makefile +++ b/emulators/Makefile @@ -107,7 +107,6 @@ SUBDIR += qemu-user-static SUBDIR += qemu-user-static-devel SUBDIR += qemu-utils - SUBDIR += qemu41 SUBDIR += qemu42 SUBDIR += qemu5 SUBDIR += qmc2 diff --git a/emulators/qemu41/Makefile b/emulators/qemu41/Makefile deleted file mode 100644 index 2f7b86f8bacf..000000000000 --- a/emulators/qemu41/Makefile +++ /dev/null @@ -1,169 +0,0 @@ -# Created by: Juergen Lock - -PORTNAME= qemu -PORTVERSION= 4.1.1 -PORTREVISION= 1 -CATEGORIES= emulators -MASTER_SITES= https://download.qemu.org/ -PKGNAMESUFFIX= 41 -DIST_SUBDIR= qemu/${PORTVERSION} - -MAINTAINER?= bofh@FreeBSD.org -COMMENT?= QEMU CPU Emulator - 4.1.X branch - -LICENSE= GPLv2 - -DEPRECATED= Use emulators/qemu or emulators/qemu-devel -EXPIRATION_DATE=2021-12-10 - -BUILD_DEPENDS= sphinx-build:textproc/py-sphinx@${PY_FLAVOR} -LIB_DEPENDS?= libepoxy.so:graphics/libepoxy \ - libfontconfig.so:x11-fonts/fontconfig \ - libfreetype.so:print/freetype2 \ - libnettle.so:security/nettle \ - libpcre2-8.so:devel/pcre2 - -ONLY_FOR_ARCHS= amd64 i386 powerpc powerpc64 powerpc64le -USES= bison compiler:c11 cpe gmake gnome iconv:wchar_t perl5 \ - pkgconfig python:build tar:xz xorg -USE_XORG= pixman -USE_GNOME= cairo glib20 libxml2 - -USE_PERL5= build - -PORTSCOUT= limit:^4\.1\. - -HAS_CONFIGURE= yes -MAKE_ENV+= BSD_MAKE="${MAKE}" V=1 - -OPTIONS_DEFINE= SAMBA X11 GTK3 OPENGL GNUTLS SASL JPEG PNG CURL \ - VDE CDROM_DMA PCAP USBREDIR X86_TARGETS \ - STATIC_LINK DOCS ISCSI -OPTIONS_SINGLE= NCURSES -OPTIONS_SINGLE_NCURSES= NCURSES_DEFAULT NCURSES_BASE NCURSES_PORT -CDROM_DMA_DESC= IDE CDROM DMA -GNUTLS_DESC= gnutls dependency (vnc encryption) -ISCSI_DESC= libiscsi dependency (iSCSI client for emulated drives) -JPEG_DESC= jpeg dependency (vnc lossy compression) -NCURSES_DEFAULT_DESC= Depend on ncurses (ports if installed, otherwise base) -NCURSES_BASE_DESC= Depend on ncurses in base -NCURSES_PORT_DESC= Depend on devel/ncurses in ports -PCAP_DESC= pcap dependency (networking with bpf) -PNG_DESC= png dependency (vnc compression) -SAMBA_DESC= samba dependency (for -smb) -SASL_DESC= cyrus-sasl dependency (vnc encryption) -STATIC_LINK_DESC= Statically link the executables -USBREDIR_DESC= usb device network redirection (experimental!) -VDE_DESC= vde dependency (for vde networking) -X86_TARGETS_DESC= Build only x86 system targets -OPTIONS_DEFAULT=X11 GTK3 OPENGL GNUTLS SASL JPEG PNG CDROM_DMA CURL PCAP NCURSES_DEFAULT VDE -OPTIONS_SUB= yes -CURL_CONFIGURE_OFF= --disable-curl -CURL_LIB_DEPENDS= libcurl.so:ftp/curl -DOCS_BUILD_DEPENDS= texi2html:textproc/texi2html -DOCS_MAKE_ARGS_OFF= NOPORTDOCS=1 -DOCS_USES= makeinfo -GNUTLS_CONFIGURE_OFF= --disable-gnutls -GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls -GTK3_CONFIGURE_OFF= --disable-gtk --disable-vte -GTK3_LIB_DEPENDS= libxkbcommon.so:x11/libxkbcommon -GTK3_USE= GNOME=gdkpixbuf2,gtk30,vte3 XORG=x11,xext -GTK3_USES= gettext gl -ISCSI_LIB_DEPENDS= libiscsi.so:net/libiscsi -ISCSI_CONFIGURE_OFF= --disable-libiscsi -JPEG_CONFIGURE_OFF= --disable-vnc-jpeg -JPEG_USES= jpeg -NCURSES_DEFAULT_USES= ncurses -NCURSES_BASE_USES= ncurses:base -NCURSES_PORT_USES= ncurses:port -OPENGL_CONFIGURE_OFF= --disable-opengl -OPENGL_USE= GL=gl -OPENGL_USES= gl -PCAP_CONFIGURE_ON= --enable-pcap -PCAP_EXTRA_PATCHES= ${FILESDIR}/pcap-patch-qapi_net.json ${FILESDIR}/pcap-patch-net_net.c \ - ${FILESDIR}/pcap-patch-net_clients.h -PNG_CONFIGURE_OFF= --disable-vnc-png -PNG_LIB_DEPENDS= libpng.so:graphics/png -SAMBA_CONFIGURE_ON= --smbd=${LOCALBASE}/sbin/smbd -SAMBA_USES= samba:run # smbd -SASL_CONFIGURE_OFF= --disable-vnc-sasl -SASL_LIB_DEPENDS= libsasl2.so:security/cyrus-sasl2 -STATIC_LINK_CONFIGURE_ON= --static -STATIC_LINK_PREVENTS= GTK3 X11 -STATIC_LINK_PREVENTS_MSG= X11 ui cannot be built static -USBREDIR_BUILD_DEPENDS= usbredir>=0.6:net/usbredir -USBREDIR_CONFIGURE_OFF= --disable-usb-redir -USBREDIR_RUN_DEPENDS= usbredir>=0.6:net/usbredir -VDE_CONFIGURE_OFF= --disable-vde -VDE_LIB_DEPENDS= libvdeplug.so:net/vde2 -X11_CONFIGURE_ENABLE= sdl -X11_USE= SDL=sdl2 XORG=x11,xext GNOME=gdkpixbuf2 -X11_USES= sdl -X86_TARGETS_LIB_DEPENDS_OFF= libharfbuzz.so:print/harfbuzz -X86_TARGETS_USE_OFF= GL=gbm XORG=pixman,x11 -X86_TARGETS_USES_OFF= xorg - -PORTDOCS?= docs interop/.buildinfo interop/* qemu-doc.html qemu-doc.txt qemu-ga-ref.html qemu-ga-ref.txt \ - qemu-qmp-ref.html qemu-qmp-ref.txt specs/.buildinfo specs/* - -WITHOUT_CPU_CFLAGS=yes #to avoid problems with register allocation -CFLAGS:= ${CFLAGS:C/-fno-tree-vrp//} -CFLAGS_powerpc= -D_CALL_SYSV -CONFIGURE_ARGS?= --localstatedir=/var --extra-ldflags=-L\"/usr/lib\" \ - --extra-ldflags=-L\"${LOCALBASE}/lib\" --disable-libssh --enable-debug \ - --prefix=${PREFIX} --cc=${CC} --enable-netmap --enable-docs --disable-kvm \ - --disable-linux-user --disable-linux-aio --disable-xen \ - --enable-debug-info --python=${PYTHON_CMD} \ - --extra-cflags=-I${WRKSRC}\ -I${LOCALBASE}/include\ -DPREFIX=\\\"\"${PREFIX}\\\"\" - -.include - -.if !defined(STRIP) || ${STRIP} == "" -CONFIGURE_ARGS+=--disable-strip -.endif - -.if ${ARCH} == "amd64" -MAKE_ARGS+= ARCH=x86_64 -.endif - -.if ${ARCH} == "powerpc" -MAKE_ARGS+= ARCH=ppc -.endif - -.if ${ARCH} == "powerpc64" -MAKE_ARGS+= ARCH=ppc64 -.endif - -.if ${ARCH} == "sparc64" -CONFIGURE_ARGS+= --sparc_cpu=v9 -.endif - -.if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1300000 -PLIST_SUB+= IVSHMEM="" -.else -PLIST_SUB+= IVSHMEM="@comment " -.endif - -PLIST_SUB+= LINUXBOOT_DMA="" - -post-patch-CDROM_DMA-off: - @${REINPLACE_CMD} -e '/USE_DMA_CDROM/d' ${WRKSRC}/include/hw/ide/internal.h - -# XXX need to disable usb host code on head while it's not ported to the -# new usb stack yet -post-configure: - @${REINPLACE_CMD} -E \ - -e "s|^(HOST_USB=)bsd|\1stub|" \ - ${WRKSRC}/config-host.mak - -.if !target(post-install) -post-install: - ${INSTALL_SCRIPT} ${FILESDIR}/qemu-ifup.sample ${STAGEDIR}${PREFIX}/etc - ${INSTALL_SCRIPT} ${FILESDIR}/qemu-ifdown.sample ${STAGEDIR}${PREFIX}/etc - @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/qemu-* - -post-install-DOCS-on: - @(cd ${WRKSRC} && ${COPYTREE_SHARE} docs ${STAGEDIR}${DOCSDIR}/) -.endif - -.include diff --git a/emulators/qemu41/distinfo b/emulators/qemu41/distinfo deleted file mode 100644 index f31eaf8f7221..000000000000 --- a/emulators/qemu41/distinfo +++ /dev/null @@ -1,3 +0,0 @@ -TIMESTAMP = 1574567528 -SHA256 (qemu/4.1.1/qemu-4.1.1.tar.xz) = ed6fdbbdd272611446ff8036991e9b9f04a2ab2e3ffa9e79f3bab0eb9a95a1d2 -SIZE (qemu/4.1.1/qemu-4.1.1.tar.xz) = 61932460 diff --git a/emulators/qemu41/files/patch-Makefile b/emulators/qemu41/files/patch-Makefile deleted file mode 100644 index 095b684f8e80..000000000000 --- a/emulators/qemu41/files/patch-Makefile +++ /dev/null @@ -1,42 +0,0 @@ ---- Makefile.orig 2019-04-23 18:14:45 UTC -+++ Makefile -@@ -311,9 +311,14 @@ LIBS+=-lz $(LIBS_TOOLS) - HELPERS-$(call land,$(CONFIG_SOFTMMU),$(CONFIG_LINUX)) = qemu-bridge-helper$(EXESUF) - - ifdef BUILD_DOCS -+ifdef NOPORTDOCS -+DOCS=qemu.1 qemu-img.1 qemu-nbd.8 qemu-ga.8 -+DOCS+=docs/interop/qemu-qmp-ref.7 docs/interop/qemu-ga-ref.7 -+else - DOCS=qemu-doc.html qemu-doc.txt qemu.1 qemu-img.1 qemu-nbd.8 qemu-ga.8 - DOCS+=docs/interop/qemu-qmp-ref.html docs/interop/qemu-qmp-ref.txt docs/interop/qemu-qmp-ref.7 - DOCS+=docs/interop/qemu-ga-ref.html docs/interop/qemu-ga-ref.txt docs/interop/qemu-ga-ref.7 -+endif - DOCS+=docs/qemu-block-drivers.7 - DOCS+=docs/qemu-cpu-models.7 - ifdef CONFIG_VIRTFS -@@ -742,11 +747,13 @@ install-sphinxdocs: sphinxdocs - $(call install-manual,interop) - - install-doc: $(DOCS) install-sphinxdocs -+ifndef NOPORTDOCS - $(INSTALL_DIR) "$(DESTDIR)$(qemu_docdir)" - $(INSTALL_DATA) qemu-doc.html "$(DESTDIR)$(qemu_docdir)" - $(INSTALL_DATA) qemu-doc.txt "$(DESTDIR)$(qemu_docdir)" - $(INSTALL_DATA) docs/interop/qemu-qmp-ref.html "$(DESTDIR)$(qemu_docdir)" - $(INSTALL_DATA) docs/interop/qemu-qmp-ref.txt "$(DESTDIR)$(qemu_docdir)" -+endif - ifdef CONFIG_POSIX - $(INSTALL_DIR) "$(DESTDIR)$(mandir)/man1" - $(INSTALL_DATA) qemu.1 "$(DESTDIR)$(mandir)/man1" -@@ -764,8 +771,10 @@ ifdef CONFIG_TRACE_SYSTEMTAP - endif - ifneq (,$(findstring qemu-ga,$(TOOLS))) - $(INSTALL_DATA) qemu-ga.8 "$(DESTDIR)$(mandir)/man8" -+ifndef NOPORTDOCS - $(INSTALL_DATA) docs/interop/qemu-ga-ref.html "$(DESTDIR)$(qemu_docdir)" - $(INSTALL_DATA) docs/interop/qemu-ga-ref.txt "$(DESTDIR)$(qemu_docdir)" -+endif - $(INSTALL_DATA) docs/interop/qemu-ga-ref.7 "$(DESTDIR)$(mandir)/man7" - endif - endif diff --git a/emulators/qemu41/files/patch-configure b/emulators/qemu41/files/patch-configure deleted file mode 100644 index ac02c833b418..000000000000 --- a/emulators/qemu41/files/patch-configure +++ /dev/null @@ -1,213 +0,0 @@ ---- configure.orig 2019-11-14 18:06:20 UTC -+++ configure -@@ -404,7 +404,7 @@ DSOSUF=".so" - LDFLAGS_SHARED="-shared" - modules="no" - prefix="/usr/local" --mandir="\${prefix}/share/man" -+mandir="\${prefix}/man" - datadir="\${prefix}/share" - firmwarepath="\${prefix}/share/qemu-firmware" - qemu_docdir="\${prefix}/share/doc/qemu" -@@ -484,6 +484,9 @@ numa="" - tcmalloc="no" - jemalloc="no" - replication="yes" -+pcap="no" -+pcap_create="no" -+bpf="no" - vxhs="" - bochs="yes" - cloop="yes" -@@ -1141,6 +1144,10 @@ for opt do - ;; - --enable-vnc-png) vnc_png="yes" - ;; -+ --enable-pcap) pcap="yes" -+ ;; -+ --disable-pcap) pcap="no" -+ ;; - --disable-slirp) slirp="no" - ;; - --enable-slirp=git) slirp="git" -@@ -2998,6 +3005,14 @@ if ! check_include "ifaddrs.h" ; then - fi - - ########################################## -+# getifaddrs (for tests/test-io-channel-socket ) -+ -+have_ifaddrs_h=yes -+if ! check_include "ifaddrs.h" ; then -+ have_ifaddrs_h=no -+fi -+ -+########################################## - # VTE probe - - if test "$vte" != "no"; then -@@ -3655,7 +3670,7 @@ for i in $glib_modules; do - glib_libs=$($pkg_config --libs $i) - QEMU_CFLAGS="$glib_cflags $QEMU_CFLAGS" - LIBS="$glib_libs $LIBS" -- libs_qga="$glib_libs $libs_qga" -+ libs_qga="$glib_libs -lintl $libs_qga" - else - error_exit "glib-$glib_req_ver $i is required to compile QEMU" - fi -@@ -4747,11 +4762,6 @@ has_sphinx_build() { - if test "$docs" != "no" ; then - if has makeinfo && has pod2man && has_sphinx_build; then - docs=yes -- else -- if test "$docs" = "yes" ; then -- feature_not_found "docs" "Install texinfo, Perl/perl-podlators and python-sphinx" -- fi -- docs=no - fi - fi - -@@ -4885,7 +4895,7 @@ fi - - # check for libusb - if test "$libusb" != "no" ; then -- if $pkg_config --atleast-version=1.0.13 libusb-1.0; then -+ if $pkg_config libusb-1.0; then - libusb="yes" - libusb_cflags=$($pkg_config --cflags libusb-1.0) - libusb_libs=$($pkg_config --libs libusb-1.0) -@@ -5275,7 +5285,51 @@ if test "$debug_stack_usage" = "yes"; then - fi - fi - -+########################################## -+# pcap probe - -+if test "$pcap" = "yes" -a "$pcap" != "no"; then -+ cat > $TMPC << EOF -+#include -+int main(void) { return (pcap_lib_version() == (char *)0 ? 1 : 0); } -+EOF -+ if test "$mingw32" = "no" ; then -+ libpcap=-lpcap -+ else -+ libpcap=-lwpcap -+ fi -+ if compile_prog "" "$libpcap" ; then -+ : -+ else -+ echo -+ echo "Error: Could not find pcap" -+ echo "Make sure to have the pcap libs and headers installed." -+ echo -+ exit 1 -+ fi -+ cat > $TMPC << EOF -+#include -+int main(void) -+{ -+ char errbuf[PCAP_ERRBUF_SIZE]; -+ return (pcap_create("foo", errbuf) == (pcap_t *)0 ? 1 : 0); -+} -+EOF -+ if compile_prog "" "$libpcap" ; then -+ pcap_create="yes" -+ fi -+ cat > $TMPC << EOF -+#define PCAP_DONT_INCLUDE_PCAP_BPF_H -+#include -+#include -+int main(void) { return (BPF_MAJOR_VERSION); } -+EOF -+ if compile_prog ; then -+ bpf="yes" -+ fi -+ libs_softmmu="$libpcap $libs_softmmu" -+fi # test "$pcap" -+ - ########################################## - # check if we have open_by_handle_at - -@@ -6241,27 +6295,30 @@ if ( [ "$linux_user" = yes ] || [ "$bsd_user" = yes ] - cat > $TMPC </dev/null 2>&1; then -- error_exit \ -- "We need to link the QEMU user mode binaries at a" \ -- "specific text address. Unfortunately your linker" \ -- "doesn't support either the -Ttext-segment option or" \ -- "printing the default linker script with --verbose." \ -- "If you don't want the user mode binaries, pass the" \ -- "--disable-user option to configure." -- fi -+ textseg_ldflags="-Wl,-Ttext-segment=$textseg_addr" -+ if ! compile_prog "" "$textseg_ldflags"; then -+ # In case ld does not support -Ttext-segment, edit the default linker -+ # script via sed to set the .text start addr. This is needed on FreeBSD -+ # at least. -+ if ! $ld --verbose >/dev/null 2>&1; then -+ error_exit \ -+ "We need to link the QEMU user mode binaries at a" \ -+ "specific text address. Unfortunately your linker" \ -+ "doesn't support either the -Ttext-segment option or" \ -+ "printing the default linker script with --verbose." \ -+ "If you don't want the user mode binaries, pass the" \ -+ "--disable-user option to configure." -+ fi - -- $ld --verbose | sed \ -- -e '1,/==================================================/d' \ -- -e '/==================================================/,$d' \ -- -e "s/[.] = [0-9a-fx]* [+] SIZEOF_HEADERS/. = $textseg_addr + SIZEOF_HEADERS/" \ -- -e "s/__executable_start = [0-9a-fx]*/__executable_start = $textseg_addr/" > config-host.ld -- textseg_ldflags="-Wl,-T../config-host.ld" -+ $ld --verbose | sed \ -+ -e '1,/==================================================/d' \ -+ -e '/==================================================/,$d' \ -+ -e "s/[.] = [0-9a-fx]* [+] SIZEOF_HEADERS/. = $textseg_addr + SIZEOF_HEADERS/" \ -+ -e "s/__executable_start = [0-9a-fx]*/__executable_start = $textseg_addr/" > config-host.ld -+ textseg_ldflags="-Wl,-T../config-host.ld" -+ fi - fi - fi - fi -@@ -6377,6 +6434,7 @@ echo "Audio drivers $audio_drv_list" - echo "Block whitelist (rw) $block_drv_rw_whitelist" - echo "Block whitelist (ro) $block_drv_ro_whitelist" - echo "VirtFS support $virtfs" -+echo "pcap support $pcap" - echo "Multipath support $mpath" - echo "VNC support $vnc" - if test "$vnc" = "yes" ; then -@@ -6617,6 +6675,15 @@ fi - if test "$profiler" = "yes" ; then - echo "CONFIG_PROFILER=y" >> $config_host_mak - fi -+if test "$pcap" = "yes" ; then -+ echo "CONFIG_PCAP=y" >> $config_host_mak -+ if test "$pcap_create" = "yes" ; then -+ echo "CONFIG_PCAP_CREATE=y" >> $config_host_mak -+ fi -+ if test "$bpf" = "yes" ; then -+ echo "CONFIG_BPF=y" >> $config_host_mak -+ fi -+fi - if test "$slirp" != "no"; then - echo "CONFIG_SLIRP=y" >> $config_host_mak - echo "CONFIG_SMBD_COMMAND=\"$smbd\"" >> $config_host_mak -@@ -6864,6 +6931,9 @@ fi - # if this macro is set. - if test "$have_fsxattr" = "yes" ; then - echo "HAVE_FSXATTR=y" >> $config_host_mak -+fi -+if test "$have_ifaddrs_h" = "yes" ; then -+ echo "HAVE_IFADDRS_H=y" >> $config_host_mak - fi - if test "$have_copy_file_range" = "yes" ; then - echo "HAVE_COPY_FILE_RANGE=y" >> $config_host_mak diff --git a/emulators/qemu41/files/patch-disas_libvixl_vixl_a64_disasm-a64.cc b/emulators/qemu41/files/patch-disas_libvixl_vixl_a64_disasm-a64.cc deleted file mode 100644 index 546595845c62..000000000000 --- a/emulators/qemu41/files/patch-disas_libvixl_vixl_a64_disasm-a64.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- disas/libvixl/vixl/a64/disasm-a64.cc.orig 2019-04-23 18:14:45 UTC -+++ disas/libvixl/vixl/a64/disasm-a64.cc -@@ -2693,7 +2693,7 @@ void Disassembler::AppendPCRelativeOffsetToOutput(cons - if (offset < 0) { - abs_offset = -abs_offset; - } -- AppendToOutput("#%c0x%" PRIx64, sign, abs_offset); -+ AppendToOutput("#%c0x%" PRIx64, sign, offset < 0 ? -offset : offset); - } - - diff --git a/emulators/qemu41/files/patch-include_net_net.h b/emulators/qemu41/files/patch-include_net_net.h deleted file mode 100644 index 92d57989a03f..000000000000 --- a/emulators/qemu41/files/patch-include_net_net.h +++ /dev/null @@ -1,13 +0,0 @@ ---- include/net/net.h.orig 2019-04-23 18:14:46 UTC -+++ include/net/net.h -@@ -209,8 +209,8 @@ void qmp_netdev_add(QDict *qdict, QObject **ret, Error - int net_hub_id_for_client(NetClientState *nc, int *id); - NetClientState *net_hub_port_find(int hub_id); - --#define DEFAULT_NETWORK_SCRIPT "/etc/qemu-ifup" --#define DEFAULT_NETWORK_DOWN_SCRIPT "/etc/qemu-ifdown" -+#define DEFAULT_NETWORK_SCRIPT PREFIX "/etc/qemu-ifup" -+#define DEFAULT_NETWORK_DOWN_SCRIPT PREFIX "/etc/qemu-ifdown" - #define DEFAULT_BRIDGE_HELPER CONFIG_QEMU_HELPERDIR "/qemu-bridge-helper" - #define DEFAULT_BRIDGE_INTERFACE "br0" - diff --git a/emulators/qemu41/files/patch-include_qemu_atomic.h b/emulators/qemu41/files/patch-include_qemu_atomic.h deleted file mode 100644 index 623073e0b29a..000000000000 --- a/emulators/qemu41/files/patch-include_qemu_atomic.h +++ /dev/null @@ -1,54 +0,0 @@ ---- include/qemu/atomic.h.orig 2019-04-23 18:14:46 UTC -+++ include/qemu/atomic.h -@@ -201,10 +201,12 @@ - /* Provide shorter names for GCC atomic builtins, return old value */ - #define atomic_fetch_inc(ptr) __atomic_fetch_add(ptr, 1, __ATOMIC_SEQ_CST) - #define atomic_fetch_dec(ptr) __atomic_fetch_sub(ptr, 1, __ATOMIC_SEQ_CST) -+#ifndef __cplusplus - #define atomic_fetch_add(ptr, n) __atomic_fetch_add(ptr, n, __ATOMIC_SEQ_CST) - #define atomic_fetch_sub(ptr, n) __atomic_fetch_sub(ptr, n, __ATOMIC_SEQ_CST) - #define atomic_fetch_and(ptr, n) __atomic_fetch_and(ptr, n, __ATOMIC_SEQ_CST) - #define atomic_fetch_or(ptr, n) __atomic_fetch_or(ptr, n, __ATOMIC_SEQ_CST) -+#endif - #define atomic_fetch_xor(ptr, n) __atomic_fetch_xor(ptr, n, __ATOMIC_SEQ_CST) - - #define atomic_inc_fetch(ptr) __atomic_add_fetch(ptr, 1, __ATOMIC_SEQ_CST) -@@ -218,10 +220,12 @@ - /* And even shorter names that return void. */ - #define atomic_inc(ptr) ((void) __atomic_fetch_add(ptr, 1, __ATOMIC_SEQ_CST)) - #define atomic_dec(ptr) ((void) __atomic_fetch_sub(ptr, 1, __ATOMIC_SEQ_CST)) -+#ifndef __cplusplus - #define atomic_add(ptr, n) ((void) __atomic_fetch_add(ptr, n, __ATOMIC_SEQ_CST)) - #define atomic_sub(ptr, n) ((void) __atomic_fetch_sub(ptr, n, __ATOMIC_SEQ_CST)) - #define atomic_and(ptr, n) ((void) __atomic_fetch_and(ptr, n, __ATOMIC_SEQ_CST)) - #define atomic_or(ptr, n) ((void) __atomic_fetch_or(ptr, n, __ATOMIC_SEQ_CST)) -+#endif - #define atomic_xor(ptr, n) ((void) __atomic_fetch_xor(ptr, n, __ATOMIC_SEQ_CST)) - - #else /* __ATOMIC_RELAXED */ -@@ -389,10 +393,12 @@ - - #define atomic_inc_fetch(ptr) __sync_add_and_fetch(ptr, 1) - #define atomic_dec_fetch(ptr) __sync_add_and_fetch(ptr, -1) -+#ifndef __cplusplus - #define atomic_add_fetch(ptr, n) __sync_add_and_fetch(ptr, n) - #define atomic_sub_fetch(ptr, n) __sync_sub_and_fetch(ptr, n) - #define atomic_and_fetch(ptr, n) __sync_and_and_fetch(ptr, n) - #define atomic_or_fetch(ptr, n) __sync_or_and_fetch(ptr, n) -+#endif - #define atomic_xor_fetch(ptr, n) __sync_xor_and_fetch(ptr, n) - - #define atomic_cmpxchg(ptr, old, new) __sync_val_compare_and_swap(ptr, old, new) -@@ -401,10 +407,12 @@ - /* And even shorter names that return void. */ - #define atomic_inc(ptr) ((void) __sync_fetch_and_add(ptr, 1)) - #define atomic_dec(ptr) ((void) __sync_fetch_and_add(ptr, -1)) -+#ifndef __cplusplus - #define atomic_add(ptr, n) ((void) __sync_fetch_and_add(ptr, n)) - #define atomic_sub(ptr, n) ((void) __sync_fetch_and_sub(ptr, n)) - #define atomic_and(ptr, n) ((void) __sync_fetch_and_and(ptr, n)) - #define atomic_or(ptr, n) ((void) __sync_fetch_and_or(ptr, n)) -+#endif - #define atomic_xor(ptr, n) ((void) __sync_fetch_and_xor(ptr, n)) - - #endif /* __ATOMIC_RELAXED */ diff --git a/emulators/qemu41/files/patch-net_tap-bsd.c b/emulators/qemu41/files/patch-net_tap-bsd.c deleted file mode 100644 index 6d94c1bde1ca..000000000000 --- a/emulators/qemu41/files/patch-net_tap-bsd.c +++ /dev/null @@ -1,10 +0,0 @@ ---- net/tap-bsd.c.orig 2019-04-23 18:14:46 UTC -+++ net/tap-bsd.c -@@ -31,6 +31,7 @@ - - #if defined(__NetBSD__) || defined(__FreeBSD__) - #include -+#include - #include - #include - #endif diff --git a/emulators/qemu41/files/patch-pc-bios_spapr-rtas_Makefile b/emulators/qemu41/files/patch-pc-bios_spapr-rtas_Makefile deleted file mode 100644 index 46ac6f5c6eb1..000000000000 --- a/emulators/qemu41/files/patch-pc-bios_spapr-rtas_Makefile +++ /dev/null @@ -1,15 +0,0 @@ ---- pc-bios/spapr-rtas/Makefile.orig 2020-01-08 10:52:05 UTC -+++ pc-bios/spapr-rtas/Makefile -@@ -15,10 +15,10 @@ $(call set-vpath, $(SRC_PATH)/pc-bios/spapr-rtas) - build-all: spapr-rtas.bin - - %.o: %.S -- $(call quiet-command,$(CCAS) -mbig -c -o $@ $<,"CCAS","$(TARGET_DIR)$@") -+ $(call quiet-command,$(CCAS) -c -o $@ $<,"CCAS","$(TARGET_DIR)$@") - - %.img: %.o -- $(call quiet-command,$(CC) -nostdlib -mbig -o $@ $<,"Building","$(TARGET_DIR)$@") -+ $(call quiet-command,$(CC) -nostdlib -o $@ $<,"Building","$(TARGET_DIR)$@") - - %.bin: %.img - $(call quiet-command,$(OBJCOPY) -O binary -j .text $< $@,"Building","$(TARGET_DIR)$@") diff --git a/emulators/qemu41/files/patch-qemu-doc.texi b/emulators/qemu41/files/patch-qemu-doc.texi deleted file mode 100644 index aa79d423f792..000000000000 --- a/emulators/qemu41/files/patch-qemu-doc.texi +++ /dev/null @@ -1,21 +0,0 @@ ---- qemu-doc.texi.orig 2019-04-23 18:14:46 UTC -+++ qemu-doc.texi -@@ -200,7 +200,7 @@ VGA BIOS. - QEMU uses YM3812 emulation by Tatsuyuki Satoh. - - QEMU uses GUS emulation (GUSEMU32 @url{http://www.deinmeister.de/gusemu/}) --by Tibor "TS" Schütz. -+by Tibor "TS" Schuetz. - - Note that, by default, GUS shares IRQ(7) with parallel ports and so - QEMU must be told to not have parallel ports to have working GUS. -@@ -560,7 +560,8 @@ Send the escape character to the frontend - - @c man begin SEEALSO - The HTML documentation of QEMU for more precise information and Linux --user mode emulator invocation. -+user mode emulator invocation, as well as the FreeBSD host notes in -+@file{pkg-message} in the relevant qemu port directory. - @c man end - - @c man begin AUTHOR diff --git a/emulators/qemu41/files/pcap-patch-net_clients.h b/emulators/qemu41/files/pcap-patch-net_clients.h deleted file mode 100644 index 5b56f1b2f49a..000000000000 --- a/emulators/qemu41/files/pcap-patch-net_clients.h +++ /dev/null @@ -1,13 +0,0 @@ ---- net/clients.h.orig 2018-04-24 16:30:47 UTC -+++ net/clients.h -@@ -61,4 +61,10 @@ int net_init_netmap(const Netdev *netdev, const char * - int net_init_vhost_user(const Netdev *netdev, const char *name, - NetClientState *peer, Error **errp); - -+#ifdef CONFIG_PCAP -+int net_init_pcap(const Netdev *netdev, const char *name, -+ NetClientState *peer, Error **errp); -+#endif -+ -+ - #endif /* QEMU_NET_CLIENTS_H */ diff --git a/emulators/qemu41/files/pcap-patch-net_net.c b/emulators/qemu41/files/pcap-patch-net_net.c deleted file mode 100644 index 6fa5ca941f7d..000000000000 --- a/emulators/qemu41/files/pcap-patch-net_net.c +++ /dev/null @@ -1,250 +0,0 @@ ---- net/net.c.orig 2018-04-24 16:30:47 UTC -+++ net/net.c -@@ -52,6 +52,11 @@ - #include "net/filter.h" - #include "qapi/string-output-visitor.h" - -+#include -+#ifdef __FreeBSD__ -+#include -+#endif -+ - /* Net bridge is currently not supported for W32. */ - #if !defined(_WIN32) - # define CONFIG_NET_BRIDGE -@@ -929,7 +934,225 @@ static int net_init_nic(const Netdev *netdev, const ch - return idx; - } - -+#if defined(CONFIG_PCAP) -+#if defined(CONFIG_BPF) -+#define PCAP_DONT_INCLUDE_PCAP_BPF_H -+#include -+#endif -+#include - -+struct PCAPState { -+ NetClientState nc; -+ pcap_t *handle; -+ int max_eth_frame_size; -+}; -+ -+static ssize_t pcap_receive(NetClientState *nc, const uint8_t *buf, size_t size) -+{ -+ struct PCAPState *s = DO_UPCAST(struct PCAPState, nc, nc); -+ -+ return pcap_inject(s->handle, (u_char*)buf, size); -+} -+ -+static void pcap_callback(u_char *user, struct pcap_pkthdr *phdr, u_char *pdata -+ ) -+{ -+ NetClientState *nc = (NetClientState *)user; -+ -+ int len = phdr->len; -+#ifdef __FreeBSD__ -+ struct PCAPState *s = DO_UPCAST(struct PCAPState, nc, nc); -+ int max_eth_frame_size = s->max_eth_frame_size; -+ -+ if (len > max_eth_frame_size) { -+ fprintf(stderr, -+ "pcap_send: packet size > %d (%d), truncating\n", -+ max_eth_frame_size, len); -+ len = max_eth_frame_size; -+ } -+#endif -+ qemu_send_packet(nc, pdata, len); -+} -+ -+static void pcap_send(void *opaque) -+{ -+ struct PCAPState *s = (struct PCAPState *)opaque; -+ -+ for (;;) { -+ if (pcap_dispatch(s->handle, 0, (pcap_handler)&pcap_callback, (u_char *)&s->nc) >= 0) -+ break; -+ } -+} -+ -+static void pcap_cleanup(NetClientState *nc) -+{ -+ struct PCAPState *s = DO_UPCAST(struct PCAPState, nc, nc); -+ -+ qemu_purge_queued_packets(nc); -+ pcap_close(s->handle); -+} -+ -+static NetClientInfo net_pcap_info = { -+ .type = NET_CLIENT_DRIVER_PCAP, -+ .size = sizeof(struct PCAPState), -+ .receive = pcap_receive, -+// .receive_raw = pcap_receive_raw, -+// .receive_iov = pcap_receive_iov, -+// .poll = pcap_poll, -+ .cleanup = pcap_cleanup, -+}; -+/* -+ * ... -net pcap,ifname="..." -+ */ -+ -+int net_init_pcap(const Netdev *netdev, -+ const char *name, NetClientState *peer, Error **errp) -+{ -+ const NetdevPcapOptions *pcap_opts; -+ NetClientState *nc; -+ struct PCAPState *s; -+ const char *ifname; -+ char errbuf[PCAP_ERRBUF_SIZE]; -+#if defined(_WIN32) -+ HANDLE h; -+#endif -+ int i; -+ -+ assert(netdev->type == NET_CLIENT_DRIVER_PCAP); -+ pcap_opts = &netdev->u.pcap; -+ if (!pcap_opts->has_ifname) -+ return -1; -+ -+ ifname = pcap_opts->ifname; -+ -+ /* create the object */ -+ nc = qemu_new_net_client(&net_pcap_info, peer, "pcap", ifname); -+ s = DO_UPCAST(struct PCAPState, nc, nc); -+ -+ if (ifname == NULL && (ifname = pcap_lookupdev(errbuf)) == NULL) { -+ fprintf(stderr, "qemu: pcap_create: %s\n", errbuf); -+ goto fail; -+ } -+ -+#ifdef __FreeBSD__ -+ /* -+ * We want to avoid passing oversize packets to the guest, which -+ * at least on FreeBSD can happen if the host interface uses tso -+ * (seen with an em(4) in this case) - so find out the host -+ * interface's mtu and assume the guest is configured the same. -+ */ -+ s->max_eth_frame_size = 1514; -+ i = socket(AF_INET, SOCK_DGRAM, 0); -+ if (i >= 0) { -+ struct ifreq ifr; -+ -+ (void) memset(&ifr, 0, sizeof(ifr)); -+ strncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name)); -+ if (ioctl(i, SIOCGIFMTU, &ifr) != -1) -+ s->max_eth_frame_size = ifr.ifr_mtu + 14; -+ close(i); -+ } -+#endif -+ -+#if defined(CONFIG_PCAP_CREATE) || defined(_WIN32) -+ /* -+ * Create pcap handle for the device, set promiscuous mode and activate. -+ */ -+ s->handle = (void *)pcap_create(ifname, errbuf); -+ if (!s->handle) { -+ fprintf(stderr, "qemu: pcap_create: %s\n", errbuf); -+ goto fail; -+ } -+ if (pcap_set_promisc(s->handle, 1) != 0) { -+ pcap_perror(s->handle, (char *)"qemu: pcap_set_promisc:"); -+ goto fail; -+ } -+ if (pcap_activate(s->handle) != 0) { -+ pcap_perror(s->handle, (char *)"qemu: pcap_activate:"); -+ goto fail; -+ } -+#else -+ /* Attempt to connect device. */ -+ s->handle = (void *)pcap_open_live(ifname, 65535, 1, 0, errbuf); -+ if (!s->handle) { -+ fprintf(stderr, "qemu: pcap_open_live: %s\n", errbuf); -+ goto fail; -+ } -+#endif -+ -+ /* Set non-blocking mode. */ -+ if (pcap_setnonblock(s->handle, 1, errbuf) < 0) { -+ fprintf(stderr, "qemu: pcap_setnonblock: %s\n", errbuf); -+ goto fail; -+ } -+ -+#if defined(_WIN32) -+ /* -+ * Tell the kernel that the packet has to be seen immediately. -+ */ -+ if (pcap_setmintocopy(s->handle, 0) < 0) { -+ fprintf(stderr, "qemu: pcap failed to set immediate mode\n"); -+ goto fail; -+ } -+#else /* !_WIN32 */ -+#if defined(CONFIG_BPF) -+#if defined(BIOCIMMEDIATE) -+ /* -+ * Tell the kernel that the packet has to be seen immediately. -+ */ -+ { -+ unsigned int one = 1; -+ if (ioctl(pcap_fileno(s->handle), BIOCIMMEDIATE, &one) < 0) { -+ fprintf(stderr, "qemu: pcap failed to set immediate mode\n"); -+ goto fail; -+ } -+ } -+#endif /* BIOCIMMEDIATE */ -+#if defined(BIOCFEEDBACK) -+ /* -+ * Tell the kernel that the sent packet has to be fed back. -+ * This is necessary to connect host and guest. -+ */ -+ { -+ unsigned int one = 1; -+ if (ioctl(pcap_fileno(s->handle), BIOCFEEDBACK, &one) < 0) { -+ fprintf(stderr, "qemu: pcap failed to set feedback mode\n"); -+ goto fail; -+ } -+ } -+#endif /* BIOCFEEDBACK */ -+#endif /* CONFIG_BPF */ -+#endif /* _WIN32 */ -+ -+ snprintf(s->nc.info_str, sizeof(s->nc.info_str), "pcap redirector"); -+ -+#if defined(_WIN32) -+ if ((h = pcap_getevent(s->handle)) == NULL) { -+ fprintf(stderr, "qemu: pcap_getevent failed\n"); -+ goto fail; -+ } -+ qemu_add_wait_object(h, pcap_send, s); -+#else /* !_WIN32 */ -+ if ((i = pcap_get_selectable_fd(s->handle)) < 0) { -+ fprintf(stderr, "qemu: pcap_get_selectable_fd failed\n"); -+ goto fail; -+ } -+ qemu_set_fd_handler(i, pcap_send, NULL, s); -+#endif /* _WIN32 */ -+ -+ return 0; -+ -+fail: -+ if (s) { -+ if (s->handle) -+ pcap_close(s->handle); -+ } -+ -+ return -1; -+} -+ -+#endif -+ - static int (* const net_client_init_fun[NET_CLIENT_DRIVER__MAX])( - const Netdev *netdev, - const char *name, -@@ -955,6 +1178,9 @@ static int (* const net_client_init_fun[NET_CLIENT_DRI - #endif - #ifdef CONFIG_L2TPV3 - [NET_CLIENT_DRIVER_L2TPV3] = net_init_l2tpv3, -+#endif -+#ifdef CONFIG_PCAP -+ [NET_CLIENT_DRIVER_PCAP] = net_init_pcap, - #endif - }; - diff --git a/emulators/qemu41/files/pcap-patch-qapi_net.json b/emulators/qemu41/files/pcap-patch-qapi_net.json deleted file mode 100644 index 39114c65d591..000000000000 --- a/emulators/qemu41/files/pcap-patch-qapi_net.json +++ /dev/null @@ -1,56 +0,0 @@ ---- qapi/net.json.orig 2018-04-24 16:30:47 UTC -+++ qapi/net.json -@@ -388,6 +388,19 @@ - '*helper': 'str' } } - - ## -+# @NetdevPcapOptions: -+# -+# Use ifname as a source to capture -+# -+# @ifname: #required to determine which interface to capture -+# -+# Since: 1.2 -+## -+{ 'struct': 'NetdevPcapOptions', -+ 'data': { -+ '*ifname': 'str' } } -+ -+## - # @NetdevHubPortOptions: - # - # Connect two or more net clients through a software hub. -@@ -454,7 +467,7 @@ - ## - { 'enum': 'NetClientDriver', - 'data': [ 'none', 'nic', 'user', 'tap', 'l2tpv3', 'socket', 'vde', -- 'bridge', 'hubport', 'netmap', 'vhost-user' ] } -+ 'bridge', 'hubport', 'netmap', 'vhost-user', 'pcap' ] } - - ## - # @Netdev: -@@ -478,6 +491,7 @@ - 'user': 'NetdevUserOptions', - 'tap': 'NetdevTapOptions', - 'l2tpv3': 'NetdevL2TPv3Options', -+ 'pcap': 'NetdevPcapOptions', - 'socket': 'NetdevSocketOptions', - 'vde': 'NetdevVdeOptions', *** 433 LINES SKIPPED ***