Import of pkgsrc-2014Q1

This commit is contained in:
2014-04-17 16:38:45 +02:00
parent 785076ae39
commit 9a8c06dafb
19365 changed files with 828089 additions and 278039 deletions

View File

@@ -1,58 +1,32 @@
# $NetBSD: Makefile,v 1.12 2013/02/06 23:23:52 jperkin Exp $
# $NetBSD: Makefile,v 1.21 2014/03/07 00:30:11 agc Exp $
DISTNAME= libvirt-0.9.3
PKGREVISION= 9
CATEGORIES= sysutils
MASTER_SITES= http://libvirt.org/sources/
DISTNAME= libvirt-1.2.2
CATEGORIES= sysutils
MASTER_SITES= http://libvirt.org/sources/
MAINTAINER= agc@NetBSD.org
HOMEPAGE= http://libvirt.org/
COMMENT= Virtualisation toolkit for host operating systems
LICENSE= gnu-lgpl-v2
MAINTAINER= agc@NetBSD.org
HOMEPAGE= http://libvirt.org/
COMMENT= Virtualisation toolkit for host operating systems
LICENSE= gnu-lgpl-v2
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --with-vbox=no --sysconfdir=${EGDIR} --localstatedir=${VARBASE}
CONFIGURE_ARGS+= --without-macvtap
USE_TOOLS+= gmake pkg-config
USE_TOOLS+= gmake pkg-config perl
USE_LIBTOOL= yes
BUILD_DEFS+= VARBASE
PYTHON_VERSIONS_INCOMPATIBLE= 33 # py-xml
PY_PATCHPLIST= yes
PYTHON_PATCH_SCRIPTS+= examples/python/domstart.py
PYTHON_PATCH_SCRIPTS+= examples/python/domrestore.py
PYTHON_PATCH_SCRIPTS+= examples/python/dominfo.py
PYTHON_PATCH_SCRIPTS+= examples/python/domsave.py
PYTHON_PATCH_SCRIPTS+= examples/python/esxlist.py
PYTHON_PATCH_SCRIPTS+= examples/domain-events/events-python/event-test.py
PYTHON_PATCH_SCRIPTS+= python/tests/create.py
PYTHON_PATCH_SCRIPTS+= python/tests/error.py
PYTHON_PATCH_SCRIPTS+= python/tests/uuid.py
PYTHON_PATCH_SCRIPTS+= python/tests/basic.py
PYTHON_PATCH_SCRIPTS+= python/tests/node.py
PYTHON_PATCH_SCRIPTS+= python/libvirt-override.py
PYTHON_PATCH_SCRIPTS+= python/libvirt-override-virStream.py
PYTHON_PATCH_SCRIPTS+= python/libvirt-override-virConnect.py
PYTHON_PATCH_SCRIPTS+= python/generator.py
PYTHON_PATCH_SCRIPTS+= python/libvirt.py
PYTHON_PATCH_SCRIPTS+= src/esx/esx_vi_generator.py
PYTHON_PATCH_SCRIPTS+= docs/apibuild.py
REPLACE_PYTHON+= docs/apibuild.py
REPLACE_PYTHON+= src/esx/esx_vi_generator.py
REPLACE_PYTHON+= src/hyperv/hyperv_wmi_generator.py
REPLACE_PYTHON+= src/util/virkeycode-mapgen.py
EGDIR= ${PREFIX}/share/examples
CONF_FILES+= ${EGDIR}/libvirt/libvirtd.conf ${PKG_SYSCONFDIR}/libvirt/libvirtd.conf
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/allow-arp.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/allow-arp.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/allow-dhcp-server.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/allow-dhcp-server.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/allow-dhcp.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/allow-dhcp.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/allow-incoming-ipv4.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/allow-incoming-ipv4.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/allow-ipv4.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/allow-ipv4.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/clean-traffic.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/clean-traffic.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/no-arp-spoofing.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/no-arp-spoofing.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/no-ip-multicast.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/no-ip-multicast.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/no-ip-spoofing.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/no-ip-spoofing.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/no-mac-broadcast.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/no-mac-broadcast.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/no-mac-spoofing.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/no-mac-spoofing.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/no-other-l2-traffic.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/no-other-l2-traffic.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/no-other-rarp-traffic.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/no-other-rarp-traffic.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/qemu-announce-self-rarp.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/qemu-announce-self-rarp.xml
CONF_FILES+= ${EGDIR}/libvirt/nwfilter/qemu-announce-self.xml ${PKG_SYSCONFDIR}/libvirt/nwfilter/qemu-announce-self.xml
CONF_FILES+= ${EGDIR}/libvirt/qemu/networks/autostart/default.xml ${PKG_SYSCONFDIR}/libvirt/qemu/networks/autostart/default.xml
CONF_FILES+= ${EGDIR}/libvirt/qemu/networks/default.xml ${PKG_SYSCONFDIR}/libvirt/qemu/networks/default.xml
CONF_FILES+= ${EGDIR}/logrotate.d/libvirtd ${PKG_SYSCONFDIR}/logrotate.d/libvirtd
@@ -68,7 +42,7 @@ RCD_SCRIPTS= libvirtd
.include "../../lang/python/extension.mk"
.include "../../devel/gettext-lib/buildlink3.mk"
.include "../../devel/readline/buildlink3.mk"
.include "../../mk/readline.buildlink3.mk"
.include "../../security/gnutls/buildlink3.mk"
.include "../../security/cyrus-sasl/buildlink3.mk"
.include "../../security/libgcrypt/buildlink3.mk"

