Bug 112386

Summary: yppasswd segmentation fault
Product: [Retired] Red Hat Linux Reporter: Neil McFadyen <nmcfadye>
Component: yp-toolsAssignee: Steve Dickson <steved>
Status: CLOSED CURRENTRELEASE QA Contact: David Lawrence <dkl>
Severity: high Docs Contact:
Priority: high    
Version: 9CC: nmcfadye
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2004-09-01 18:31:36 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Neil McFadyen 2003-12-18 19:13:10 UTC
Description of problem:
redhat 9 setup a nis client 

nsswith.conf set has passwd, group and shadow set to compat
passwd has +:::::: added
group has +::: added
shadow has +:::::::: added
ypcat passwd show passwd map
ypcat shadow.byname only shows up if root (as wanted)
rpcinfo -p server   sees yppasswdd listening

redhat ES 3.0 is nis master - using password and shadow files
password map with x's, shadow.byname with password
yppasswd works on server

Version-Release number of selected component (if applicable):
yp-tools 2.7-5 on redhat 9 client
yp-tools 2.8-1 on redhat ES 3.0 server

How reproducible:
everytime

Steps to Reproduce:
1.login as nis user on client
2. type yppasswd
3. 
  
Actual results:
Segmentation fault (core dumped)

Expected results:
enter existing password

Additional info:

