- unbound-1.1.0-log_open.patch
- make sure log is opened before chroot call - tracked as http://www.nlnetlabs.nl/bugs/show_bug.cgi?id=219 - removed /dev/log and /var/run/unbound and /etc/resolv.conf from chroot, not needed - don't mount files in chroot, it causes problems during updates - fixed typo in default config file - removed old 1.0.2 version from sources
This commit is contained in:
parent
962e2aa635
commit
39b47dbaf1
@ -1 +1 @@
|
|||||||
unbound-1.0.2.tar.gz
|
unbound-1.1.0.tar.gz
|
||||||
|
1
sources
1
sources
@ -1,2 +1 @@
|
|||||||
01b08a9c0d24be981de64b6e4e25ecbe unbound-1.0.2.tar.gz
|
|
||||||
f1c8110ed62e3aa0423e24b6c0f3a9c4 unbound-1.1.0.tar.gz
|
f1c8110ed62e3aa0423e24b6c0f3a9c4 unbound-1.1.0.tar.gz
|
||||||
|
@ -345,7 +345,7 @@ remote-control:
|
|||||||
# Enable remote control with unbound-control(8) here.
|
# Enable remote control with unbound-control(8) here.
|
||||||
# set up the keys and certificates with unbound-control-setup.
|
# set up the keys and certificates with unbound-control-setup.
|
||||||
# reqiured for munin monitoring plugin
|
# reqiured for munin monitoring plugin
|
||||||
control-enable:yes
|
control-enable: yes
|
||||||
|
|
||||||
# what interfaces are listened to for remote control.
|
# what interfaces are listened to for remote control.
|
||||||
# give 0.0.0.0 and ::0 to listen to all interfaces.
|
# give 0.0.0.0 and ::0 to listen to all interfaces.
|
||||||
|
16
unbound.init
16
unbound.init
@ -43,15 +43,7 @@ start() {
|
|||||||
|
|
||||||
echo -n $"Starting unbound: "
|
echo -n $"Starting unbound: "
|
||||||
|
|
||||||
if [ ! -e ${rootdir}/etc/resolv.conf ] || /usr/bin/cmp -s /etc/resolv.conf ${rootdir}/etc/resolv.conf; then
|
[ -s ${rootdir}/etc/localtime ] || cp -fp /etc/localtime ${rootdir}/etc/localtime
|
||||||
cp -fp /etc/resolv.conf ${rootdir}/etc/resolv.conf
|
|
||||||
fi;
|
|
||||||
if [ ! -e ${rootdir}/etc/localtime ] || /usr/bin/cmp -s /etc/localtime ${rootdir}/etc/localtime; then
|
|
||||||
cp -fp /etc/localtime ${rootdir}/etc/localtime
|
|
||||||
fi;
|
|
||||||
mount --bind -n /dev/log ${rootdir}/dev/log >/dev/null 2>&1;
|
|
||||||
mount --bind -n /dev/random ${rootdir}/dev/random >/dev/null 2>&1;
|
|
||||||
mount --bind -n /var/run/unbound ${rootdir}/var/run/unbound >/dev/null 2>&1;
|
|
||||||
|
|
||||||
# if not running, start it up here
|
# if not running, start it up here
|
||||||
daemon $exec
|
daemon $exec
|
||||||
@ -66,12 +58,6 @@ stop() {
|
|||||||
killproc -p $pidfile unbound
|
killproc -p $pidfile unbound
|
||||||
retval=$?
|
retval=$?
|
||||||
[ $retval -eq 0 ] && rm -f $lockfile
|
[ $retval -eq 0 ] && rm -f $lockfile
|
||||||
for mountfile in /dev/log /dev/random /etc/localtime /etc/resolv.conf /var/run/unbound
|
|
||||||
do
|
|
||||||
if egrep -q '^/[^[:space:]]+[[:space:]]+'${rootdir}''${mountfile}'' /proc/mounts; then
|
|
||||||
umount ${rootdir}$mountfile >/dev/null 2>&1
|
|
||||||
fi;
|
|
||||||
done
|
|
||||||
echo
|
echo
|
||||||
}
|
}
|
||||||
|
|
||||||
|
65
unbound.spec
65
unbound.spec
@ -1,7 +1,9 @@
|
|||||||
|
%define rootdir %{_localstatedir}/lib/%{name}
|
||||||
|
|
||||||
Summary: Validating, recursive, and caching DNS(SEC) resolver
|
Summary: Validating, recursive, and caching DNS(SEC) resolver
|
||||||
Name: unbound
|
Name: unbound
|
||||||
Version: 1.1.0
|
Version: 1.1.0
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
License: BSD
|
License: BSD
|
||||||
Url: http://www.nlnetlabs.nl/unbound/
|
Url: http://www.nlnetlabs.nl/unbound/
|
||||||
Source: http://www.unbound.net/downloads/%{name}-%{version}.tar.gz
|
Source: http://www.unbound.net/downloads/%{name}-%{version}.tar.gz
|
||||||
@ -20,6 +22,8 @@ Requires(pre): shadow-utils
|
|||||||
# Is this obsolete?
|
# Is this obsolete?
|
||||||
#Provides: caching-nameserver
|
#Provides: caching-nameserver
|
||||||
|
|
||||||
|
Patch0: unbound-1.1.0-log_open.patch
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Unbound is a validating, recursive, and caching DNS(SEC) resolver.
|
Unbound is a validating, recursive, and caching DNS(SEC) resolver.
|
||||||
|
|
||||||
@ -61,23 +65,25 @@ Contains libraries used by the unbound server and client applications
|
|||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
|
||||||
|
%patch0 -p1 -b .log_open
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%configure --with-ldns= --with-libevent --with-pthreads --with-ssl \
|
%configure --with-ldns= --with-libevent --with-pthreads --with-ssl \
|
||||||
--disable-rpath --enable-debug --disable-static \
|
--disable-rpath --enable-debug --disable-static \
|
||||||
--with-run-dir=%{_localstatedir}/lib/%{name}\
|
--with-run-dir=%{rootdir} \
|
||||||
--with-conf-file=%{_localstatedir}/lib/%{name}/unbound.conf \
|
--with-conf-file=%{rootdir}/unbound.conf \
|
||||||
--with-pidfile=%{_localstatedir}/run/%{name}/%{name}.pid
|
--with-pidfile=%{_localstatedir}/run/%{name}/%{name}.pid
|
||||||
%{__make} CFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE" QUIET=no %{?_smp_mflags}
|
%{__make} CFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE" QUIET=no %{?_smp_mflags}
|
||||||
|
|
||||||
%install
|
%install
|
||||||
rm -rf %{buildroot}
|
rm -rf %{buildroot}
|
||||||
%{__make} DESTDIR=%{buildroot} install
|
%{__make} DESTDIR=%{buildroot} install
|
||||||
install -d 0755 %{buildroot}%{_localstatedir}/lib/%{name}
|
install -d 0755 %{buildroot}%{rootdir}
|
||||||
install -d 0755 %{buildroot}%{_initrddir}
|
install -d 0755 %{buildroot}%{_initrddir}
|
||||||
#install -m 0755 contrib/unbound.init %{buildroot}%{_initrddir}/unbound
|
#install -m 0755 contrib/unbound.init %{buildroot}%{_initrddir}/unbound
|
||||||
install -m 0755 %{SOURCE1} %{buildroot}%{_initrddir}/unbound
|
install -m 0755 %{SOURCE1} %{buildroot}%{_initrddir}/unbound
|
||||||
#overwrite stock unbound.conf with our own
|
#overwrite stock unbound.conf with our own
|
||||||
install -m 0755 %{SOURCE2} %{buildroot}%{_localstatedir}/lib/%{name}
|
install -m 0755 %{SOURCE2} %{buildroot}%{rootdir}
|
||||||
install -d 0755 %{buildroot}%{_sysconfdir}/munin/plugin-conf.d
|
install -d 0755 %{buildroot}%{_sysconfdir}/munin/plugin-conf.d
|
||||||
install -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/munin/plugin-conf.d/unbound
|
install -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/munin/plugin-conf.d/unbound
|
||||||
install -d 0755 %{buildroot}%{_datadir}/munin/plugins/
|
install -d 0755 %{buildroot}%{_datadir}/munin/plugins/
|
||||||
@ -85,19 +91,14 @@ install -m 0755 contrib/unbound_munin_ %{buildroot}%{_datadir}/munin/plugins/unb
|
|||||||
|
|
||||||
# add symbolic link from /etc/unbound.conf -> /var/unbound/unbound.conf
|
# add symbolic link from /etc/unbound.conf -> /var/unbound/unbound.conf
|
||||||
|
|
||||||
( cd %{buildroot}%{_sysconfdir}/ ; ln -s ..%{_localstatedir}/lib/unbound/unbound.conf )
|
( cd %{buildroot}%{_sysconfdir}/ ; ln -s ..%{rootdir}/unbound.conf )
|
||||||
# remove static library from install (fedora packaging guidelines)
|
# remove static library from install (fedora packaging guidelines)
|
||||||
rm -rf %{buildroot}%{_libdir}/*.la
|
rm -rf %{buildroot}%{_libdir}/*.la
|
||||||
|
|
||||||
# The chroot needs /dev/log, /dev/random, /etc/resolv.conf and /etc/localtime
|
# The chroot needs /dev/random and /etc/localtime
|
||||||
# but the init script uses mount --bind, so just create empty files
|
# but the init script uses mount --bind, so just create empty files
|
||||||
mkdir -p %{buildroot}%{_localstatedir}/lib/unbound/etc \
|
mkdir -p %{buildroot}%{rootdir}/{dev,etc}
|
||||||
%{buildroot}%{_localstatedir}/lib/unbound/dev
|
touch %{buildroot}%{rootdir}/{etc/localtime,dev/random}
|
||||||
echo "Used for mount --bind in initscript" > %{buildroot}%{_localstatedir}/lib/unbound/etc/resolv.conf
|
|
||||||
echo "Used for mount --bind in initscript" > %{buildroot}%{_localstatedir}/lib/unbound/etc/localtime
|
|
||||||
echo "Used for mount --bind in initscript" > %{buildroot}%{_localstatedir}/lib/unbound/dev/log
|
|
||||||
echo "Used for mount --bind in initscript" > %{buildroot}%{_localstatedir}/lib/unbound/dev/random
|
|
||||||
mkdir -p %{buildroot}%{_localstatedir}/lib/unbound/var/run/unbound
|
|
||||||
mkdir -p %{buildroot}%{_localstatedir}/run/unbound
|
mkdir -p %{buildroot}%{_localstatedir}/run/unbound
|
||||||
|
|
||||||
%clean
|
%clean
|
||||||
@ -107,18 +108,15 @@ rm -rf ${RPM_BUILD_ROOT}
|
|||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
%doc doc/README doc/CREDITS doc/LICENSE doc/FEATURES
|
%doc doc/README doc/CREDITS doc/LICENSE doc/FEATURES
|
||||||
%attr(0755,root,root) %{_initrddir}/%{name}
|
%attr(0755,root,root) %{_initrddir}/%{name}
|
||||||
# the chroot env
|
|
||||||
%attr(0755,root,root) %dir %{_localstatedir}/lib/%{name}
|
|
||||||
%attr(0755,unbound,unbound) %dir %{_localstatedir}/run/%{name}
|
%attr(0755,unbound,unbound) %dir %{_localstatedir}/run/%{name}
|
||||||
%attr(0755,root,root) %dir %{_localstatedir}/lib/%{name}/dev
|
|
||||||
%attr(0755,root,root) %dir %{_localstatedir}/lib/%{name}/etc
|
|
||||||
%attr(0755,root,root) %dir %{_localstatedir}/lib/%{name}/var
|
|
||||||
%attr(0755,root,root) %dir %{_localstatedir}/lib/%{name}/var/run
|
|
||||||
%attr(0755,root,root) %dir %{_localstatedir}/lib/%{name}/var/run/unbound
|
|
||||||
%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/unbound.conf
|
%attr(0644,root,root) %config(noreplace) %{_sysconfdir}/unbound.conf
|
||||||
%attr(0644,root,root) %config(noreplace) %{_localstatedir}/lib/%{name}/unbound.conf
|
# the chroot env
|
||||||
%attr(0644,root,root) %{_localstatedir}/lib/%{name}/dev/*
|
%attr(0755,root,root) %dir %{rootdir}
|
||||||
%attr(0644,root,root) %{_localstatedir}/lib/%{name}/etc/*
|
%attr(0755,root,root) %dir %{rootdir}/dev
|
||||||
|
%attr(0755,root,root) %dir %{rootdir}/etc
|
||||||
|
%attr(0644,root,root) %config(noreplace) %{rootdir}/unbound.conf
|
||||||
|
%attr(0644,root,root) %ghost %{rootdir}/dev/random
|
||||||
|
%attr(0644,root,root) %ghost %{rootdir}/etc/localtime
|
||||||
%{_sbindir}/*
|
%{_sbindir}/*
|
||||||
%{_mandir}/*/*
|
%{_mandir}/*/*
|
||||||
|
|
||||||
@ -141,20 +139,26 @@ rm -rf ${RPM_BUILD_ROOT}
|
|||||||
%pre
|
%pre
|
||||||
getent group unbound >/dev/null || groupadd -r unbound
|
getent group unbound >/dev/null || groupadd -r unbound
|
||||||
getent passwd unbound >/dev/null || \
|
getent passwd unbound >/dev/null || \
|
||||||
useradd -r -g unbound -d %{_localstatedir}/lib/%{name} -s /sbin/nologin \
|
useradd -r -g unbound -d %{rootdir} -s /sbin/nologin \
|
||||||
-c "Unbound DNS resolver" unbound
|
-c "Unbound DNS resolver" unbound
|
||||||
exit 0
|
exit 0
|
||||||
|
|
||||||
%post
|
%post
|
||||||
/sbin/chkconfig --add %{name}
|
/sbin/chkconfig --add %{name}
|
||||||
|
|
||||||
|
# Add chroot stuff
|
||||||
|
[ -e %{rootdir}/dev/random ] || /bin/mknod %{rootdir}/dev/random c 1 8
|
||||||
|
[ -s %{rootdir}/etc/localtime ] || cp -fp {,%{rootdir}}/etc/localtime
|
||||||
|
|
||||||
%post libs -p /sbin/ldconfig
|
%post libs -p /sbin/ldconfig
|
||||||
|
|
||||||
|
|
||||||
%preun
|
%preun
|
||||||
if [ $1 -eq 0 ]; then
|
if [ "$1" -eq 0 ]; then
|
||||||
/sbin/service %{name} stop >/dev/null 2>&1
|
/sbin/service %{name} stop >/dev/null 2>&1
|
||||||
/sbin/chkconfig --del %{name}
|
/sbin/chkconfig --del %{name}
|
||||||
|
rm -f %{rootdir}/dev/random
|
||||||
|
rm -f %{rootdir}/etc/localtime
|
||||||
fi
|
fi
|
||||||
|
|
||||||
%postun
|
%postun
|
||||||
@ -165,6 +169,15 @@ fi
|
|||||||
%postun libs -p /sbin/ldconfig
|
%postun libs -p /sbin/ldconfig
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Nov 19 2008 Adam Tkac <atkac redhat com> - 1.1.0-2
|
||||||
|
- unbound-1.1.0-log_open.patch
|
||||||
|
- make sure log is opened before chroot call
|
||||||
|
- tracked as http://www.nlnetlabs.nl/bugs/show_bug.cgi?id=219
|
||||||
|
- removed /dev/log and /var/run/unbound and /etc/resolv.conf from
|
||||||
|
chroot, not needed
|
||||||
|
- don't mount files in chroot, it causes problems during updates
|
||||||
|
- fixed typo in default config file
|
||||||
|
|
||||||
* Fri Nov 14 2008 Paul Wouters <paul@xelerance.com> - 1.1.0-1
|
* Fri Nov 14 2008 Paul Wouters <paul@xelerance.com> - 1.1.0-1
|
||||||
- Updated to version 1.1.0
|
- Updated to version 1.1.0
|
||||||
- Updated unbound.conf's statistics options and remote-control
|
- Updated unbound.conf's statistics options and remote-control
|
||||||
|
Loading…
Reference in New Issue
Block a user