View File

@@ -1,48 +1,44 @@
@comment $NetBSD: PLIST,v 1.3 2012/09/04 21:30:51 gls Exp $
@comment $NetBSD: PLIST,v 1.7 2014/03/11 14:05:15 jperkin Exp $
bin/virsh
bin/virt-host-validate
bin/virt-pki-validate
bin/virt-xml-validate
share/examples/libvirt/libvirtd.conf
share/examples/libvirt/nwfilter/allow-arp.xml
share/examples/libvirt/nwfilter/allow-dhcp-server.xml
share/examples/libvirt/nwfilter/allow-dhcp.xml
share/examples/libvirt/nwfilter/allow-incoming-ipv4.xml
share/examples/libvirt/nwfilter/allow-ipv4.xml
share/examples/libvirt/nwfilter/clean-traffic.xml
share/examples/libvirt/nwfilter/no-arp-spoofing.xml
share/examples/libvirt/nwfilter/no-ip-multicast.xml
share/examples/libvirt/nwfilter/no-ip-spoofing.xml
share/examples/libvirt/nwfilter/no-mac-broadcast.xml
share/examples/libvirt/nwfilter/no-mac-spoofing.xml
share/examples/libvirt/nwfilter/no-other-l2-traffic.xml
share/examples/libvirt/nwfilter/no-other-rarp-traffic.xml
share/examples/libvirt/nwfilter/qemu-announce-self-rarp.xml
share/examples/libvirt/nwfilter/qemu-announce-self.xml
share/examples/libvirt/qemu/networks/autostart/default.xml
share/examples/libvirt/qemu/networks/default.xml
share/examples/logrotate.d/libvirtd
share/examples/logrotate.d/libvirtd.lxc
share/examples/logrotate.d/libvirtd.qemu
share/examples/logrotate.d/libvirtd.uml
share/examples/rc.d/libvirtd
share/examples/sasl2/libvirt.conf
include/libvirt/libvirt-lxc.h
include/libvirt/libvirt-qemu.h
include/libvirt/libvirt.h
include/libvirt/virterror.h
lib/charset.alias
lib/libvirt-lxc.la
lib/libvirt-qemu.la
lib/libvirt.la
lib/libvirt/connection-driver/libvirt_driver_network.la
lib/libvirt/connection-driver/libvirt_driver_qemu.la
lib/libvirt/connection-driver/libvirt_driver_secret.la
lib/libvirt/connection-driver/libvirt_driver_storage.la
lib/libvirt/lock-driver/lockd.la
lib/pkgconfig/libvirt.pc
${PYSITELIB}/libvirt.py
${PYSITELIB}/libvirtmod.la
libexec/libvirt-guests.sh
libexec/libvirt_iohelper
man/man1/virsh.1
man/man1/virt-host-validate.1
man/man1/virt-pki-validate.1
man/man1/virt-xml-validate.1
man/man8/libvirtd.8
man/man8/virtlockd.8
sbin/libvirtd
sbin/virtlockd
share/augeas/lenses/libvirt_lockd.aug
share/augeas/lenses/libvirtd.aug
share/augeas/lenses/libvirtd_qemu.aug
share/augeas/lenses/tests/test_libvirt_lockd.aug
share/augeas/lenses/tests/test_libvirtd.aug
share/augeas/lenses/tests/test_libvirtd_qemu.aug
share/augeas/lenses/tests/test_virtlockd.aug
share/augeas/lenses/virtlockd.aug
share/doc/${PKGNAME}/html/32favicon.png
share/doc/${PKGNAME}/html/404.html
share/doc/${PKGNAME}/html/acl.html
share/doc/${PKGNAME}/html/aclpolkit.html
share/doc/${PKGNAME}/html/api.html
share/doc/${PKGNAME}/html/api_extension.html
share/doc/${PKGNAME}/html/apps.html
@@ -52,10 +48,11 @@ share/doc/${PKGNAME}/html/architecture.html
share/doc/${PKGNAME}/html/archnetwork.html
share/doc/${PKGNAME}/html/archnode.html
share/doc/${PKGNAME}/html/archstorage.html
share/doc/${PKGNAME}/html/auditlog.html
share/doc/${PKGNAME}/html/auth.html
share/doc/${PKGNAME}/html/bindings.html
share/doc/${PKGNAME}/html/bugs.html
share/doc/${PKGNAME}/html/command.html
share/doc/${PKGNAME}/html/cgroups.html
share/doc/${PKGNAME}/html/compiling.html
share/doc/${PKGNAME}/html/contact.html
share/doc/${PKGNAME}/html/csharp.html
@@ -64,9 +61,13 @@ share/doc/${PKGNAME}/html/devguide.html
share/doc/${PKGNAME}/html/docs.html
share/doc/${PKGNAME}/html/downloads.html
share/doc/${PKGNAME}/html/drivers.html
share/doc/${PKGNAME}/html/drvbhyve.html
share/doc/${PKGNAME}/html/drvesx.html
share/doc/${PKGNAME}/html/drvhyperv.html
share/doc/${PKGNAME}/html/drvlxc.html
share/doc/${PKGNAME}/html/drvopenvz.html
share/doc/${PKGNAME}/html/drvparallels.html
share/doc/${PKGNAME}/html/drvphyp.html
share/doc/${PKGNAME}/html/drvqemu.html
share/doc/${PKGNAME}/html/drvremote.html
share/doc/${PKGNAME}/html/drvtest.html
@@ -91,6 +92,7 @@ share/doc/${PKGNAME}/html/formatstorage.html
share/doc/${PKGNAME}/html/formatstorageencryption.html
share/doc/${PKGNAME}/html/generic.css
share/doc/${PKGNAME}/html/goals.html
share/doc/${PKGNAME}/html/governance.html
share/doc/${PKGNAME}/html/hacking.html
share/doc/${PKGNAME}/html/hooks.html
share/doc/${PKGNAME}/html/html/home.png
@@ -103,6 +105,10 @@ share/doc/${PKGNAME}/html/html/up.png
share/doc/${PKGNAME}/html/hvsupport.html
share/doc/${PKGNAME}/html/index.html
share/doc/${PKGNAME}/html/internals.html
share/doc/${PKGNAME}/html/internals/command.html
share/doc/${PKGNAME}/html/internals/locking.html
share/doc/${PKGNAME}/html/internals/oomtesting.html
share/doc/${PKGNAME}/html/internals/rpc.html
share/doc/${PKGNAME}/html/intro.html
share/doc/${PKGNAME}/html/java.html
share/doc/${PKGNAME}/html/libvirt-daemon-arch.png
@@ -118,12 +124,21 @@ share/doc/${PKGNAME}/html/locking.html
share/doc/${PKGNAME}/html/logging.html
share/doc/${PKGNAME}/html/madeWith.png
share/doc/${PKGNAME}/html/main.css
share/doc/${PKGNAME}/html/migration-managed-direct.png
share/doc/${PKGNAME}/html/migration-managed-p2p.png
share/doc/${PKGNAME}/html/migration-native.png
share/doc/${PKGNAME}/html/migration-tunnel.png
share/doc/${PKGNAME}/html/migration-unmanaged-direct.png
share/doc/${PKGNAME}/html/migration.html
share/doc/${PKGNAME}/html/news.html
share/doc/${PKGNAME}/html/node.gif
share/doc/${PKGNAME}/html/pending.html
share/doc/${PKGNAME}/html/php.html
share/doc/${PKGNAME}/html/python.html
share/doc/${PKGNAME}/html/relatedlinks.html
share/doc/${PKGNAME}/html/remote.html
share/doc/${PKGNAME}/html/secureusage.html
share/doc/${PKGNAME}/html/securityprocess.html
share/doc/${PKGNAME}/html/sitemap.html
share/doc/${PKGNAME}/html/storage.html
share/doc/${PKGNAME}/html/testapi.html
@@ -133,12 +148,18 @@ share/doc/${PKGNAME}/html/todo.html
share/doc/${PKGNAME}/html/uri.html
share/doc/${PKGNAME}/html/virshcmdref.html
share/doc/${PKGNAME}/html/windows.html
share/doc/libvirt-python-${PKGVERSION}/TODO
share/doc/libvirt-python-${PKGVERSION}/examples/basic.py
share/doc/libvirt-python-${PKGVERSION}/examples/create.py
share/doc/libvirt-python-${PKGVERSION}/examples/error.py
share/doc/libvirt-python-${PKGVERSION}/examples/node.py
share/doc/libvirt-python-${PKGVERSION}/examples/uuid.py
share/examples/libvirt/libvirt.conf
share/examples/libvirt/libvirtd.conf
share/examples/libvirt/qemu-lockd.conf
share/examples/libvirt/qemu.conf
share/examples/libvirt/qemu/networks/autostart/default.xml
share/examples/libvirt/qemu/networks/default.xml
share/examples/libvirt/virtlockd.conf
share/examples/logrotate.d/libvirtd
share/examples/logrotate.d/libvirtd.lxc
share/examples/logrotate.d/libvirtd.qemu
share/examples/logrotate.d/libvirtd.uml
share/examples/sasl2/libvirt.conf
share/gtk-doc/html/libvirt/general.html
share/gtk-doc/html/libvirt/home.png
share/gtk-doc/html/libvirt/index.html
@@ -149,16 +170,24 @@ share/gtk-doc/html/libvirt/libvirt.devhelp
share/gtk-doc/html/libvirt/right.png
share/gtk-doc/html/libvirt/style.css
share/gtk-doc/html/libvirt/up.png
share/libvirt/api/libvirt-api.xml
share/libvirt/api/libvirt-lxc-api.xml
share/libvirt/api/libvirt-qemu-api.xml
share/libvirt/cpu_map.xml
share/libvirt/libvirtLogo.png
share/libvirt/schemas/basictypes.rng
share/libvirt/schemas/capability.rng
share/libvirt/schemas/domain.rng
share/libvirt/schemas/domaincommon.rng
share/libvirt/schemas/domainsnapshot.rng
share/libvirt/schemas/interface.rng
share/libvirt/schemas/network.rng
share/libvirt/schemas/networkcommon.rng
share/libvirt/schemas/nodedev.rng
share/libvirt/schemas/nwfilter.rng
share/libvirt/schemas/secret.rng
share/libvirt/schemas/storageencryption.rng
share/libvirt/schemas/storagefilefeatures.rng
share/libvirt/schemas/storagepool.rng
share/libvirt/schemas/storagevol.rng
share/locale/af/LC_MESSAGES/libvirt.mo
@@ -169,6 +198,7 @@ share/locale/be/LC_MESSAGES/libvirt.mo
share/locale/bg/LC_MESSAGES/libvirt.mo
share/locale/bn/LC_MESSAGES/libvirt.mo
share/locale/bn_IN/LC_MESSAGES/libvirt.mo
share/locale/bo/LC_MESSAGES/libvirt.mo
share/locale/bs/LC_MESSAGES/libvirt.mo
share/locale/ca/LC_MESSAGES/libvirt.mo
share/locale/cs/LC_MESSAGES/libvirt.mo
@@ -235,19 +265,7 @@ share/locale/vi_VN/LC_MESSAGES/libvirt.mo
share/locale/zh_CN/LC_MESSAGES/libvirt.mo
share/locale/zh_TW/LC_MESSAGES/libvirt.mo
share/locale/zu/LC_MESSAGES/libvirt.mo
@pkgdir var/run/libvirt/network
@pkgdir var/log/libvirt/uml
@pkgdir var/log/libvirt/qemu
@pkgdir var/log/libvirt/lxc
@pkgdir var/lib/libvirt/network
@pkgdir var/lib/libvirt/images
@pkgdir var/lib/libvirt/dnsmasq
@pkgdir var/lib/libvirt/boot
@pkgdir var/cache/libvirt
@pkgdir lib/libvirt/connection-driver
@pkgdir etc/sasl2
@pkgdir etc/logrotate.d
@pkgdir etc/libvirt/qemu/networks/autostart
@pkgdir etc/libvirt/qemu/networks
@pkgdir etc/libvirt/nwfilter
@pkgdir etc/libvirt
@pkgdir share/examples/libvirt/nwfilter
@pkgdir etc/libvirt/qemu/networks/autostart
@pkgdir etc/logrotate.d
@pkgdir etc/sasl2

