libraries/libnet: Initial import

This commit is contained in:
Alan_Hicks 2010-05-11 14:56:21 +02:00 committed by Michiel van Wessem
parent aa4dbf1b71
commit a897240faf
4 changed files with 141 additions and 0 deletions

25
libraries/libnet/README Normal file
View File

@ -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

View File

@ -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

View File

@ -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"

View File

@ -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 <alan@lizella.net>