Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 225125 - New package: arpon - ArpON (Arp handler inspectiON) is a portable Arp handler
Summary: New package: arpon - ArpON (Arp handler inspectiON) is a portable Arp handler
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Markos Chandras (RETIRED)
URL: http://arpon.sourceforge.net/index.html
Whiteboard:
Keywords: EBUILD
: 225133 236626 346629 (view as bug list)
Depends on:
Blocks:
 
Reported: 2008-06-06 15:03 UTC by Giuseppe Marco Randazzo <zeld>
Modified: 2011-01-05 22:02 UTC (History)
6 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
ebuild (arpon-1.10-r1.ebuild,1.12 KB, text/plain)
2008-06-07 17:38 UTC, Giuseppe Marco Randazzo <zeld>
Details
Makefile Patch (Makefile-arpon-1.10-r1.patch,1.37 KB, patch)
2008-06-07 17:39 UTC, Giuseppe Marco Randazzo <zeld>
Details | Diff
ArpON 1.40 (arpon-1.40.ebuild,1.26 KB, text/plain)
2008-07-11 11:03 UTC, Giuseppe Marco Randazzo <zeld>
Details
Makefile patch arpon 1.40 (Makefile-arpon-1.40.patch,1.69 KB, text/plain)
2008-07-11 11:03 UTC, Giuseppe Marco Randazzo <zeld>
Details
arpon 1.40 patch (arpon-1.40-parch.patch,590 bytes, patch)
2008-07-11 13:48 UTC, Giuseppe Marco Randazzo <zeld>
Details | Diff
ebuild (arpon-1.40-r1.ebuild,1.10 KB, text/plain)
2008-07-16 15:26 UTC, Giuseppe Marco Randazzo <zeld>
Details
makefile arpon 1.40-r1 patch (Makefile-arpon-1.40-r1.patch,1.69 KB, patch)
2008-07-16 15:27 UTC, Giuseppe Marco Randazzo <zeld>
Details | Diff
arpon 1.40-r1 patch (arpon-1.40-r1-patch.patch,590 bytes, patch)
2008-07-16 15:27 UTC, Giuseppe Marco Randazzo <zeld>
Details | Diff
arpon 1.50 ebuild (arpon-1.50.ebuild,1.05 KB, text/plain)
2008-08-13 19:00 UTC, Giuseppe Marco Randazzo <zeld>
Details
arpon 1.50 Makefile patch (Makefile-arpon-1.50.patch,1.69 KB, patch)
2008-08-13 19:06 UTC, Giuseppe Marco Randazzo <zeld>
Details | Diff
ArpOn 1.70 ebuild (arpon-1.70.ebuild,1.05 KB, text/plain)
2008-09-09 06:26 UTC, Giuseppe Marco Randazzo <zeld>
Details
Makefile arpon 1.70 patch (Makefile-arpon-1.70.patch,1.80 KB, patch)
2008-09-09 06:27 UTC, Giuseppe Marco Randazzo <zeld>
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Giuseppe Marco Randazzo <zeld> 2008-06-06 15:03:29 UTC
ArpON (Arp handler inspectiON) is a portable handler daemon with some nice tools to handle all ARP aspects.
It has a lot of features and it makes Arp a bit safer. This is possible using two kinds of anti Arp Poisoning tecniques, the first is based on SARPI or "Static Arp Inspection", the second on DARPI or "Dynamic Arp Inspection" approach.
Keep in mind other common tools fighting ARP poisoning usually limit their activity only to point out the problem instead of blocking it, ArpON does it using SARPI and DARPI policies.
Finally you can use ArpON to pentest some switched/hubbed LAN with/without DHCP protocol, in fact you can disable the daemon in order to use the tools to poison the ARP Cache.
However ArpON is also a good tool to a clever sysadmin aware of security related topics. It is a tool born to make Arp secure in order to avoid Arp Spoofing/Poisoning & co.
Remember it doesn't affect the communication efficiency of the ARP protocol!

Reproducible: Always




Ebuild arpon-1.10-r1.ebuild 
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

inherit eutils

MY_P="ArpON-${PV}"
DESCRIPTION="ArpON (Arp handler inspectiON) is a portable Arp handler. It
Detects and Blocks all ARP Poisoning/Spoofing attacks with static (SARPI) and
dynamic (DARPI) approach on switched/hubbed LAN with/without DHCP protocol."