View File

@@ -1,10 +1,12 @@
$NetBSD: distinfo,v 1.2 2012/03/08 01:12:51 joerg Exp $
$NetBSD: distinfo,v 1.4 2014/03/07 00:30:11 agc Exp $
SHA1 (libvirt-0.9.3.tar.gz) = e25850d270a24441305dd92935209efa993b479d
RMD160 (libvirt-0.9.3.tar.gz) = a01dbe29e23225706afcff74146aa3b224ba04bb
Size (libvirt-0.9.3.tar.gz) = 15958983 bytes
SHA1 (patch-aa) = 12269e5e0dd650423df5e31dd6f8069af04532c3
SHA1 (patch-ab) = 66757963d769cc7a12c5dfa4fe035ec9417a0512
SHA1 (patch-ac) = af670f3e9af0dc4053c3e8584ed815f03bb7bb56
SHA1 (patch-gnulib-lib-fflush.c) = dce77a7b18bdf9fb20b31dcf6d473bd51a63dba9
SHA1 (patch-gnulib-lib-fseeko.c) = d8e4107166baba980e20add7d267510d7da9be9a
SHA1 (libvirt-1.2.2.tar.gz) = d24735b135617983edbfd80c75a1b9925f996e3b
RMD160 (libvirt-1.2.2.tar.gz) = f5c7242b4f6399ddaa03df586ebf8595356e4079
Size (libvirt-1.2.2.tar.gz) = 28340039 bytes
SHA1 (patch-configure) = d01bd0cf7336d4c0ec0050301095ae0cfac26b7c
SHA1 (patch-gnulib-lib-base64.h) = 7b7f3738fbeb52ba8e8c5ef2b8926008a4585c4b
SHA1 (patch-gnulib-lib-fflush.c) = abfd289afd87d993bbf13cc815443f938cacf7ef
SHA1 (patch-gnulib-lib-fseeko.c) = 1dc0c761d3285da5a418690bfc2e37de90f0e870
SHA1 (patch-src-rpc-virnetmessage.c) = 5a09402a71c1f7082d775503ce3ef17e7c41424c
SHA1 (patch-src-util-virutil.c) = 64710144c4e1c7e1d9f5ca84c47be6f8b01a70f8
SHA1 (patch-tools--virsh-secret.c) = 424f53edabf535be73e08addea3b4310de08cf8e

