summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-misc/arpd')
-rw-r--r--net-misc/arpd/Manifest1
-rw-r--r--net-misc/arpd/arpd-0.2-r1.ebuild42
-rw-r--r--net-misc/arpd/files/arpd-0.2-buildsystem-libevent-test.patch11
-rw-r--r--net-misc/arpd/files/arpd-0.2-libevent.patch28
-rw-r--r--net-misc/arpd/files/arpd.c.patch42
-rw-r--r--net-misc/arpd/metadata.xml8
6 files changed, 132 insertions, 0 deletions
diff --git a/net-misc/arpd/Manifest b/net-misc/arpd/Manifest
new file mode 100644
index 000000000000..c2b1f539700e
--- /dev/null
+++ b/net-misc/arpd/Manifest
@@ -0,0 +1 @@
+DIST arpd-0.2.tar.gz 49437 SHA256 21d55de1506b3dbbfddb1b57e782a5fbf7140d299fbb08f4a8e48daaaa8489e7
diff --git a/net-misc/arpd/arpd-0.2-r1.ebuild b/net-misc/arpd/arpd-0.2-r1.ebuild
new file mode 100644
index 000000000000..051c40eeeeec
--- /dev/null
+++ b/net-misc/arpd/arpd-0.2-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+
+inherit autotools eutils
+
+DESCRIPTION="ARP server which claims all unassigned addresses (for network monitoring or simulation)"
+HOMEPAGE="http://www.citi.umich.edu/u/provos/honeyd/"
+SRC_URI="http://www.citi.umich.edu/u/provos/honeyd/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 hppa ppc ~ppc64 sparc x86"
+IUSE=""
+
+DEPEND=">=dev-libs/libdnet-1.4
+ >=dev-libs/libevent-0.6
+ net-libs/libpcap
+ !sys-apps/iproute2"
+
+S=${WORKDIR}/${PN}
+
+src_prepare() {
+ epatch "${FILESDIR}"/arpd.c.patch
+ epatch "${FILESDIR}"/${P}-libevent.patch
+
+ #fix bug 337481, replace test on libevent.a with libevent.so
+ epatch "${FILESDIR}"/${P}-buildsystem-libevent-test.patch
+
+ eautoreconf
+}
+
+src_configure() {
+ econf --with-libdnet="${EPREFIX}"/usr --with-libevent="${EPREFIX}"/usr
+}
+
+src_install() {
+ dosbin arpd || die
+ doman arpd.8 || die
+}
diff --git a/net-misc/arpd/files/arpd-0.2-buildsystem-libevent-test.patch b/net-misc/arpd/files/arpd-0.2-buildsystem-libevent-test.patch
new file mode 100644
index 000000000000..c0c0f47712a8
--- /dev/null
+++ b/net-misc/arpd/files/arpd-0.2-buildsystem-libevent-test.patch
@@ -0,0 +1,11 @@
+--- configure.in.orig 2003-02-09 19:30:33.000000000 +0100
++++ configure.in 2010-09-17 00:33:36.138294836 +0200
+@@ -62,7 +62,7 @@
+ ;;
+ *)
+ AC_MSG_RESULT($withval)
+- if test -f $withval/include/event.h -a -f $withval/lib/libevent.a; then
++ if test -f $withval/include/event.h -a -f $withval/lib/libevent.so; then
+ owd=`pwd`
+ if cd $withval; then withval=`pwd`; cd $owd; fi
+ EVENTINC="-I$withval/include"
diff --git a/net-misc/arpd/files/arpd-0.2-libevent.patch b/net-misc/arpd/files/arpd-0.2-libevent.patch
new file mode 100644
index 000000000000..2d5998f8c8d3
--- /dev/null
+++ b/net-misc/arpd/files/arpd-0.2-libevent.patch
@@ -0,0 +1,28 @@
+--- arpd.orig/arpd.c 2010-02-03 20:03:07.098748175 +0100
++++ arpd/arpd.c 2010-02-03 20:06:24.469749941 +0100
+@@ -445,9 +445,6 @@
+ void
+ terminate_handler(int sig)
+ {
+- extern int event_gotsig;
+-
+- event_gotsig = 1;
+ arpd_sig = sig;
+ }
+
+@@ -464,7 +461,6 @@
+ main(int argc, char *argv[])
+ {
+ struct event recv_ev;
+- extern int (*event_sigcb)(void);
+ char *dev;
+ int c, debug;
+ FILE *fp;
+@@ -524,7 +520,6 @@
+ perror("signal");
+ return (-1);
+ }
+- event_sigcb = arpd_signal;
+
+ event_dispatch();
+
diff --git a/net-misc/arpd/files/arpd.c.patch b/net-misc/arpd/files/arpd.c.patch
new file mode 100644
index 000000000000..732ed16c92d7
--- /dev/null
+++ b/net-misc/arpd/files/arpd.c.patch
@@ -0,0 +1,42 @@
+--- arpd.c.orig 2005-03-30 15:13:37.136590624 -0700
++++ arpd.c 2005-03-30 15:23:50.295231384 -0700
+@@ -265,7 +265,7 @@
+ spa->addr_ip, tha->addr_eth, tpa->addr_ip);
+
+ if (op == ARP_OP_REQUEST) {
+- syslog(LOG_DEBUG, __FUNCTION__ ": who-has %s tell %s",
++ syslog(LOG_DEBUG, __FUNCTION__, ": who-has %s tell %s",
+ addr_ntoa(tpa), addr_ntoa(spa));
+ } else if (op == ARP_OP_REPLY) {
+ syslog(LOG_INFO, "arp reply %s is-at %s",
+@@ -282,7 +282,7 @@
+ int error;
+
+ if (addr_cmp(addr, &arpd_ifent.intf_addr) == 0) {
+- syslog(LOG_DEBUG, __FUNCTION__ ": %s at %s",
++ syslog(LOG_DEBUG, __FUNCTION__, ": %s at %s",
+ addr_ntoa(addr), addr_ntoa(&arpd_ifent.intf_link_addr));
+ return (0);
+ }
+@@ -291,10 +291,10 @@
+ error = arp_get(arpd_arp, &arpent);
+
+ if (error == -1) {
+- syslog(LOG_DEBUG, __FUNCTION__ ": no entry for %s",
++ syslog(LOG_DEBUG, __FUNCTION__, ": no entry for %s",
+ addr_ntoa(addr));
+ } else {
+- syslog(LOG_DEBUG, __FUNCTION__ ": %s at %s",
++ syslog(LOG_DEBUG, __FUNCTION__, ": %s at %s",
+ addr_ntoa(addr), addr_ntoa(&arpent.arp_ha));
+ }
+ return (error);
+@@ -423,7 +423,7 @@
+ if ((req = SPLAY_FIND(tree, &arpd_reqs, &tmp)) != NULL) {
+ addr_pack(&src.arp_ha, ADDR_TYPE_ETH, ETH_ADDR_BITS,
+ ethip->ar_sha, ETH_ADDR_LEN);
+- syslog(LOG_DEBUG, __FUNCTION__ ": %s at %s",
++ syslog(LOG_DEBUG, __FUNCTION__, ": %s at %s",
+ addr_ntoa(&req->pa), addr_ntoa(&src.arp_ha));
+
+ /* This address is claimed */
diff --git a/net-misc/arpd/metadata.xml b/net-misc/arpd/metadata.xml
new file mode 100644
index 000000000000..243b1ca9f63a
--- /dev/null
+++ b/net-misc/arpd/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>xmw@gentoo.org</email>
+ <name>Michael Weber</name>
+ </maintainer>
+</pkgmetadata>