HOMEPAGE="http://arpon.sourceforge.net/"
SRC_URI="http://mesh.dl.sourceforge.net/sourceforge/arpon/$MY_P.tar.gz"

LICENSE="BSD License"
SLOT="0"
KEYWORDS="~alpha amd64 hppa ia64 ppc ppc64 sparc x86"
IUSE="doc"

DEPEND="net-libs/libpcap
        >=net-libs/libnet-1.1.2.1-r1
        dev-libs/libdnet"

RDEPEND="net-libs/libpcap
                >=net-libs/libnet-1.1.2.1-r1
                dev-libs/libdnet"

S=${WORKDIR}/${MY_P}

src_unpack()
{ 
        unpack ${A}
        cd "${S}"
        epatch "${FILESDIR}"/Makefile-arpon-1.10-r1.patch
}
src_compile() {
                make    ||      die "make failed"
                }

src_install() {
                #   make  install || die " make intall abort"
                #       DESTDIR="${D}" \
                #       docdir=/usr/share/doc/${PF}
                #       install || die "make install abort"
                        newsbin arpon arpon || die
                        dodoc AUTHORS  CHANGELOG INSTALL TODO || die "dodoc failed"
                        }

Patch: Makefile-arpon-1.10-r1.patch

--- Makefile_orig	2008-06-05 11:00:42.000000000 +0200
+++ Makefile	2008-06-06 16:51:49.000000000 +0200
@@ -1,39 +1,10 @@
 SOURCE = arpon.c
 EXEC = arpon
 
-CFLAGS = -Wall -Werror
+CFLAGS += -Wall
 
-LIBS_OSX = -lpcap -ldnet -lnet -L/opt/local/lib/ -I/opt/local/include/
+LIBS_LINUX = -lpcap -ldnet -lnet -L/usr/lib -I/usr/include
+LIBS_LINK_LINUX = /usr/lib/libpcap.a /usr/lib/libnet.a /usr/lib/libdnet.a
 
-LIBS_FREEBSD = -lpcap -ldnet -lnet -L/usr/local/lib -I/usr/local/include -L/usr/local/lib/libnet11 -I/usr/local/include/libnet11 
-LIBS_LINK_FREEBSD = /usr/lib/libpcap.a /usr/local/lib/libnet11/libnet.a /usr/local/lib/libdnet.a
-
-LIBS_LINUX = -lpcap -ldnet -lnet -L/usr/local/lib -I/usr/local/include
-LIBS_LINK_LINUX = /usr/local/lib/libpcap.a /usr/lib/libnet.a /usr/local/lib/libdnet.a
-
-arpon:
-	@echo ""
-	@echo "  Portings avaible:" 
-	@echo "  ================="
-	@echo "  - MAC OS X	run:	make osx"
-	@echo "  - FreeBSD	run:	make freebsd"
-	@echo "  - GNU/Linux	run:	make linux"
-	@echo ""
-
-osx: $(SOURCE)
-	gcc $(CFLAGS) $(LIBS_OSX) -o $(EXEC) $(SOURCE)
-
-freebsd: $(SOURCE)
-	gcc $(CFLAGS) $(LIBS_FREEBSD) -o $(EXEC) $(SOURCE) $(LIBS_LINK_FREEBSD)
-
-linux: $(SOURCE)
+make: $(SOURCE)
 	gcc $(CFLAGS) $(LIBS_LINUX) -DLINUX -o $(EXEC) $(SOURCE) $(LIBS_LINK_LINUX)
-
-clean:
-	rm -f $(EXEC)
-
-install:
-	cp $(EXEC) /sbin
-
-uninstall:
-	rm -f /sbin/$(EXEC)



ChangeLog: 

# ChangeLog for net-analyzer/arpon
# Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
# $Header

*arpon-1.10-r1 (6 Jul 2008)

  6 Jul 2008; G.Bevin <zeld@freaknet.org> ChangeLog :
  
  Write Makefile patch.

  Added initial ChangeLog which should be updated whenever the package is
  updated in any way. This changelog is targetted to users. This means that the
  comments should well explained and written in clean English. The details about
  writing correct changelogs are explained in the skel.ChangeLog file which you
  can find in the root directory of the portage repository.
