X-Git-Url: http://git.pld-linux.org/?p=packages%2Farpd.git;a=blobdiff_plain;f=arpd.spec;h=2a8fe733def1adb7ab0e98a677da665a18527e61;hp=a166a11bc38630d8400baeb70a96739976bbe6c1;hb=1d84bd52349197bb2eabd4f36ca5190769cf9d04;hpb=90303904b828971be504946678726efb4971f69b diff --git a/arpd.spec b/arpd.spec index a166a11..2a8fe73 100644 --- a/arpd.spec +++ b/arpd.spec @@ -1,22 +1,30 @@ +# OBSOLETE - by what? Summary: User-space arp daemon -Summary(pl): Demon arpd +Summary(pl.UTF-8): Demon arpd działający w przestrzeni użytkownika Name: arpd Version: 1.0.2 -Release: 3 +Release: 12 License: GPL Group: Daemons -Group(de): Server -Group(pl): Serwery +# origin, but 404 +#Source0: http://www.loran.com/~layes/arpd/%{name}-%{version}.tar.gz +# working (copy of original package): +#Source0: http://www.funet.fi/pub/Linux/PEOPLE/Linus/net-source/base/%{name}-%{version}.tar.gz +# but in CVS we probably have some renamed source from Debian (with .orig inside) Source0: %{name}-%{version}.tar.gz +# Source0-md5: 4b445f5698342c873068a86a18bc3d6a Source1: %{name}-init Patch0: %{name}-%{version}.debian-patch Patch1: %{name}-%{version}.pld-patch Patch2: %{name}-makefile-patch Patch3: %{name}-more_tables.patch Patch4: %{name}-uid.patch -Prereq: /sbin/chkconfig -Prereq: rc-scripts >= 0.2.0 -Prereq: fileutils +#URL: http://www.loran.com/~layes/arpd/ +BuildRequires: rpmbuild(macros) >= 1.268 +Requires(post,preun): /sbin/chkconfig +Requires: dev >= 2.8.0-4 +Requires: fileutils +Requires: rc-scripts >= 0.2.0 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description @@ -26,99 +34,54 @@ LARGE network segments (256+ systems per segment), because the kernel hash tables are not optimized to handle this situation. To use the ARP daemon your kernel needs to have ARPD and NETLINK support enabled. The standard kernels of PLD lack this support. It shouldn't be run without -that!! This version can alocate 2048 entries. +that! This version can allocate 4096 entries. -%description -l pl -Demon ARP przekazuje zarz±dzanie tablic± ARP (Address Resolution -Protocol) z kernel'a do przestrzeni u¿ytkownika. Jest to bardzo -u¿yteczne dla miejsc o du¿ych segmentach sieci (256+ systemów na -segment), poniewa¿ tablice w j±drze nie s± zoptymalizowane na takie -sytuacje. Aby u¿ywaæ tego demona musisz mieæ ARPD support oraz NETLINK -support uaktywnione w j±drze. Uwaga! Stanadardowe j±dro PLD nie ma -supportu ARPD!!. Demon nie powinien byæ startowany bez tego!! Ta -wersja potrafi zaakceptowaæ 2048 pozycji. +%description -l pl.UTF-8 +Demon ARP przekazuje zarządzanie tablicą ARP (Address Resolution +Protocol) z jądra do przestrzeni użytkownika. Jest to bardzo użyteczne +w miejscach o dużych segmentach sieci (256+ systemów na segment), +ponieważ tablice w jądrze nie są zoptymalizowane na takie sytuacje. +Aby używać tego demona jądro musi mieć włączoną obsługę ARPD i +NETLINK. Uwaga! Standardowe jądro PLD nie ma obsługi ARPD. Demon nie +powinien być startowany bez tego! Ta wersja potrafi przydzielić 4096 +pozycji. %prep -%setup -q -n %{name}-%{version}.orig +%setup -q -n %{name}-%{version}.orig %patch0 -p1 %patch1 -p1 %patch2 -p1 -%patch3 +%patch3 -p0 %patch4 -p1 %build -%{__make} +%{__make} \ + CC="%{__cc}" \ + LDFLAGS="%{rpmldflags}" \ + RPM_OPT_FLAGS="%{rpmcflags}" %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT/{usr/sbin,etc/rc.d/init.d,/var/lib/arpd} +install -d $RPM_BUILD_ROOT/{usr/sbin,etc/rc.d/init.d} install arpd $RPM_BUILD_ROOT%{_sbindir}/arpd install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/arpd -gzip -9nf CHANGES - -%pre -if [ -n "`id -u arpd 2>/dev/null`" ]; then - if [ "`id -u arpd`" != "40" ]; then - echo "Warning: user arpd haven't uid=40. Correct this before installing arpd." 1>&2 - exit 1 - fi -else - echo "Adding arpd user (UID=40)" - /usr/sbin/useradd -u 40 -r -d /var/lib/arpd -s /bin/false -c "arpd user" -g daemon arpd 1>&2 -fi +%clean +rm -rf $RPM_BUILD_ROOT %post /sbin/chkconfig --add arpd -if [ ! -e /dev/arpd ]; then - echo "Making /dev/arpd device" - mknod /dev/arpd c 36 8 - echo "Moving /dev/arpd to /var/lib/arpd/arpd and making symlink" - mv -f /dev/arpd /var/lib/arpd - chown arpd /var/lib/arpd/arpd - ln -s /var/lib/arpd/arpd dev/arpd -else - if [ ! -L /dev/arpd ]; then - echo "Moving /dev/arpd to /var/lib/arpd/arpd and making symlink" - mv -f /dev/arpd /var/lib/arpd - chown arpd /var/lib/arpd/arpd - ln -s /var/lib/arpd/arpd dev/arpd - fi -fi -echo "You need arpd kernel support. The standard kernels of PLD lack this support!!" -if [ -f /var/lock/subsys/arpd ]; then - /etc/rc.d/init.d/arpd restart 1>&2 -else - echo "Run \"/etc/rc.d/init.d/arpd start\" to start arpd daemon." -fi - +%service arpd restart "arpd daemon" %preun -/sbin/chkconfig --del arpd if [ "$1" = "0" ]; then - if [ -f /var/lock/subsys/arpd ]; then - /etc/rc.d/init.d/arpd stop 1>&2 - fi + %service aprd stop /sbin/chkconfig --del arpd - echo "Moving /var/lib/arpd/arpd to /dev/arpd and removing symlink" - rm -f /dev/arpd - mv -f /var/lib/arpd/arpd /dev/arpd - chown root:root /dev/arpd fi -%postun -if [ "$1" = "0" ]; then - echo "Removing arpd user (UID=40)" - /usr/sbin/userdel arpd -fi - -%clean -rm -rf $RPM_BUILD_ROOT - %files %defattr(644,root,root,755) -%doc *.gz README.html +%doc CHANGES README.html %attr(754,root,root) %{_sbindir}/arpd %attr(754,root,root) /etc/rc.d/init.d/arpd -%dir %attr(750,arpd,root) /var/lib/arpd