Comment 1 Neil McFadyen 2003-12-18 19:15:18 UTC
strace yppasswd
strace yppasswd
execve("/usr/bin/yppasswd", ["yppasswd"], [/* 54 vars */]) = 0
uname({sys="Linux", node="node1", ...}) = 0
brk(0)                                  = 0x804c278
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40016000
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or 
directory)
open("/opt/intel/compiler70/ia32/lib/tls/i686/mmx/libcrypt.so.1", 
O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/opt/intel/compiler70/ia32/lib/tls/i686/mmx", 0xbfffd970) = -
1 ENOENT (No such file or directory)
open("/opt/intel/compiler70/ia32/lib/tls/i686/libcrypt.so.1", 
O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/opt/intel/compiler70/ia32/lib/tls/i686", 0xbfffd970) = -1 
ENOENT (No such file or directory)
open("/opt/intel/compiler70/ia32/lib/tls/mmx/libcrypt.so.1", 
O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/opt/intel/compiler70/ia32/lib/tls/mmx", 0xbfffd970) = -1 
ENOENT (No such file or directory)
open("/opt/intel/compiler70/ia32/lib/tls/libcrypt.so.1", O_RDONLY) = -
1 ENOENT (No such file or directory)
stat64("/opt/intel/compiler70/ia32/lib/tls", 0xbfffd970) = -1 ENOENT 
(No such file or directory)
open("/opt/intel/compiler70/ia32/lib/i686/mmx/libcrypt.so.1", 
O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/opt/intel/compiler70/ia32/lib/i686/mmx", 0xbfffd970) = -1 
ENOENT (No such file or directory)
open("/opt/intel/compiler70/ia32/lib/i686/libcrypt.so.1", O_RDONLY) 
= -1 ENOENT (No such file or directory)
stat64("/opt/intel/compiler70/ia32/lib/i686", 0xbfffd970) = -1 ENOENT 
(No such file or directory)
open("/opt/intel/compiler70/ia32/lib/mmx/libcrypt.so.1", O_RDONLY) = -
1 ENOENT (No such file or directory)
stat64("/opt/intel/compiler70/ia32/lib/mmx", 0xbfffd970) = -1 ENOENT 
(No such file or directory)
open("/opt/intel/compiler70/ia32/lib/libcrypt.so.1", O_RDONLY) = -1 
ENOENT (No such file or directory)
stat64("/opt/intel/compiler70/ia32/lib", {st_mode=S_IFDIR|0777, 
st_size=4096, ...}) = 0
open("/usr/pgi/linux86/lib/tls/i686/mmx/libcrypt.so.1", O_RDONLY) = -
1 ENOENT (No such file or directory)
stat64("/usr/pgi/linux86/lib/tls/i686/mmx", 0xbfffd970) = -1 ENOENT 
(No such file or directory)
open("/usr/pgi/linux86/lib/tls/i686/libcrypt.so.1", O_RDONLY) = -1 
ENOENT (No such file or directory)
stat64("/usr/pgi/linux86/lib/tls/i686", 0xbfffd970) = -1 ENOENT (No 
such file or directory)
open("/usr/pgi/linux86/lib/tls/mmx/libcrypt.so.1", O_RDONLY) = -1 
ENOENT (No such file or directory)
stat64("/usr/pgi/linux86/lib/tls/mmx", 0xbfffd970) = -1 ENOENT (No 
such file or directory)
open("/usr/pgi/linux86/lib/tls/libcrypt.so.1", O_RDONLY) = -1 ENOENT 
(No such file or directory)
stat64("/usr/pgi/linux86/lib/tls", 0xbfffd970) = -1 ENOENT (No such 
file or directory)
open("/usr/pgi/linux86/lib/i686/mmx/libcrypt.so.1", O_RDONLY) = -1 
ENOENT (No such file or directory)
stat64("/usr/pgi/linux86/lib/i686/mmx", 0xbfffd970) = -1 ENOENT (No 
such file or directory)
open("/usr/pgi/linux86/lib/i686/libcrypt.so.1", O_RDONLY) = -1 ENOENT 
(No such file or directory)
stat64("/usr/pgi/linux86/lib/i686", 0xbfffd970) = -1 ENOENT (No such 
file or directory)
open("/usr/pgi/linux86/lib/mmx/libcrypt.so.1", O_RDONLY) = -1 ENOENT 
(No such file or directory)
stat64("/usr/pgi/linux86/lib/mmx", 0xbfffd970) = -1 ENOENT (No such 
file or directory)
open("/usr/pgi/linux86/lib/libcrypt.so.1", O_RDONLY) = -1 ENOENT (No 
such file or directory)
stat64("/usr/pgi/linux86/lib", 0xbfffd970) = -1 ENOENT (No such file 
or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=66198, ...}) = 0
old_mmap(NULL, 66198, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40017000
close(3)                                = 0
open("/lib/libcrypt.so.1", O_RDONLY)    = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240\t\0"..., 
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=23668, ...}) = 0
old_mmap(NULL, 181312, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 
0x40028000
old_mmap(0x4002d000, 4096, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED, 3, 0x4000) = 0x4002d000
old_mmap(0x4002e000, 156736, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4002e000
close(3)                                = 0
open("/opt/intel/compiler70/ia32/lib/libnsl.so.1", O_RDONLY) = -1 
ENOENT (No such file or directory)
open("/lib/libnsl.so.1", O_RDONLY)      = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0p<\0\000"..., 
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=91604, ...}) = 0
old_mmap(NULL, 85184, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 
0x40055000
old_mmap(0x40067000, 4096, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED, 3, 0x11000) = 0x40067000
old_mmap(0x40068000, 7360, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40068000
close(3)                                = 0
open("/opt/intel/compiler70/ia32/lib/libc.so.6", O_RDONLY) = -1 
ENOENT (No such file or directory)
open("/lib/tls/libc.so.6", O_RDONLY)    = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`V\1B4\0"..., 
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1531064, ...}) = 0
old_mmap(0x42000000, 1257224, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) 
= 0x42000000
old_mmap(0x4212e000, 12288, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED, 3, 0x12e000) = 0x4212e000
old_mmap(0x42131000, 7944, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x42131000
close(3)                                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4006a000
set_thread_area({entry_number:-1 -> 6, base_addr:0x4006a280, 
limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, 
limit_in_pages:1, seg_not_present:0, useable:1}) = 0
munmap(0x40017000, 66198)               = 0
brk(0)                                  = 0x804c278
brk(0x804d278)                          = 0x804d278
brk(0)                                  = 0x804d278
brk(0x804e000)                          = 0x804e000
time(NULL)                              = 1071774720
uname({sys="Linux", node="node1", ...}) = 0
open("/var/yp/binding/maeng2.2", O_RDONLY) = 3
readv(3, [{"\377\377", 2}, {"\1\0\0\0\206u\260\21\3\'\0\0", 12}], 2) 
= 14
brk(0)                                  = 0x804e000
brk(0x8051000)                          = 0x8051000
gettimeofday({1071774720, 778516}, NULL) = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 4
getpid()                                = 2019
bind(4, {sa_family=AF_INET, sin_port=htons(923), sin_addr=inet_addr
("0.0.0.0")}, 16) = -1 EACCES (Permission denied)
ioctl(4, FIONBIO, [1])                  = 0
setsockopt(4, SOL_IP, IP_RECVERR, [1], 4) = 0
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
close(3)                                = 0
sendto(4, "p|\3360\0\0\0\0\0\0\0\2\0\1\206\244\0\0\0\2\0\0\0\t\0
\0"..., 72, 0, {sa_family=AF_INET, sin_port=htons(807), 
sin_addr=inet_addr("134.117.176.17")}, 16) = 72
poll([{fd=4, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
recvfrom(4, "p|\3360\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\1"..., 8800, 0, {sa_family=AF_INET, sin_port=htons(807), 
sin_addr=inet_addr("134.117.176.17")}, [16]) = 56
close(4)                                = 0
gettimeofday({1071774720, 779978}, NULL) = 0
getpid()                                = 2019
open("/etc/resolv.conf", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=115, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -
1, 0) = 0x40017000
read(3, "search carleton.ca\ndomain mae.ca"..., 4096) = 115
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x40017000, 4096)                = 0
socket(PF_UNIX, SOCK_STREAM, 0)         = 3
connect(3, {sa_family=AF_UNIX, path="/var/run/.nscd_socket"}, 110) = -
1 ENOENT (No such file or directory)
close(3)                                = 0
open("/etc/nsswitch.conf", O_RDONLY)    = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=1774, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -
1, 0) = 0x40017000
read(3, "#\n# /etc/nsswitch.conf\n#\n# An ex"..., 4096) = 1774
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x40017000, 4096)                = 0
open("/opt/intel/compiler70/ia32/lib/libnss_files.so.2", O_RDONLY) = -
1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=66198, ...}) = 0
old_mmap(NULL, 66198, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40017000
close(3)                                = 0
open("/lib/libnss_files.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20\35\0"..., 
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=52472, ...}) = 0
old_mmap(NULL, 47068, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 
0x4006b000
old_mmap(0x40076000, 4096, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED, 3, 0xa000) = 0x40076000
close(3)                                = 0
munmap(0x40017000, 66198)               = 0
open("/etc/host.conf", O_RDONLY)        = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=17, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -
1, 0) = 0x40017000
read(3, "order hosts,bind\n", 4096)     = 17
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x40017000, 4096)                = 0
open("/etc/hosts", O_RDONLY)            = 3
fcntl64(3, F_GETFD)                     = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
fstat64(3, {st_mode=S_IFREG|0644, st_size=266, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -
1, 0) = 0x40017000
read(3, "# Do not remove the following li"..., 4096) = 266
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x40017000, 4096)                = 0
open("/opt/intel/compiler70/ia32/lib/libnss_nis.so.2", O_RDONLY) = -1 
ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=66198, ...}) = 0
old_mmap(NULL, 66198, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40017000
close(3)                                = 0
open("/lib/libnss_nis.so.2", O_RDONLY)  = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\34\0"..., 
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=43456, ...}) = 0
old_mmap(NULL, 33612, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 
0x40077000
old_mmap(0x4007f000, 4096, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED, 3, 0x8000) = 0x4007f000
close(3)                                = 0
munmap(0x40017000, 66198)               = 0
open("/var/yp/binding/maeng2.2", O_RDONLY) = 3
readv(3, [{"\377\377", 2}, {"\1\0\0\0\206u\260\21\3\'\0\0", 12}], 2) 
= 14
brk(0)                                  = 0x8051000
brk(0x8055000)                          = 0x8055000
socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 4
bind(4, {sa_family=AF_INET, sin_port=htons(924), sin_addr=inet_addr
("0.0.0.0")}, 16) = -1 EACCES (Permission denied)
ioctl(4, FIONBIO, [1])                  = 0
setsockopt(4, SOL_IP, IP_RECVERR, [1], 4) = 0
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
close(3)                                = 0
sendto(4, "\n\321$Z\0\0\0\0\0\0\0\2\0\1\206\244\0\0\0\2\0\0\0\3
\0"..., 96, 0, {sa_family=AF_INET, sin_port=htons(807), 
sin_addr=inet_addr("134.117.176.17")}, 16) = 96
poll([{fd=4, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
recvfrom(4, "\n\321$Z\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\0"..., 8800, 0, {sa_family=AF_INET, sin_port=htons(807), 
sin_addr=inet_addr("134.117.176.17")}, [16]) = 76
close(4)                                = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 3
bind(3, {sa_family=AF_INET, sin_port=htons(925), sin_addr=inet_addr
("0.0.0.0")}, 16) = -1 EACCES (Permission denied)
ioctl(3, FIONBIO, [1])                  = 0
setsockopt(3, SOL_IP, IP_RECVERR, [1], 4) = 0
sendto(3, "8\36\327\234\0\0\0\0\0\0\0\2\0\1\206\240\0\0\0\2\0\0
\0"..., 56, 0, {sa_family=AF_INET, sin_port=htons(111), 
sin_addr=inet_addr("134.117.176.17")}, 16) = 56
poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
recvfrom(3, "8\36\327\234\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\0"..., 400, 0, {sa_family=AF_INET, sin_port=htons(111), 
sin_addr=inet_addr("134.117.176.17")}, [16]) = 28
close(3)                                = 0
getuid32()                              = 2105
socket(PF_UNIX, SOCK_STREAM, 0)         = 3
connect(3, {sa_family=AF_UNIX, path="/var/run/.nscd_socket"}, 110) = -
1 ENOENT (No such file or directory)
close(3)                                = 0
open("/etc/hosts", O_RDONLY)            = 3
fcntl64(3, F_GETFD)                     = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
fstat64(3, {st_mode=S_IFREG|0644, st_size=266, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -
1, 0) = 0x40017000
read(3, "# Do not remove the following li"..., 4096) = 266
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x40017000, 4096)                = 0
open("/var/yp/binding/maeng2.2", O_RDONLY) = 3
readv(3, [{"\377\377", 2}, {"\1\0\0\0\206u\260\21\3\'\0\0", 12}], 2) 
= 14
socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 4
bind(4, {sa_family=AF_INET, sin_port=htons(926), sin_addr=inet_addr
("0.0.0.0")}, 16) = -1 EACCES (Permission denied)
ioctl(4, FIONBIO, [1])                  = 0
setsockopt(4, SOL_IP, IP_RECVERR, [1], 4) = 0
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
close(3)                                = 0
sendto(4, "%\316\224\273\0\0\0\0\0\0\0\2\0\1\206\244\0\0\0\2\0\0
\0"..., 96, 0, {sa_family=AF_INET, sin_port=htons(807), 
sin_addr=inet_addr("134.117.176.17")}, 16) = 96
poll([{fd=4, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
recvfrom(4, "%\316\224\273\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\0"..., 8800, 0, {sa_family=AF_INET, sin_port=htons(807), 
sin_addr=inet_addr("134.117.176.17")}, [16]) = 76
close(4)                                = 0
open("/var/yp/binding/maeng2.2", O_RDONLY) = 3
readv(3, [{"\377\377", 2}, {"\1\0\0\0\206u\260\21\3\'\0\0", 12}], 2) 
= 14
socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 4
bind(4, {sa_family=AF_INET, sin_port=htons(927), sin_addr=inet_addr
("0.0.0.0")}, 16) = -1 EACCES (Permission denied)
ioctl(4, FIONBIO, [1])                  = 0
setsockopt(4, SOL_IP, IP_RECVERR, [1], 4) = 0
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
close(3)                                = 0
sendto(4, "/k\v\262\0\0\0\0\0\0\0\2\0\1\206\244\0\0\0\2\0\0\0\3
\0"..., 80, 0, {sa_family=AF_INET, sin_port=htons(807), 
sin_addr=inet_addr("134.117.176.17")}, 16) = 80
poll([{fd=4, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
recvfrom(4, "/k\v\262\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377
\377"..., 8800, 0, {sa_family=AF_INET, sin_port=htons(807), 
sin_addr=inet_addr("134.117.176.17")}, [16]) = 32
close(4)                                = 0
uname({sys="Linux", node="node1", ...}) = 0
geteuid32()                             = 2105
getegid32()                             = 550
getgroups32(0x20, 0xbfffbe64)           = 13
gettimeofday({1071774721, 411601}, NULL) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++


when strace yppasswd is run on the server the next line shows as:

sendto(3, "N\270bb\0\0\0\0\0\0\0\2\0\1\206\244\0\0\0\2\0\0\0\3\0
\0"..., 160, 0, {sa_family=AF_INET, sin_port=htons(807), 
sin_addr=inet_addr("134.117.176.17")}, 16) = 160
poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, 5000) = 1



Comment 2 Steve Dickson 2004-09-01 18:31:36 UTC
This seems to be fixed in later release of the package.
Please up updated and reopen if necessary