View File

@@ -1,175 +0,0 @@
$NetBSD: patch-aa,v 1.1.1.1 2011/07/26 06:05:00 agc Exp $
bridge is only compilable on Linux right now
--- src/util/bridge.c 2011/07/17 17:36:59 1.1
+++ src/util/bridge.c 2011/07/17 17:37:20
@@ -39,10 +39,21 @@
# include <paths.h>
# include <sys/wait.h>
+#if defined(__linux__)
# include <linux/param.h> /* HZ */
# include <linux/sockios.h> /* SIOCBRADDBR etc. */
# include <linux/if_bridge.h> /* SYSFS_BRIDGE_ATTR */
# include <linux/if_tun.h> /* IFF_TUN, IFF_NO_PI */
+#elif defined(__NetBSD__)
+# include <sys/param.h>
+# include <sys/sockio.h>
+# include <net/if.h>
+# include <net/if_tap.h>
+# include <net/if_ether.h>
+# include <net/if_bridgevar.h>
+# include <net/if_tun.h>
+#endif
+
# include <net/if_arp.h> /* ARPHRD_ETHER */
# include "internal.h"
@@ -309,6 +320,7 @@
if (virStrcpyStatic(ifr.ifr_name, ifname) == NULL)
return EINVAL;
+#ifdef __linux__
/* To fill ifr.ifr_hdaddr.sa_family field */
if (ioctl(ctl->fd, SIOCGIFHWADDR, &ifr) != 0)
return errno;
@@ -316,6 +328,15 @@
memcpy(ifr.ifr_hwaddr.sa_data, macaddr, VIR_MAC_BUFLEN);
return ioctl(ctl->fd, SIOCSIFHWADDR, &ifr) == 0 ? 0 : errno;
+#elif defined(__NetBSD__)
+ /* To fill ifr.ifr_hdaddr.sa_family field */
+ if (ioctl(ctl->fd, SIOCGIFADDR, &ifr) != 0)
+ return errno;
+
+ memcpy(ifr.ifr_addr.sa_data, macaddr, VIR_MAC_BUFLEN);
+
+ return ioctl(ctl->fd, SIOCSIFADDR, &ifr) == 0 ? 0 : errno;
+#endif
}
/**
@@ -459,6 +480,10 @@
}
# endif
+#ifndef USE_ARG
+#define USE_ARG(x) /*LINTED*/(void)&(x)
+#endif
+
/**
* brAddTap:
* @ctl: bridge control pointer
@@ -487,6 +512,7 @@
bool up,
int *tapfd)
{
+#if defined(__linux__)
int fd;
struct ifreq ifr;
@@ -549,11 +575,68 @@
VIR_FORCE_CLOSE(fd);
return errno;
+#elif defined(__NetBSD__)
+ int fd;
+ struct ifreq ifr;
+
+ USE_ARG(vnet_hdr);
+ if (!ctl || !ctl->fd || !bridge || !ifname)
+ return EINVAL;
+
+ if ((fd = open("/dev/tun", O_RDWR)) < 0)
+ return errno;
+
+ memset(&ifr, 0, sizeof(ifr));
+
+ if (ioctl(fd, TAPGIFNAME, &ifr) < 0)
+ goto error;
+
+ if (virStrcpyStatic(ifr.ifr_name, *ifname) == NULL) {
+ errno = EINVAL;
+ goto error;
+ }
+
+ if (ioctl(fd, TUNSIFHEAD, &ifr) < 0)
+ goto error;
+
+ /* We need to set the interface MAC before adding it
+ * to the bridge, because the bridge assumes the lowest
+ * MAC of all enslaved interfaces & we don't want it
+ * seeing the kernel allocate random MAC for the TAP
+ * device before we set our static MAC.
+ */
+ if ((errno = ifSetInterfaceMac(ctl, ifr.ifr_name, macaddr)))
+ goto error;
+ /* We need to set the interface MTU before adding it
+ * to the bridge, because the bridge will have its
+ * MTU adjusted automatically when we add the new interface.
+ */
+ if ((errno = brSetInterfaceMtu(ctl, bridge, ifr.ifr_name)))
+ goto error;
+ if ((errno = brAddInterface(ctl, bridge, ifr.ifr_name)))
+ goto error;
+ if (up && ((errno = brSetInterfaceUp(ctl, ifr.ifr_name, 1))))
+ goto error;
+ VIR_FREE(*ifname);
+ if (!(*ifname = strdup(ifr.ifr_name)))
+ goto error;
+ if (tapfd)
+ *tapfd = fd;
+ else
+ VIR_FORCE_CLOSE(fd);
+ return 0;
+
+ error:
+ VIR_FORCE_CLOSE(fd);
+
+ return errno;
+#endif
}
int brDeleteTap(brControl *ctl,
const char *ifname)
{
+#if defined(__linux__)
struct ifreq try;
int fd;
@@ -580,6 +663,34 @@
VIR_FORCE_CLOSE(fd);
return errno;
+#elif defined(__NetBSD__)
+ struct ifreq try;
+ int fd;
+
+ if (!ctl || !ctl->fd || !ifname)
+ return EINVAL;
+
+ if ((fd = open("/dev/tun", O_RDWR)) < 0)
+ return errno;
+
+ memset(&try, 0, sizeof(try));
+ if (ioctl(fd, TAPGIFNAME, &try) < 0)
+ goto error;
+
+
+ if (virStrcpyStatic(try.ifr_name, ifname) == NULL) {
+ errno = EINVAL;
+ goto error;
+ }
+
+ if (ioctl(fd, TUNSIFHEAD, &try) < 0)
+ goto error;
+
+ error:
+ VIR_FORCE_CLOSE(fd);
+
+ return errno;
+#endif
}

