bin/182360: nslookup emits SIGSEGV when Ctrl-D (EOF) pressed

Jeremy Chadwick jdc at koitsu.org
Tue Sep 24 22:30:02 UTC 2013


>Number:         182360
>Category:       bin
>Synopsis:       nslookup emits SIGSEGV when Ctrl-D (EOF) pressed
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Sep 24 22:30:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Jeremy Chadwick
>Release:        FreeBSD 9.2-PRERELEASE amd64
>Organization:
>Environment:
System: FreeBSD icarus.home.lan 9.2-PRERELEASE FreeBSD 9.2-PRERELEASE #0 r255608: Mon Sep 16 00:47:48 PDT 2013 root at icarus.home.lan:/usr/obj/usr/src/sys/X7SBA_RELENG_9_amd64 amd64
>Description:
	nslookup crashes (SIGSEGV/sig11) when Ctrl-D (EOF) is entered any
	time during the interactive prompt.

	I can reproduce this on two completely separate amd64 9.2-PRERELEASE
	systems (one is r255608, another is r255864), on completely different
	hardware.

	Not sure if this issue is caused by introduced bugs/changes in libedit,
	or in recent versions of BIND that have been imported.  I do not build
	my systems' /lib with debug symbols enabled so tracking this down is
	something someone with debug symbols will need to do (unless they can
	look at the code and know what's wrong).

	If one thinks this is a system configuration issue, I can provide
	/etc/make.conf and /etc/src.conf (the only two relevant file I can think
	of) if asked.

	Validation and a stack trace is below:

$ nslookup
> ^DSegmentation fault: 11 (core dumped)

$ ls -l nslookup.core
-rw-------    1 jdc       users     13996032 Sep 24 15:16 nslookup.core

$ gdb /usr/bin/nslookup nslookup.core
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "amd64-marcel-freebsd"...(no debugging symbols found)...
Core was generated by `nslookup'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /lib/libedit.so.7...(no debugging symbols found)...done.
Loaded symbols for /lib/libedit.so.7
Reading symbols from /lib/libcrypto.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libcrypto.so.6
Reading symbols from /lib/libthr.so.3...(no debugging symbols found)...done.
Loaded symbols for /lib/libthr.so.3
Reading symbols from /lib/libgcc_s.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/libgcc_s.so.1
Reading symbols from /lib/libc.so.7...(no debugging symbols found)...done.
Loaded symbols for /lib/libc.so.7
Reading symbols from /lib/libncurses.so.8...(no debugging symbols found)...done.
Loaded symbols for /lib/libncurses.so.8
Reading symbols from /libexec/ld-elf.so.1...(no debugging symbols found)...done.
Loaded symbols for /libexec/ld-elf.so.1
#0  0x00000008014e61ab in strlen () from /lib/libc.so.7
[New Thread 801c08000 (LWP 101041/nslookup)]
[New Thread 801c07c00 (LWP 101040/nslookup)]
[New Thread 801c07800 (LWP 101039/nslookup)]
[New Thread 801c07400 (LWP 100757/nslookup)]
(gdb) bt
#0  0x00000008014e61ab in strlen () from /lib/libc.so.7
#1  0x0000000801461a7e in strdup () from /lib/libc.so.7
#2  0x00000008009f3dfb in history () from /lib/libedit.so.7
#3  0x00000008009f3735 in history () from /lib/libedit.so.7
#4  0x00000008009e1fbf in add_history () from /lib/libedit.so.7
#5  0x000000000040eacd in getinput ()
#6  0x000000000054df38 in run ()
#7  0x0000000800fb9e10 in pthread_getprio () from /lib/libthr.so.3
#8  0x0000000000000000 in ?? ()
(gdb)
	
>How-To-Repeat:
	1. Run nslookup
	2. Press Ctrl-D (EOF)
>Fix:
	


>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list