Comment 1 Diego Elio Pettenò (RETIRED) gentoo-dev 2008-06-06 15:28:54 UTC
[I've left a few comments about the ebuild on #gentoo-it, just to repeat and write it down:

- ebuild and patches should be attached, not inlined;
- newsbin is used when the file has the wrong name;
- duplicating DEPEND/RDEPEND information is not good;
- keywords are broken, you should only add ~arch for the arches you can test (anyway devs will probably reset them on commit);
- not a good idea to remove OSX/FreeBSD definition as both cases are supported by Gentoo (the former just in prefix);
- the changelog is unneeded;

and more:
- you should use emake not make;
- the makefile is broken anyway, it ignores LDFLAGS which is not good and has the wrong order of arguments;
- dodoc of INSTALL file is usually useless.
Comment 2 Diego Elio Pettenò (RETIRED) gentoo-dev 2008-06-06 15:40:37 UTC
*** Bug 225133 has been marked as a duplicate of this bug. ***
Comment 3 Giuseppe Marco Randazzo <zeld> 2008-06-07 17:38:41 UTC
Created attachment 155851 [details]
ebuild
Comment 4 Giuseppe Marco Randazzo <zeld> 2008-06-07 17:39:26 UTC
Created attachment 155855 [details, diff]
Makefile Patch
Comment 5 Giuseppe Marco Randazzo <zeld> 2008-07-11 11:03:09 UTC
Created attachment 160109 [details]
ArpON 1.40

On amd64 not compile, and u probably get this error:

gcc -march=k8 -msse3 -O2 -pipe -Wall -Werror -Wl,-O1  -lpthread -lpcap -ldnet -lnet -L/usr/lib -I/usr/include -DLINUX -o arpon arpon.c
cc1: warnings being treated as errors
arpon.c: In function ‘sarpi_manager’:
arpon.c:1779: warning: ‘arp’ may be used uninitialized in this function
make: *** [linux] Error 1


We attend for probably patch or a solution. Anyway try it.
There is a Makefile patch. Do not forgot this.
Comment 6 Giuseppe Marco Randazzo <zeld> 2008-07-11 11:03:50 UTC
Created attachment 160110 [details]
Makefile patch arpon 1.40

Make file patch
Comment 7 Giuseppe Marco Randazzo <zeld> 2008-07-11 13:48:40 UTC
Created attachment 160118 [details, diff]
arpon 1.40 patch 

Now arpon compile. The problem of uninizialized pointer is solved. Good test! :)

zeld
Comment 8 Giuseppe Marco Randazzo <zeld> 2008-07-16 15:26:05 UTC
Created attachment 160571 [details]
ebuild 

correct ebuild. thanks Flameeyes for advice :-)
Comment 9 Giuseppe Marco Randazzo <zeld> 2008-07-16 15:27:24 UTC
Created attachment 160573 [details, diff]
makefile  arpon 1.40-r1 patch

Makefile arpon 1.40-r1 patch
Comment 10 Giuseppe Marco Randazzo <zeld> 2008-07-16 15:27:57 UTC
Created attachment 160575 [details, diff]
arpon 1.40-r1 patch

arpon 1.40-r1 patch
Comment 11 Giuseppe Marco Randazzo <zeld> 2008-08-13 19:00:56 UTC
Created attachment 162837 [details]
arpon 1.50 ebuild

This is the 1.50 release of arpon.
Comment 12 Giuseppe Marco Randazzo <zeld> 2008-08-13 19:06:37 UTC
Created attachment 162838 [details, diff]
arpon 1.50 Makefile patch

 arpon 1.50 Makefile patch
Comment 13 Jeroen Roovers (RETIRED) gentoo-dev 2008-09-08 19:39:25 UTC
*** Bug 236626 has been marked as a duplicate of this bug. ***
Comment 14 Jeroen Roovers (RETIRED) gentoo-dev 2008-09-08 19:41:09 UTC
Version 1.60 is out as of Sep 5 2008.
Comment 15 Andrea Di Pasquale 2008-09-08 23:03:47 UTC
Version 1.70 is out!
Comment 16 Giuseppe Marco Randazzo <zeld> 2008-09-09 06:26:56 UTC
Created attachment 164976 [details]
ArpOn 1.70 ebuild

ArpON 1.70 ebuild
Comment 17 Giuseppe Marco Randazzo <zeld> 2008-09-09 06:27:49 UTC
Created attachment 164978 [details, diff]
Makefile arpon 1.70 patch