View File

@@ -1,15 +0,0 @@
$NetBSD: patch-ab,v 1.1.1.1 2011/07/26 06:05:00 agc Exp $
There is a problem expanding the macro in base64.h, so we'll do it here
--- tools/virsh.c 2011/07/17 21:47:08 1.1
+++ tools/virsh.c 2011/07/17 21:48:19
@@ -8862,7 +8862,7 @@
if (vshCommandOptString(cmd, "base64", &base64) <= 0)
goto cleanup;
- if (!base64_decode_alloc(base64, strlen(base64), &value, &value_size)) {
+ if (!base64_decode_alloc_ctx(NULL, base64, strlen(base64), &value, &value_size)) {
vshError(ctl, "%s", _("Invalid base64 data"));
goto cleanup;
}

View File

@@ -1,23 +0,0 @@
$NetBSD: patch-ac,v 1.1.1.1 2011/07/26 06:05:00 agc Exp $
Make sure the header inclusion guard is unique
--- gnulib/lib/base64.h 2011/07/17 21:51:19 1.1
+++ gnulib/lib/base64.h 2011/07/17 21:52:04
@@ -18,8 +18,8 @@
along with this program; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
-#ifndef BASE64_H
-# define BASE64_H
+#ifndef GNULIB_LIB_BASE64_H
+# define GNULIB_LIB_BASE64_H
/* Get size_t. */
# include <stddef.h>
@@ -60,4 +60,4 @@
#define base64_decode_alloc(in, inlen, out, outlen) \
base64_decode_alloc_ctx (NULL, in, inlen, out, outlen)
-#endif /* BASE64_H */
+#endif /* GNULIB_LIB_BASE64_H */

View File

@@ -0,0 +1,15 @@
$NetBSD: patch-configure,v 1.1 2014/01/28 18:00:41 agc Exp $
Portability bug - test should use '=' for string equality
--- configure 2014/01/25 02:05:59 1.1
+++ configure 2014/01/25 02:06:27
@@ -62681,7 +62681,7 @@
if test "x$with_firewalld" = "xcheck" ; then
with_firewalld=$with_dbus
fi
-if test "x$with_firewalld" == "xyes" ; then
+if test "x$with_firewalld" = "xyes" ; then
if test "x$with_dbus" != "xyes" ; then
as_fn_error $? "You must have dbus enabled for firewalld support" "$LINENO" 5
fi

View File

@@ -0,0 +1,23 @@
$NetBSD: patch-gnulib-lib-base64.h,v 1.1 2014/01/25 02:54:27 agc Exp $
Avoid native header definitions
--- gnulib/lib/base64.h.orig 2014-01-07 19:14:57.000000000 -0800
+++ gnulib/lib/base64.h 2014-01-24 18:03:33.000000000 -0800
@@ -15,8 +15,8 @@
You should have received a copy of the GNU Lesser General Public License
along with this program; if not, see <http://www.gnu.org/licenses/>. */
-#ifndef BASE64_H
-# define BASE64_H
+#ifndef GNULIB_LIB_BASE64_H
+# define GNULIB_LIB_BASE64_H
/* Get size_t. */
# include <stddef.h>
@@ -65,4 +65,4 @@
}
# endif
-#endif /* BASE64_H */
+#endif /* GNULIB_LIB_BASE64_H */

