diff --git a/templates/net-tools/build.diff b/templates/net-tools/build.diff new file mode 100644 index 00000000000..f67d5fb36b2 --- /dev/null +++ b/templates/net-tools/build.diff @@ -0,0 +1,248 @@ +Patches from Archlinux. + +--- config.in 2000-05-21 07:32:12.000000000 -0700 ++++ config.in 2004-05-31 12:36:00.000000000 -0700 +@@ -49,7 +49,7 @@ + * + bool 'UNIX protocol family' HAVE_AFUNIX y + bool 'INET (TCP/IP) protocol family' HAVE_AFINET y +-bool 'INET6 (IPv6) protocol family' HAVE_AFINET6 n ++bool 'INET6 (IPv6) protocol family' HAVE_AFINET6 y + bool 'Novell IPX/SPX protocol family' HAVE_AFIPX y + bool 'Appletalk DDP protocol family' HAVE_AFATALK y + bool 'AX25 (packet radio) protocol family' HAVE_AFAX25 y +@@ -86,6 +86,6 @@ + * + * Other Features. + * +-bool 'IP Masquerading support' HAVE_FW_MASQUERADE n +-bool 'Build iptunnel and ipmaddr' HAVE_IP_TOOLS n +-bool 'Build mii-tool' HAVE_MII n ++bool 'IP Masquerading support' HAVE_FW_MASQUERADE y ++bool 'Build iptunnel and ipmaddr' HAVE_IP_TOOLS y ++bool 'Build mii-tool' HAVE_MII y +--- mii-tool.c 2000-05-21 07:31:17.000000000 -0700 ++++ mii-tool.c 2004-05-31 12:35:21.000000000 -0700 +@@ -379,16 +379,16 @@ + /*--------------------------------------------------------------------*/ + + const char *usage = +-"usage: %s [-VvRrwl] [-A media,... | -F media] [interface ...] +- -V, --version display version information +- -v, --verbose more verbose output +- -R, --reset reset MII to poweron state +- -r, --restart restart autonegotiation +- -w, --watch monitor for link status changes +- -l, --log with -w, write events to syslog +- -A, --advertise=media,... advertise only specified media +- -F, --force=media force specified media technology +-media: 100baseT4, 100baseTx-FD, 100baseTx-HD, 10baseT-FD, 10baseT-HD, ++"usage: %s [-VvRrwl] [-A media,... | -F media] [interface ...]\n\ ++ -V, --version display version information\n\ ++ -v, --verbose more verbose output\n\ ++ -R, --reset reset MII to poweron state\n\ ++ -r, --restart restart autonegotiation\n\ ++ -w, --watch monitor for link status changes\n\ ++ -l, --log with -w, write events to syslog\n\ ++ -A, --advertise=media,... advertise only specified media\n\ ++ -F, --force=media force specified media technology\n\ ++media: 100baseT4, 100baseTx-FD, 100baseTx-HD, 10baseT-FD, 10baseT-HD,\n\ + (to advertise both HD and FD) 100baseTx, 10baseT\n"; + + int main(int argc, char **argv) +--- include/mii.h.bar Tue Jul 31 11:49:39 2001 ++++ include/mii.h Tue Jul 31 11:49:33 2001 +@@ -11,11 +11,9 @@ + + /* network interface ioctl's for MII commands */ + #ifndef SIOCGMIIPHY +-#define SIOCGMIIPHY (SIOCDEVPRIVATE) /* Read from current PHY */ +-#define SIOCGMIIREG (SIOCDEVPRIVATE+1) /* Read any PHY register */ +-#define SIOCSMIIREG (SIOCDEVPRIVATE+2) /* Write any PHY register */ +-#define SIOCGPARAMS (SIOCDEVPRIVATE+3) /* Read operational parameters */ +-#define SIOCSPARAMS (SIOCDEVPRIVATE+4) /* Set operational parameters */ ++#define SIOCGMIIPHY 0x8947 /* Read from current PHY */ ++#define SIOCGMIIREG 0x8948 /* Read any PHY register */ ++#define SIOCSMIIREG 0x8949 /* Write any PHY register */ + #endif + + #include +--- lib/x25_sr.c 2000-05-20 15:38:10.000000000 +0200 ++++ lib/x25_sr.c 2003-10-18 20:33:31.927574928 +0200 +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -77,7 +78,11 @@ + rt.sigdigits=sigdigits; + + /* x25_route_struct.address isn't type struct sockaddr_x25, Why? */ ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0) + memcpy(&rt.address, &sx25.sx25_addr, sizeof(x25_address)); ++#else ++ memcpy(&rt.address, &sx25.sx25_addr, sizeof(struct x25_address)); ++#endif + + while (*args) { + if (!strcmp(*args,"device") || !strcmp(*args,"dev")) { +--- hostname.c 2001-04-08 10:04:23.000000000 -0700 ++++ hostname.c 2004-05-07 17:22:14.000000000 -0700 +@@ -78,6 +78,7 @@ + fprintf(stderr, _("%s: name too long\n"), program_name); + break; + default: ++ ; + } + exit(1); + } +@@ -98,6 +99,7 @@ + fprintf(stderr, _("%s: name too long\n"), program_name); + break; + default: ++ ; + } + exit(1); + }; +@@ -117,6 +119,7 @@ + fprintf(stderr, _("%s: name too long\n"), program_name); + break; + default: ++ ; + } + exit(1); + }; +@@ -174,6 +177,7 @@ + printf("%s\n", hp->h_name); + break; + default: ++ ; + } + } + +--- lib/inet_sr.c 2000-02-20 13:46:45.000000000 -0800 ++++ lib/inet_sr.c 2004-05-07 17:20:14.000000000 -0700 +@@ -105,6 +105,7 @@ + case 2: + isnet = 0; break; + default: ++ ; + } + + /* Fill in the other fields. */ +--- nameif.c.nameif 2000-10-18 19:26:29.000000000 +0200 ++++ nameif.c 2003-03-19 11:02:01.000000000 +0100 +@@ -117,7 +117,8 @@ + } + + struct change { +- struct change *next,**pprev; ++ struct change *next; ++ int found; + char ifname[IFNAMSIZ+1]; + unsigned char mac[6]; + }; +@@ -139,10 +140,7 @@ + ch->ifname, pos); + if (parsemac(p,ch->mac) < 0) + complain(_("cannot parse MAC `%s' at %s"), p, pos); +- if (clist) +- clist->pprev = &ch->next; + ch->next = clist; +- ch->pprev = &clist; + clist = ch; + return 0; + } +@@ -200,7 +198,7 @@ + + void usage(void) + { +- fprintf(stderr, _("usage: nameif [-c configurationfile] [-s] {ifname macaddress}")); ++ fprintf(stderr, _("usage: nameif [-c configurationfile] [-s] {ifname macaddress}\n")); + exit(1); + } + +@@ -277,21 +275,21 @@ + ch = lookupmac(mac); + if (!ch) + continue; +- +- *ch->pprev = ch->next; ++ ++ ch->found = 1; + if (strcmp(p, ch->ifname)) { + if (setname(p, ch->ifname) < 0) + complain(_("cannot change name of %s to %s: %s"), + p, ch->ifname, strerror(errno)); + } +- free(ch); + } + fclose(ifh); + + while (clist) { + struct change *ch = clist; + clist = clist->next; +- warning(_("interface '%s' not found"), ch->ifname); ++ if (!ch->found) ++ warning(_("interface '%s' not found"), ch->ifname); + free(ch); + } + +--- nameif.c.ncpy 2006-10-03 14:24:21.000000000 +0200 ++++ nameif.c 2006-10-03 14:22:43.000000000 +0200 +@@ -100,8 +100,8 @@ + struct ifreq ifr; + opensock(); + memset(&ifr,0,sizeof(struct ifreq)); +- strcpy(ifr.ifr_name, oldname); +- strcpy(ifr.ifr_newname, newname); ++ strncpy(ifr.ifr_name, oldname, IF_NAMESIZE); ++ strncpy(ifr.ifr_newname, newname, IF_NAMESIZE); + return ioctl(ctl_sk, SIOCSIFNAME, &ifr); + } + +--- Makefile.orig 2009-03-05 17:48:38.050953553 +0100 ++++ Makefile 2009-03-05 17:49:47.449932082 +0100 +@@ -76,7 +76,7 @@ + NET_LIB_PATH = lib + NET_LIB_NAME = net-tools + +-PROGS := ifconfig hostname arp netstat route rarp slattach plipconfig nameif ++PROGS := ifconfig arp netstat route rarp slattach plipconfig nameif + + -include config.make + ifeq ($(HAVE_IP_TOOLS),1) +@@ -224,7 +224,6 @@ installbin: + install -m 0755 -d ${BASEDIR}/sbin + install -m 0755 -d ${BASEDIR}/bin + install -m 0755 arp ${BASEDIR}/sbin +- install -m 0755 hostname ${BASEDIR}/bin + install -m 0755 ifconfig ${BASEDIR}/sbin + install -m 0755 nameif ${BASEDIR}/sbin + install -m 0755 netstat ${BASEDIR}/bin +@@ -239,21 +238,11 @@ endif + ifeq ($(HAVE_MII),1) + install -m 0755 mii-tool $(BASEDIR)/sbin + endif +- ln -fs hostname $(BASEDIR)/bin/dnsdomainname +- ln -fs hostname $(BASEDIR)/bin/ypdomainname +- ln -fs hostname $(BASEDIR)/bin/nisdomainname +- ln -fs hostname $(BASEDIR)/bin/domainname +-ifeq ($(HAVE_AFDECnet),1) +- ln -fs hostname $(BASEDIR)/bin/nodename +-endif + + savebin: + @for i in ${BASEDIR}/sbin/arp ${BASEDIR}/sbin/ifconfig \ + ${BASEDIR}/bin/netstat \ +- ${BASEDIR}/sbin/rarp ${BASEDIR}/sbin/route \ +- ${BASEDIR}/bin/hostname ${BASEDIR}/bin/ypdomainname \ +- ${BASEDIR}/bin/dnsdomainname ${BASEDIR}/bin/nisdomainname \ +- ${BASEDIR}/bin/domainname ; do \ ++ ${BASEDIR}/sbin/rarp ${BASEDIR}/sbin/route; do + [ -f $$i ] && cp -f $$i $$i.old ; done ; echo Saved. + + installdata: diff --git a/templates/net-tools/template b/templates/net-tools/template new file mode 100644 index 00000000000..cfc8fd30e53 --- /dev/null +++ b/templates/net-tools/template @@ -0,0 +1,26 @@ +# Template file for 'net-tools' +pkgname=net-tools +version=1.60 +distfiles="http://www.tazenda.demon.co.uk/phil/$pkgname/$pkgname-$version.tar.bz2" +build_style=custom-install +short_desc="Basic networking tools" +maintainer="Juan RP " +checksum=7ae4dd6d44d6715f18e10559ffd270511b6e55a8900ca54fbebafe0ae6cf7d7b +long_desc=" + The ${pkgname} package contains basic networking tools, including + ifconfig, netstat, route, and others." + +Add_dependency run glibc + +do_install() +{ + local destdir=$XBPS_DESTDIR/$pkgname-$version + + cd $wrksrc + . $XBPS_HELPERSDIR/replace-interpreter.sh + replace_interpreter bash configure.sh + + yes "" | make || exit 1 + make BASEDIR=${destdir} update + rm -rf ${destdir}/usr/share/man/man1 +}