Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 409529 - net-dns/bind-9.9.0 crashed while while rndc reload
Summary: net-dns/bind-9.9.0 crashed while while rndc reload
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Server (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: BIND Maintainers (DISABLED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-03-24 12:04 UTC by Drunkard Zhang
Modified: 2012-05-21 23:51 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
Work around the crash. (bind-9.9.0-nocrash.patch,1.12 KB, patch)
2012-03-24 12:04 UTC, Drunkard Zhang
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Drunkard Zhang 2012-03-24 12:04:14 UTC
Created attachment 306527 [details, diff]
Work around the crash.

net-dns/bind-9.9.0 will crash if there's at least 2 views configured, and the latter one used the NXDOMAIN redirect functionality.

Reproducible: Always

Steps to Reproduce:
1. emerge bind-9.9.0
2. Start bind using below test config:
# vim: set filetype=named.conf autoindent ts=4 sw=4:
options {
	directory "/var/";
	pid-file "file-named.pid";
	dump-file "file-dump";
	recursion yes;
};

view "area-1" {
	match-clients { 1.1.1.1; };
	zone "." {
		type hint;
		file "named.cache";
	};
};
view "area-2" {
	match-clients { 2.2.2.2; };
	zone "." {
		type hint;
		file "named.cache";
	};
	zone "." {
		type redirect;
		file "nxdomain";
	};
};

And the file "nxdomain" content:
$TTL 60
@	IN	SOA	localhost. admin.localhost. (
				2012032100	; serial
				1D	; refresh
				1H	; retry
				1W	; expire
				3H )	; minimum
@	IN	NS	localhost.
*.	IN	A	127.0.0.1

And start command is: named -u named -c /etc/named.conf -t /path/of/chroot/ -g
3. Reload config: killall -HUP named

Actual Results:
[snipped]
24-Mar-2012 20:01:00.659 received SIGHUP signal to reload zones
24-Mar-2012 20:01:00.659 loading configuration from '/etc/named.conf'
24-Mar-2012 20:01:00.661 using default UDP/IPv4 port range: [1024, 65535]
24-Mar-2012 20:01:00.661 using default UDP/IPv6 port range: [1024, 65535]
24-Mar-2012 20:01:00.664 sizing zone task pool based on 3 zones
24-Mar-2012 20:01:00.678 open: /etc/bind/rndc.key: file not found
24-Mar-2012 20:01:00.678 couldn't add command channel 127.0.0.1#953: file not found
24-Mar-2012 20:01:00.678 open: /etc/bind/rndc.key: file not found
24-Mar-2012 20:01:00.678 couldn't add command channel ::1#953: file not found
24-Mar-2012 20:01:00.678 ignoring config file logging statement due to -g option
24-Mar-2012 20:01:00.679 reloading configuration succeeded
24-Mar-2012 20:01:00.679 server.c:5305: REQUIRE((&zl->refs)->refs == 0) failed
24-Mar-2012 20:01:00.679 exiting (due to assertion failure)
Aborted (core dumped)

This a upstream bug, maybe known as ISC-Bugs #28606, I post here just in case some fellows need it.


emerge --info =net-dns/bind-9.9.0
Portage 2.3.3-r2 (default/linux/amd64/2008.0/desktop, gcc-4.6.2, glibc-2.13-r4, 3.3.0-rc7+ x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-3.3.0-rc7+-x86_64-AMD_A8-3500M_APU_with_Radeon-tm-_HD_Graphics-with-gentoo-2.1.8
Timestamp of tree: Sat, 24 Mar 2012 06:00:01 +0000
app-shells/bash:          4.2_p20
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.3_pre20120318, 3.2.3_pre20120318
dev-util/cmake:           2.8.7-r5
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.1.8-r3
sys-apps/openrc:          0.9.9.3::pentoo
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.11.3
sys-devel/binutils:       2.21.1-r1
sys-devel/gcc:            4.6.2
sys-devel/gcc-config:     1.5
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r3
sys-kernel/linux-headers: 2.6.39 (virtual/os-headers)
sys-libs/glibc:           2.13-r4
Repositories: gentoo sunrise science gentoo-zh ltsp pure-funtoo hacking-gentoo pentoo
Installed sets: 
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-mtune=amdfam10 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-mtune=amdfam10 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distlocks ebuild-locks fixlafiles mini-manifest news nodoc parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="http://mirrors.163.com/gentoo/ http://mirrors.sohu.com/gentoo/ http://gentoo.gwbnsh.net.cn/ "
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--as-needed"
LINGUAS="zh_CN zh_TW zh en ru de bo ug"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/sunrise /var/lib/layman/science /var/lib/layman/gentoo-zh /var/lib/layman/ltsp /var/lib/layman/pure-funtoo /var/lib/layman/hacking-gentoo /var/lib/layman/pentoo"
SYNC="git://github.com/funtoo/portage-mini-2011.git"
SYNC_USER="root"
USE="3dnow 3dnowext X a52 aac acl acpi aio alac alsa amd64 bash-completion berkdb branding bzip2 cairo cdda cjk cli consolekit cracklib crypt cups cxx dbus djvu dri dts dvd dvdr dvdread emboss encode exif fam ffmpeg firefox flac fortran gconf gdbm gdu geoip gif gimp gmp gnome gpm gstreamer gtk gtk3 iconv icu idn introspection ipv6 jpeg jpeg2k lame lcms libnotify libsamplerate mad mmap mmx mmxext mng modules mp3 mp4 mpeg mplayer mudflap multilib ncurses nls nptl nptlonly ogg opengl openmp pam pango pch pcre pdf perl png postgres ppds pppd pulseaudio python readline sdl session smp sse sse2 ssl startup-notification svg sysfs theora threads tiff truetype udev unicode usb vim-syntax vorbis wavpack wifi x264 xcb xft xinerama xml xorg xulrunner xv xvid xvmc zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse synaptics evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="zh_CN zh_TW zh en ru de bo ug" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fglrx radeon" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, SYNC_UMASK

=================================================================
                        Package Settings
=================================================================

net-dns/bind-9.9.0 was built with the following:
USE="caps geoip idn ipv6 (multilib) rpz ssl threads urandom -berkdb -dlz -doc -gost -gssapi -ldap -mysql -odbc -pkcs11 -postgres -sdb-ldap (-selinux) -static-libs -xml"


The patch(by Mark Andrews) works for me, hopes good for you too.
Comment 1 Christian Ruppert (idl0r) gentoo-dev 2012-05-21 23:51:09 UTC
Fixed in bind-9.9.1. Thanks!