From a897240faf6e13bfab01d5a9d619dbba4a65a190 Mon Sep 17 00:00:00 2001 From: Alan_Hicks Date: Tue, 11 May 2010 14:56:21 +0200 Subject: [PATCH] libraries/libnet: Initial import --- libraries/libnet/README | 25 +++++++++ libraries/libnet/libnet.SlackBuild | 89 ++++++++++++++++++++++++++++++ libraries/libnet/libnet.info | 8 +++ libraries/libnet/slack-desc | 19 +++++++ 4 files changed, 141 insertions(+) create mode 100644 libraries/libnet/README create mode 100644 libraries/libnet/libnet.SlackBuild create mode 100644 libraries/libnet/libnet.info create mode 100644 libraries/libnet/slack-desc diff --git a/libraries/libnet/README b/libraries/libnet/README new file mode 100644 index 0000000000..4c05bdc407 --- /dev/null +++ b/libraries/libnet/README @@ -0,0 +1,25 @@ +Libnet is a high-level API (toolkit) allowing the application +programmer to construct and inject network packets. It provides a +portable and simplified interface for low-level network packet shaping, +handling and injection. Libnet hides much of the tedium of packet +creation from the application programmer such as multiplexing, buffer +management, arcane packet header information, byte-ordering, +OS-dependent issues, and much more. Libnet features portable packet +creation interfaces at both the IP-layer and link-layer, as well as a +host of supplementary and complementary functionality. Using libnet, +quick and simple packet assembly applications can be whipped up with +little effort. With a bit more time, more complex programs can be +written (Traceroute and Ping were easily rewritten using libnet and +libpcap). + +Libnet is distrubuted under the BSD license. + +Please note that at the time I wrote this SlackBuild script, libnet's +homepage (http://www.packetfactory.net/libnet/) was inaccessible for +some reason, so I pulled the source tarball from a gentoo mirror. +libnet.info reflects this. Check the homepage for a source code mirror +near you rather than use the gentoo tarball as I can't be certain how +often gentoo's mirrors are rearranged. + + -- Alan Hicks + alan@lizella.net diff --git a/libraries/libnet/libnet.SlackBuild b/libraries/libnet/libnet.SlackBuild new file mode 100644 index 0000000000..961357a46a --- /dev/null +++ b/libraries/libnet/libnet.SlackBuild @@ -0,0 +1,89 @@ +#!/bin/sh +# Copyright 2006, Alan Hicks, Lizella, GA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# Modified by the SlackBuilds.org project + +PRGNAM=libnet +VERSION=1.1.2.1 +ARCH=${ARCH:-i486} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} +CWD=`pwd` +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/pkg-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" +fi + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION + +tar xzvf $CWD/$PRGNAM-$VERSION.tar.gz || exit 1 +# libnet is one of those braindead source tarballs that lacks +# the version. We'll fix that for consistency with other +# slackbuilds.org scripts. +mv $PRGNAM $PRGNAM-$VERSION || exit 1 +cd $PRGNAM-$VERSION || exit 1 + +# Fix ownership and permissions inside the source tarball. +# It's appalling how many projects have 777 permissions or +# even suid, sgid, and sticky bits set on things. +chown -R root:root . +chmod -R u+w,go+r-w,a-s . + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + || exit 1 + +make || exit 1 +make prefix=$PKG/usr install || exit 1 + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a README doc/* $PKG/usr/doc/$PRGNAM-$VERSION +find $PKG/usr/doc/$PRGNAM-$VERSION -type f -exec chmod 0644 {} \; +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +# More libnet brain-deadness +cp -a doc/man $PKG/usr +rm -fr $PKG/usr/man/CVS \ + $PKG/usr/doc/$PRGNAM-$VERSION/CVS \ + $PKG/usr/doc/$PRGNAM-$VERSION/man + +if [ -d $PKG/usr/man ]; then + ( cd $PKG/usr/man + find . -type f -exec gzip -9 {} \; + for i in `find . -type l` ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done + ) +fi + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz diff --git a/libraries/libnet/libnet.info b/libraries/libnet/libnet.info new file mode 100644 index 0000000000..f1193f4b03 --- /dev/null +++ b/libraries/libnet/libnet.info @@ -0,0 +1,8 @@ +PRGNAM="libnet" +VERSION="1.1.2.1" +HOMEPAGE="http://www.packetfactory.net/projects/libnet/" +DOWNLOAD="ftp://ftp-linux.cc.gatech.edu/pub/gentoo/distfiles/libnet-1.1.2.1.tar.gz" +MD5SUM="be845c41170d72c7db524f3411b50256" +MAINTAINER="Alan_Hicks" +EMAIL="alan@lizella.net" +APPROVED="BP{k},robw810" diff --git a/libraries/libnet/slack-desc b/libraries/libnet/slack-desc new file mode 100644 index 0000000000..b047176e38 --- /dev/null +++ b/libraries/libnet/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +libnet: Libnet is a high-level API (toolkit) allowing the application +libnet: programmer to construct and inject network packets. It provides a +libnet: portable and simplified interface for low-level network packet shaping +libnet: handling and injection. Libnet hides much of the tedium of packet +libnet: creation from the application programmer such as multiplexing, buffer +libnet: management, arcane packet header information, byte-ordering, +libnet: OS-dependent issues, and much more. +libnet: +libnet: +libnet: +libnet: Packaged by Alan Hicks