View File

@@ -1,13 +1,15 @@
$NetBSD: patch-gnulib-lib-fflush.c,v 1.1 2012/03/08 01:12:52 joerg Exp $
$NetBSD: patch-gnulib-lib-fflush.c,v 1.2 2014/01/25 02:54:27 agc Exp $
--- gnulib/lib/fflush.c.orig 2011-05-17 06:12:57.000000000 +0000
+++ gnulib/lib/fflush.c
@@ -93,7 +93,7 @@ static inline void
update_fpos_cache (FILE *fp, off_t pos)
fix for fpos_t/fgetpos/fsetpos from joerg
--- gnulib/lib/fflush.c 2014/01/25 02:18:50 1.1
+++ gnulib/lib/fflush.c 2014/01/25 02:19:22
@@ -96,7 +96,7 @@
off_t pos _GL_UNUSED_PARAMETER)
{
#if defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, MacOS X, Cygwin */
-# if defined __CYGWIN__
+# if defined(__CYGWIN__) || defined(__NetBSD__)
# if defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin */
-# if defined __CYGWIN__
+# if defined(__CYGWIN__) || defined(__NetBSD__)
/* fp_->_offset is typed as an integer. */
fp_->_offset = pos;
# else
# else

View File

@@ -1,11 +1,13 @@
$NetBSD: patch-gnulib-lib-fseeko.c,v 1.1 2012/03/08 01:12:52 joerg Exp $
$NetBSD: patch-gnulib-lib-fseeko.c,v 1.2 2014/01/25 02:54:27 agc Exp $
--- gnulib/lib/fseeko.c.orig 2011-03-01 07:54:21.000000000 +0000
+++ gnulib/lib/fseeko.c
@@ -111,7 +111,7 @@ fseeko (FILE *fp, off_t offset, int when
#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */
Fix for fpos_t from joerg
--- gnulib/lib/fseeko.c 2014/01/25 02:09:09 1.1
+++ gnulib/lib/fseeko.c 2014/01/25 02:17:10
@@ -125,7 +125,7 @@
fp->_flags &= ~_IO_EOF_SEEN;
#elif defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, MacOS X, Cygwin */
fp->_offset = pos;
#elif defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin */
-# if defined __CYGWIN__
+# if defined(__CYGWIN__) || defined(__NetBSD__)
/* fp_->_offset is typed as an integer. */

View File

@@ -0,0 +1,30 @@
$NetBSD: patch-src-rpc-virnetmessage.c,v 1.1 2014/01/25 02:54:27 agc Exp $
fix for # of args in xdrproc_t on NetBSD
--- src/rpc/virnetmessage.c 2014/01/25 02:27:37 1.1
+++ src/rpc/virnetmessage.c 2014/01/25 02:30:04
@@ -345,7 +345,11 @@
msg->bufferLength - msg->bufferOffset, XDR_ENCODE);
/* Try to encode the payload. If the buffer is too small increase it. */
+#ifdef __NetBSD__
+ while (!(*filter)(&xdr, data)) {
+#else
while (!(*filter)(&xdr, data, 0)) {
+#endif
unsigned int newlen = (msg->bufferLength - VIR_NET_MESSAGE_LEN_MAX) * 4;
if (newlen > VIR_NET_MESSAGE_MAX) {
@@ -402,7 +406,11 @@
xdrmem_create(&xdr, msg->buffer + msg->bufferOffset,
msg->bufferLength - msg->bufferOffset, XDR_DECODE);
+#ifdef __NetBSD__
+ if (!(*filter)(&xdr, data)) {
+#else
if (!(*filter)(&xdr, data, 0)) {
+#endif
virReportError(VIR_ERR_RPC, "%s", _("Unable to decode message payload"));
goto error;
}

View File

@@ -0,0 +1,20 @@
$NetBSD: patch-src-util-virutil.c,v 1.1 2014/01/25 02:54:27 agc Exp $
Only use uselocale() if we have it
--- src/util/virutil.c 2014/01/25 02:40:22 1.1
+++ src/util/virutil.c 2014/01/25 02:41:41
@@ -428,9 +428,13 @@
if (virLocaleInitialize() < 0)
goto error;
+#ifdef HAVE_USELOCALE
old_loc = uselocale(virLocale);
+#endif
ret = virAsprintf(strp, "%lf", number);
+#ifdef HAVE_USELOCALE
uselocale(old_loc);
+#endif
#else

View File

@@ -0,0 +1,16 @@
$NetBSD: patch-tools--virsh-secret.c,v 1.1 2014/01/25 02:54:27 agc Exp $
bring forward previous patch to allocate the context with the correct args
"There is a problem expanding the macro in base64.h, so we'll do it here"
--- tools/virsh-secret.c 2014/01/25 01:56:56 1.1
+++ tools/virsh-secret.c 2014/01/25 01:57:41
@@ -212,7 +212,7 @@
if (vshCommandOptStringReq(ctl, cmd, "base64", &base64) < 0)
goto cleanup;
- if (!base64_decode_alloc(base64, strlen(base64), &value, &value_size)) {
+ if (!base64_decode_alloc_ctx(NULL, base64, strlen(base64), &value, &value_size)) {
vshError(ctl, "%s", _("Invalid base64 data"));
goto cleanup;
}