dnsmasq/dnsmasq.spec

362 lines
14 KiB
RPMSpec

#
# spec file for package dnsmasq (Version 2.45)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: dnsmasq
Summary: Lightweight, Easy-to-Configure DNS Forwarder and DHCP Server
Version: 2.45
Release: 2
License: GPL v2 or later
Group: Productivity/Networking/DNS/Servers
Provides: dns_daemon
PreReq: %fillup_prereq %insserv_prereq /bin/mkdir
AutoReqProv: on
Url: http://www.thekelleys.org.uk/dnsmasq/
Source: %{name}-%{version}.tar.bz2
Source1: vendor-files.tar.bz2
Patch1: group_and_isc.diff
Patch2: chuser.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
Dnsmasq is a lightweight, easy-to-configure DNS forwarder and DHCP
server. It is designed to provide DNS and, optionally, DHCP, to a small
network. It can serve the names of local machines that are not in the
global DNS. The DHCP server integrates with the DNS server and allows
machines with DHCP-allocated addresses to appear in DNS with names
configured either in each host or in a central configuration file.
Dnsmasq supports static and dynamic DHCP leases and BOOTP for network
booting of diskless machines.
Authors:
--------
simon@thekelleys.org.uk
%prep
%setup -n dnsmasq-%{version}
%setup -T -D -a1 -n dnsmasq-%{version}
%patch1 -p0
%patch2 -p0
%build
mv po/no.po po/nb.po
export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
%{__make} %{?jobs:-j%jobs}
%pre
if ! /usr/bin/getent passwd dnsmasq >/dev/null; then
/usr/sbin/useradd -r -d /var/lib/empty -s /bin/false -c "dnsmasq" -g nogroup dnsmasq || :
fi
%post
%{fillup_and_insserv dnsmasq}
%preun
%stop_on_removal dnsmasq
%postun
%restart_on_update dnsmasq
%{insserv_cleanup}
%clean
rm -rf %{buildroot}
%install
make install-i18n DESTDIR=$RPM_BUILD_ROOT PREFIX=/usr
install -d -m 755 ${RPM_BUILD_ROOT}/%{_sysconfdir}/init.d
install -d -m 755 ${RPM_BUILD_ROOT}/%{_sysconfdir}/slp.reg.d
install -d -m 755 ${RPM_BUILD_ROOT}/%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services
install -m 755 rc.dnsmasq-suse $RPM_BUILD_ROOT/%{_sysconfdir}/init.d/dnsmasq
ln -sf ../../etc/init.d/dnsmasq $RPM_BUILD_ROOT/usr/sbin/rcdnsmasq
install -m 644 dnsmasq.conf.example $RPM_BUILD_ROOT/%{_sysconfdir}/dnsmasq.conf
install -m 644 dnsmasq.reg $RPM_BUILD_ROOT/%{_sysconfdir}/slp.reg.d/
install -m 644 SuSEFirewall.dnsmasq-dns ${RPM_BUILD_ROOT}/%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/dnsmasq-dns
install -m 644 SuSEFirewall.dnsmasq-dhcp ${RPM_BUILD_ROOT}/%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/dnsmasq-dhcp
%find_lang %{name}
%files -f %{name}.lang
%defattr(-,root,root)
%doc CHANGELOG COPYING FAQ doc.html setup.html dnsmasq.conf.example contrib
%config(noreplace) /%{_sysconfdir}/dnsmasq.conf
%{_sysconfdir}/init.d/dnsmasq
%{_sbindir}/rcdnsmasq
%{_sbindir}/dnsmasq
%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/dnsmasq-dns
%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/dnsmasq-dhcp
%{_sysconfdir}/slp.reg.d/
%attr(0644,root,root) /%{_sysconfdir}/slp.reg.d/dnsmasq.reg
%{_mandir}/man8/dnsmasq.8.gz
%{_mandir}/fr/man8/dnsmasq.8.gz
%{_mandir}/es/man8/dnsmasq.8.gz
%changelog
* Tue Aug 19 2008 ug@suse.de
- init script fixed
* Mon Aug 11 2008 ug@suse.de
- Fix crash when unknown client attempts to renew a DHCP
lease, problem introduced in version 2.43. Thanks to
Carlos Carvalho for help chasing this down.
- Fix potential crash when a host which doesn't have a lease
does DHCPINFORM. Again introduced in 2.43. This bug has
never been reported in the wild.
- Fix crash in netlink code introduced in 2.43. Thanks to
Jean Wolter for finding this.
- Change implementation of min_port to work even if min-port
as large.
- 2.4.45
* Mon Jul 14 2008 ug@suse.de
- This release fixes the DNS spoofing vulnerabilities announced in
CERT VU#800113. It adds source port randomization for communication with
upstream nameservers and replaces the C library PRNG with stronger code. It
makes failure to drop root privileges a hard error (previous versions would
log the error and continue, running as root.) Other changes include an
update to avoid triggering Linux kernel messages about an out-of-date
capabilities ABI, support for NAPTR records, and RFC 5107
server-id-override.
- 2.43
* Thu Jun 19 2008 ug@suse.de
- running as user dnsmasq now (bnc#401643)
* Thu Jun 05 2008 ug@suse.de
* Add --dhcp-alternate-port option. Thanks to Jan Psota for
the suggestion.
* Updated Polish translations - thank to Jan Psota.
* Provide --dhcp-bridge on all BSD variants.
* Define _LARGEFILE_SOURCE which removes an arbitrary 2GB
limit on logfiles. Thanks to Paul Chambers for spotting
the problem.
* Fix RFC3046 agent-id echo code, broken for many
releases. Thanks to Jeremy Laine for spotting the problem
and providing a patch.
* Add --dhcp-scriptuser option.
* Support new capability interface on suitable Linux
kernels, removes "legacy support in use" messages. Thanks
to Jorge Bastos for pointing this out.
* Fix subtle bug in cache code which could cause dnsmasq to
lock spinning CPU in rare circumstances. Thanks to Alex
Chekholko for bug reports and help debugging.
* Support netascii transfer mode for TFTP.
- 2.42
* Wed Feb 13 2008 ug@suse.de
- Allow the DNS function to be completely disabled, by
setting the port to zero "--port=0"
- Fix a bug where NXDOMAIN could be returned for a query
even if the name's value was known for a different query
type.
- Fixed possible crash bug in DBus IPv6 code
- Add --dhcp-no-override option
- Add --tftp-port-range option
- Add --stop-dns-rebind option
- Added --all-servers option
- Add --dhcp-optsfile option
- Fixed broken --alias functionality
- Add --dhcp-match flag
- Added --dhcp-broadcast, to force broadcast replies
- multiple bugs fixed
- 2.41
* Fri Jan 04 2008 crrodriguez@suse.de
- bzip tarball
- use find_lang macro.
* Thu Dec 06 2007 ug@suse.de
- version 2.40
- Fix handling of fully-qualified names in --dhcp-host
- Fixed error in manpage
- Fixed misaligned memory access which caused problems on
Blackfin CPUs
- lots of new options (see changelog for details)
* Wed May 02 2007 ug@suse.de
- version 2.39
- names like "localhost." in /etc/hosts with trailing period
are treated as fully-qualified.
- Tolerate and ignore spaces around commas in the
configuration file in all circumstances
- /a is no longer a valid escape in quoted strings.
- Added symbolic DHCP option names
- Overhauled the log code
- --log-facility can now take a file-name
- Added --log-dhcp flag
- Added 127.0.0.0/8 and 169.254.0.0/16 to the address
ranges affected by --bogus-priv
- Fixed failure of TFTP server with --listen-address
- Added --dhcp-circuitid and --dhcp-remoteid for RFC3046
- Added --dhcp-subscrid for RFC3993 subscriber-id relay
- Corrected garbage-collection
- Allow absolute paths for TFTP transfers even when
--tftp-root is set, as long as the path matches the root
- Updated translations
- Added --interface-name option
* Thu Mar 15 2007 ug@suse.de
- SuSEFirewall service files fixed and enhanced
* Tue Mar 06 2007 ug@suse.de
- SuSEFirewall service file added
* Tue Feb 13 2007 ug@suse.de
- version 2.38
Don't send length zero DHCP option 43 and cope with
encapsulated options whose total length exceeds 255 octets
by splitting them into multiple option 43 pieces.
Avoid queries being retried forever when --strict-order is
set and an upstream server returns a SERVFAIL
error. Thanks to Johannes Stezenbach for spotting this.
Fix BOOTP support, broken in version 2.37.
Add example dhcp-options for Etherboot.
Add \e (for ASCII ESCape) to the set of valid escapes
in config-file strings.
Added --dhcp-option-force flag and examples in the
configuration file which use this to control PXELinux.
Added --tftp-no-blocksize option.
Set netid tag "bootp" when BOOTP (rather than DHCP) is in
use. This makes it easy to customise which options are
sent to BOOTP clients. (BOOTP allows only 64 octets for
options, so it can be necessary to trim things.)
Fix rare hang in cache code, a 2.37 regression. This
probably needs an infinite DHCP lease and some bad luck to
trigger. Thanks to Detlef Reichelt for bug reports and
testing.
* Mon Feb 05 2007 ug@suse.de
Add better support for RFC-2855 DHCP-over-firewire and RFC
-4390 DHCP-over-InfiniBand. A good suggestion from Karl Svec.
Some efficiency tweaks to the cache code for very large
/etc/hosts files. Should improve reverse (address->name)
lookups and garbage collection. Thanks to Jan 'RedBully'
Seiffert for input on this.
Fix regression in 2.36 which made bogus-nxdomain
and DNS caching unreliable. Thanks to Dennis DeDonatis
and Jan Seiffert for bug reports.
Make DHCP encapsulated vendor-class options sane. Be
warned that some conceivable existing configurations
using these may break, but they work in a much
simpler and more logical way now. Prepending
"vendor:<client-id>" to an option encapsulates it
in option 43, and the option is sent only if the
client-supplied vendor-class substring-matches with
the given client-id. Thanks to Dennis DeDonatis for
help with this.
Apply patch from Jan Seiffert to tidy up tftp.c
Add support for overloading the filename and servername
fields in DHCP packet. This gives extra option-space when
these fields are not being used or with a modern client
which supports moving them into options.
Added a LIMITS section to the man-page, with guidance on
maximum numbers of clients, file sizes and tuning.
- version 2.37
* Mon Jan 22 2007 ug@suse.de
- version 2.36
* Mon Oct 30 2006 ug@suse.de
- version 2.35
- better performance on parsing huge /etc/hosts files
* Tue Oct 17 2006 ug@suse.de
- version 2.34
- Tweak network-determination code
- Improve handling of high DNS loads
- Fixed intermittent infinite loop when re-reading
/etc/ethers after SIGHUP
- Provide extra information to the lease-change script
- Run the lease change script as root
- Add contrib/port-forward/* which is a script to set up
port-forwards using the DHCP lease-change script
- Fix unaligned access problem
- Fixed problem with DHCPRELEASE
- Updated French translation
- Upgraded the name hash function in the DNS cache
- Added --clear-on-reload flag
- Treat a nameserver address of 0.0.0.0 as "nothing"
- Added Webmin module in contrib/webmin
* Fri Aug 11 2006 ug@suse.de
- init-script more LSB conform
patch by Matthias Andree
* Mon Aug 07 2006 ug@suse.de
- version 2.33
- Provide extra information to lease-change script
- Fix breakage with some DHCP relay implementations
- compilation warning fixes
- minor DNS and DHCP fixes and enhancements
* Mon Jun 12 2006 ug@suse.de
- version 2.32
* Wed May 17 2006 ug@suse.de
- version 2.31
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Mon Jan 23 2006 ug@suse.de
- Fixed crash when attempting to send a DHCP NAK to a host
which believes it has a lease on an unknown network.
That bug was invented in 2.25
- version 2.26
* Mon Jan 16 2006 ug@suse.de
- moved dnsmasq.no to dnsmasq.np
see bug #42748
* Mon Jan 16 2006 ug@suse.de
- version update to 2.25
* Mon Nov 28 2005 ug@suse.de
- version update to 2.24
* Mon Oct 17 2005 ug@suse.de
- "-fno-strict-aliasing" now
* Wed Oct 12 2005 ug@suse.de
- version update to 2.23
* Wed Aug 24 2005 ug@suse.de
- Fix DNS query forwarding for empty queries and forward
queries even when the recursion-desired bit is clear.
This allows "dig +trace" to work
Bug #106717
* Fri Aug 05 2005 cthiel@suse.de
- update to version 2.22
* Wed Apr 13 2005 mls@suse.de
- fix slp registration
* Mon Jan 24 2005 ug@suse.de
- version update from 2.19 to 2.20
- Allow more than one instance of dnsmasq to run on a
machine, each providing DHCP service on a different
interface
- Protect against overlong names and overlong
labels in configuration and from DHCP.
- Fix interesting corner case in CNAME handling. This occurs
when a CNAME has a target which "shadowed" by a name in
/etc/hosts or from DHCP
- Added support for SRV records
- Fixed sign confusion in the vendor-id matching code
- Added the ability to match the netid tag in a
dhcp-range
- Added preference values for MX records
- Added the --localise-queries option.
* Fri Jan 21 2005 ug@suse.de
- version update to 2.19
- minor fixes in IPV6 and DHCP Code
* Fri Nov 26 2004 ug@suse.de
- version update to 2.18
- lots of DHCP fixes
- some IPV6 fixes
* Fri Nov 19 2004 ug@suse.de
- SLP support via /etc/slp.reg.d/dnsmasq.reg file added
* Fri Aug 20 2004 ug@suse.de
- version update from 2.11 to 2.13
- Added extra checks to ensure that DHCP created DNS entries
cannot generate multiple DNS address->name entries.
- Don't set the the filterwin2k option in the example config
file and add warnings that is breaks Kerberos.
- Log types of incoming queries as well as source and domain.
- Log NODATA replies generated as a result of the filterwin2k
option.
* Mon Aug 09 2004 ug@suse.de
- version update from 2.8 to 2.11
* Tue Jun 01 2004 ug@suse.de
- chgrp to "dialout" and not to "dip"
- backward compatibility turned off
* Mon May 24 2004 ug@suse.de
- added to distribution