#!/bin/sh # Heavily based on the Slackware 12.0 SlackBuild # Requirements: libnids, libnet # http://www.slacky.it NAME=net_tools VERSION=`date +"%d%m%y"` ARCH=${ARCH:-i486} BUILD=1bj CWD=`pwd` SRCD=$CWD/src TMP=${TMP:-/tmp/tgz} PKG=$TMP/package-$NAME if [ -d $TMP ]; then rm -rf $TMP/* else mkdir -p $TMP fi if [ -d $PKG ]; then rm -rf $PKG fi mkdir -p $PKG (cd $SRCD for url in $(cat src_urls.txt) do package=$(basename $url) if [ ! -e "$SRCD/$package" ]; then wget -c $url fi done ) # CFLAGS export CFLAGS="-O2 -march=i486 -mtune=i686" export CXXFLAGS="$CFLAGS" cd $TMP # Extract, configure, build & install ## dsniff SRCN=dsniff SRCV=2.4 tar -zxvf $SRCD/$SRCN-2.4b1.tar.gz || exit 1 cd $SRCN-$SRCV mkdir -p $PKG/usr/sbin # Apply Debian's patchset zcat $CWD/src/dsniff_patch.diff.gz | patch -p1 -f --verbose || exit 1 ./configure --prefix=/usr --build=$ARCH-slackware-linux || exit 1 make && make install_prefix=$PKG install || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a CHANGES LICENSE README TODO $PKG/usr/doc/$SRCN-$SRCV cd .. ## echoping SRCN=echoping SRCV=6.0.2 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --mandir=/usr/man \ --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a AUTHORS COPYING INSTALL ChangeLog README TODO $PKG/usr/doc/$SRCN-$SRCV cd .. ## hping SRCN=hping3 SRCV=20051105 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV ln -s /usr/include/pcap-bpf.h /usr/include/net/bpf.h ./configure && make || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV (cp hping3 $PKG/usr/bin; cd $PKG/usr/bin; ln -s hping3 hping) cp -a AUTHORS BUGS CHANGES COPYING INSTALL KNOWN-BUGS \ NEWS README TODO RFCs docs/hping2rc.example $PKG/usr/doc/$SRCN-$SRCV cp ./docs/hping3.8 $PKG/usr/man/man8 cd .. ## ifstatus SRCN=ifstatus SRCV=1.1.0 tar -zxvf $SRCD/$SRCN-v1.1.0.tar.gz || exit 1 cd $SRCN make || exit 1 cp ifstatus $PKG/usr/bin mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a AUTHORS COPYING README $PKG/usr/doc/$SRCN-$SRCV cd .. ## iftop SRCN=iftop SRCV=0.17 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --enable-default-promiscuous \ --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a AUTHORS ChangeLog COPYING NEWS README TODO $PKG/usr/doc/$SRCN-$SRCV cd .. ## ipcalc SRCN=ipcalc SRCV=0.41 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV install -m755 ipcalc $PKG/usr/bin mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a changelog $PKG/usr/doc/$SRCN-$SRCV cd .. ## iperf SRCN=iperf SRCV=2.0.2 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --enable-ipv6 --enable-multicast \ --enable-threads --disable-debuginfo --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a INSTALL README doc/*.html $PKG/usr/doc/$SRCN-$SRCV cd .. ## jnettop SRCN=jnettop SRCV=0.13.0 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --without-syslog \ --disable-jnet --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a AUTHORS ChangeLog COPYING NEWS README* PORTING $PKG/usr/doc/$SRCN-$SRCV cd .. ## lft SRCN=lft SRCV=3.0 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --mandir=/usr/man \ --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a CHANGELOG COPYING INSTALL README TODO $PKG/usr/doc/$SRCN-$SRCV cd .. ## liboping SRCN=liboping SRCV=0.3.5 tar -xvjf $SRCD/$SRCN-$SRCV.tar.bz2 || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --mandir=/usr/man \ --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a AUTHORS ChangeLog COPYING NEWS README $PKG/usr/doc/$SRCN-$SRCV cd .. ## mping SRCN=mping SRCV=2.01 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV zcat $CWD/src/mping_glibc24.diff.gz | patch -p1 -f --verbose || exit 1 ./configure --prefix=/usr --mandir=/usr/man \ --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a AUTHORS ChangeLog COPYING NEWS README TODO $PKG/usr/doc/$SRCN-$SRCV cd .. ## nettop SRCN=nettop SRCV=0.2.3 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV zcat $CWD/src/nettop_fix.diff.gz | patch -p1 -f --verbose || exit 1 ./configure --prefix=/usr --build=$ARCH-slackware-linux || exit 1 make || exit 1 install -m755 nettop $PKG/usr/bin mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a ChangeLog README THANKS $PKG/usr/doc/$SRCN-$SRCV cd .. ## ngrep SRCN=ngrep SRCV=1.45 tar -xvjf $SRCD/$SRCN-$SRCV.tar.bz2 || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --enable-ipv6 --enable-pcre \ --with-pcap-includes=/usr/include --disable-debug \ --mandir=/usr/man --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 cat $PKG/usr/share/man/man8/ngrep.8 > $PKG/usr/man/man8/ngrep.8 rm -fr $PKG/usr/share/man mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a *.txt doc/*.txt $PKG/usr/doc/$SRCN-$SRCV cd .. ## pinger SRCN=pinger SRCV=0.32 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --mandir=/usr/man \ --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 chmod u+s $PKG/usr/bin/pinger mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a AUTHORS BUGS ChangeLog COPYING INSTALL NEWS README $PKG/usr/doc/$SRCN-$SRCV cd .. ## p0f SRCN=p0f SRCV=2.0.8 tar -zxvf $SRCD/$SRCN-$SRCV.tgz || exit 1 cd $SRCN #ln -s /usr/include/pcap-bpf.h /usr/include/net/bpf.h ./Build && make || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV $PKG/etc/p0f cp p0f p0frep $PKG/usr/bin cp p0f.fp p0fa.fp p0fr.fp p0fo.fp $PKG/etc/p0f cp -a doc/* $PKG/usr/doc/$SRCN-$SRCV cp p0f.1 $PKG/usr/man/man1 cd .. ## poink SRCN=poink SRCV=1.6 unzip $SRCD/$SRCN.zip || exit 1 cd $SRCN make || exit 1 mkdir $PKG/usr/doc/$SRCN-$SRCV cp poink $PKG/usr/bin sed -i "s|^ping|poink|g" ping.1 cat ping.1 > $PKG/usr/man/man1/poink.1 cp -a README $PKG/usr/doc/$SRCN-$SRCV cd .. ## rate SRCN=rate SRCV=0.9 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV make || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp rate $PKG/usr/bin cp -a README VERSION doc/rate.html $PKG/usr/doc/$SRCN-$SRCV cp doc/*.1 $PKG/usr/man/man1 cd .. ## sendip SRCN=sendip SRCV=2.5 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV zcat $CWD/src/sendip_gcc4.diff.gz | patch -p1 -f --verbose || exit 1 make PREFIX=/usr MANDIR=/usr/man || exit 1 make install PREFIX=$PKG/usr MANDIR=/$PKG/usr/man/man1 || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a CHANGES LICENSE README TODO $PKG/usr/doc/$SRCN-$SRCV cd .. ## shd-tcp-tools SRCN=shd-tcp-tools SRCV=0.04 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --mandir=/usr/man --package-prefix=$PKG || exit 1 make && make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a bugs.txt ChangeLog.txt readme.txt todo.txt $PKG/usr/doc/$SRCN-$SRCV cd .. ## sipcalc SRCN=sipcalc SRCV=1.1.4 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --mandir=/usr/man \ --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a AUTHORS ChangeLog COPYING NEWS README TODO $PKG/usr/doc/$SRCN-$SRCV cd .. ## tcpcat SRCN=tcpcat SRCV=0.1 tar -zxvf $SRCD/$SRCN.tar.gz || exit 1 cd $SRCN make || exit 1 install -m755 tcpcat $PKG/usr/bin mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a COPY* README $PKG/usr/doc/$SRCN-$SRCV cd .. ## tcping SRCN=tcping SRCV=0.1 tar -zxvf $SRCD/$SRCN-$SRCV.tgz || exit 1 cd $SRCN-$SRCV make CFLAGS="$CFLAGS" || exit 1 install -m755 tcping $PKG/usr/bin mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a license.txt readme.txt $PKG/usr/doc/$SRCN-$SRCV cd .. ## tcptraceroute SRCN=tcptraceroute SRCV=1.5beta7 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --mandir=/usr/man \ --disable-debug --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 mv $PKG/usr/share/doc/$SRCN $PKG/usr/doc mv $PKG/usr/doc/$SRCN $PKG/usr/doc/$SRCN-$SRCV rm -fr $PKG/usr/share/doc cd .. ## tcptrack SRCN=tcptrack SRCV=1.2.0 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --mandir=/usr/man \ --disable-debug --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a AUTHORS ChangeLog COPYING INSTALL README NEWS TODO $PKG/usr/doc/$SRCN-$SRCV cd .. ## trafshow SRCN=trafshow SRCV=5.2.3 tar -zxvf $SRCD/$SRCN-$SRCV.tgz || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --mandir=/usr/man \ --disable-debug --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a CHANGES INSTALL README $PKG/usr/doc/$SRCN-$SRCV cd .. ## xprobe2 SRCN=xprobe2 SRCV=0.3 tar -zxvf $SRCD/$SRCN-$SRCV.tar.gz || exit 1 cd $SRCN-$SRCV ./configure --prefix=/usr --mandir=/usr/man \ --sysconfdir=/etc --build=$ARCH-slackware-linux || exit 1 make && make install DESTDIR=$PKG || exit 1 ( cd $PKG/etc/xprobe2 ; for i in `ls`; do mv $i $i.new ; done ) mkdir -p $PKG/usr/doc/$SRCN-$SRCV cp -a docs/* $PKG/usr/doc/$SRCN-$SRCV chmod 644 $PKG/usr/doc/$SRCN-$SRCV/* # Strip binaries and libreries find $PKG | xargs file | grep "ELF 32-bit LSB executable" \ | cut -f 1 -d : | xargs strip --strip-all 2> /dev/null find $PKG | xargs file | grep "shared object" \ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null # Gzip the man pages find $PKG/usr/man -type f -exec gzip -9 {} \; cd $PKG # Install slack-desc and doinst.sh mkdir -p $PKG/install $PKG/usr/doc/$NAME-$VERSION cat $CWD/doinst.sh > $PKG/install/doinst.sh cat $CWD/slack-desc > $PKG/install/slack-desc cat $CWD/slack-desc > $PKG/usr/doc/$NAME-$VERSION/slack-desc cat $SRCD/desc_pkgs.txt > $PKG/usr/doc/$NAME-$VERSION/desc_pkgs.txt cat $CWD/$NAME.SlackBuild > $PKG/usr/doc/$NAME-$VERSION/$NAME.SlackBuild # Build the package chown -R root:root . requiredbuilder -v -y -s $CWD $PKG makepkg -l y -c n $CWD/$NAME-$VERSION-$ARCH-$BUILD.tgz if [ "$1" = "--cleanup" ]; then rm -rf $TMP fi