Makefile arpon 1.70 patch
Comment 18 Andrea Di Pasquale 2008-09-09 20:40:41 UTC
ArpON 1.72 released! arpon include makefile patch now.
Comment 19 Peter Volkov (RETIRED) gentoo-dev 2008-09-10 06:18:05 UTC
Giuseppe, netmon is quite understaffed ATM so I suggest you to maintain ebuild in sunrise overlay:

http://overlays.gentoo.org/proj/sunrise/wiki

It's really easy to gain access there and with the help of developers you'll make you ebuild much nicer. If you don't like Irc you can contact me by mail or in Jabber (xmpp: pva@jabber.org) and I'll help you to improve ebuild, give you access to overlay and you'll commit it there.

Please note the following issues with arpon-1.70.ebuild:
1. Description is too long. Write a metadata.xml with longdescription but keep DESCRIPTION field less than 100 symbols.
2. LICENSE is wrong
3. Please drop KEYWORDS for all architectures you didn't actually tested ebuild on.
4. Use proper indentation: only tabs and only one tab.

Most of above (and may be more) issues could be checked with `repoman full` run. So, please, use this tool.

BTW, if Giuseppe is not interested in maintaining ebuild there, but somebody else is, then, please, step in )
Comment 20 Giuseppe Marco Randazzo <zeld> 2008-09-15 21:42:50 UTC
ArpON is now in the sunrise overlay. You can find it 
at:

http://overlays.gentoo.org/svn/proj/sunrise/reviewed/net-analyzer/ArpON/


For add sunrise overlay you can follow this guide:

http://overlays.gentoo.org/proj/sunrise/


At the monent supported arch are sparc, x86 and amd64. For other arch please test it and reported any problems or bug. Thanks 


Giuseppe Marco Randazzo 
Comment 21 Auke Booij (tulcod) 2009-05-11 14:04:33 UTC
maybe it's an idea to give this package an init.d script? I don't know exactly what this program does, but that seems to be useful, considering it's a daemon.
Comment 22 Jeroen Roovers (RETIRED) gentoo-dev 2010-10-14 15:47:09 UTC
arpon-1.70.ebuild:

DESCRIPTION="ArpON (Arp handler inspectiON) is a portable Arp handler. It
Detects and Blocks all ARP Poisoning/Spoofing attacks with static (SARPI) and
dynamic (DARPI) approach on switched/hubbed LAN with/without DHCP protocol."

   Description is 215 characters, much too long. The first sentence should
   suffice and the rest could go into metadata.xml.

HOMEPAGE="http://arpon.sourceforge.net/"
SRC_URI="http://mesh.dl.sourceforge.net/sourceforge/arpon/$MY_P.tar.gz"

   Please use mirror://sourceforge for SRC_URI.

LICENSE="BSD License"

   That is not a valid license. Pick the correct one from ${PORTDIR}/licenses.

SLOT="0"
KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc x86 ~x86-fbsd"

   I am quite sure you didn't test all those architectures.

IUSE="doc"

   Where is USE=doc used in the ebuild?
   Also, the kernel_* flags should be in IUSE.

DEPEND="net-libs/libpcap
	>=net-libs/libnet-1.1.2.1-r1
	dev-libs/libdnet"

RDEPEND="${DEPEND}"

S=${WORKDIR}/${MY_P}

src_unpack()
{ 
	unpack ${A}
	cd "${S}"

   Better to go EAPI="2" when you're at it and use src_prepare() instead of
   src_unpack():

	epatch "${FILESDIR}"/Makefile-arpon-1.70.patch
}

src_compile() {
				if use kernel_linux; then
					emake linux || die "emake failed"
				elif use kernel_FreeBSD; then
					emake freebsd || die "emake failed"
				fi
}

src_install() {
		dosbin arpon
		doman man8/arpon.8
		dodoc AUTHORS  CHANGELOG  TODO
}
Comment 23 Jeroen Roovers (RETIRED) gentoo-dev 2010-11-24 15:52:07 UTC
*** Bug 346629 has been marked as a duplicate of this bug. ***
Comment 24 Markos Chandras (RETIRED) gentoo-dev 2011-01-05 22:02:10 UTC
+*arpon-2.1 (05 Jan 2011)
+
+  05 Jan 2011; Markos Chandras <hwoarang@gentoo.org> +arpon-2.1.ebuild,
+  +metadata.xml:
+  Moved from sunrise overlay. Thanks to Giuseppe Marco Randazzo
+  <gmrandazzo@gmail.com>. Bug #225125
+

If you want to become proxy maintainer for arpon, please contact me