Bug 55229 - ypbind hangs if any hostname in /etc/yp.conf is unknown
ypbind hangs if any hostname in /etc/yp.conf is unknown
Status: CLOSED DUPLICATE of bug 56322
Product: Red Hat Linux
Classification: Retired
Component: ypbind (Show other bugs)
7.1
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Alexander Larsson
Ben Levenson
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2001-10-27 16:06 EDT by Need Real Name
Modified: 2007-04-18 12:37 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2002-03-19 10:46:57 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Need Real Name 2001-10-27 16:06:49 EDT
From Bugzilla Helper:
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0b; Windows 98)

Description of problem:
If any of the hosts listed in the /etc/yp.conf file are not known, ypbind 
will hang.

In our particular example, the yp.conf has many lines of the form "domain 
NISDOMAIN server HOSTNAME." In fact, if any of those "HOSTNAME" entries 
aren't found through dns lookups (gethostbyname), ypbind will hang.

An "strace -o $file -f -s 256 ypbind" shows this at the end of the file, 
after waiting a _long_ time and then hitting Cntrl-C:

21041 write(4, "\2\0\0\0\4\0\0\0\16\0\0\0", 12) = 12
21041 write(4, "pisvm2.ms.com\0", 14)   = 14
21041 read(4, "\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\377\377\377\377\377
\377\
0\0\0\0\1\0\0\0", 32) = 32
21041 close(4)                          = 0
21041 open("/usr/share/locale/en_US/LC_MESSAGES/ypbind-mt.mo", O_RDONLY) 
= -1 EN
OENT (No such file or directory)
21041 open("/usr/share/locale/en/LC_MESSAGES/ypbind-mt.mo", O_RDONLY) = -1 
ENOEN
T (No such file or directory)
21041 brk(0x8056000)                    = 0x8056000
21041 time([1004212306])                = 1004212306
21041 open("/etc/localtime", O_RDONLY)  = 4
21041 fstat64(4, {st_mode=S_IFREG|0644, st_size=817, ...}) = 0
21041 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -
1, 0)
= 0x40025000
21041 read(4, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\3\0\0
\0\0\
0\0\0\224\0\0\0\3\0\0\0\f\236\246\36p\237\272\353`\240\206\0p\241\232
\315`\313\2
10\360p\322`\373\340\372\370X\360\373\350;\340\374\330:\360\375\310\35\340
\376\2
70\34\360\377\247\377\340\0\227\376\360\1\207\341\340\2w\340\360
\3p\376`\4`\375p
\5P\340`\6@\337p\0070\302`\7\215\31p\t\20\244`\t\255\224\360\n\360
\206`\v\340\20
5p\f\331\242\340\r\300gp\16\271\204\340\17\251\203\360\20\231f\340\21
\211e\360\2
2yH\340\23iG\360\24Y*\340\25I)\360\026"..., 4096) = 817
21041 close(4)
21041 munmap(0x40025000, 4096)          = 0
21041 rt_sigaction(SIGPIPE, {0x400318c0, [], 0x4000000}, {SIG_DFL}, 8) = 0
21041 socket(PF_UNIX, SOCK_DGRAM, 0)    = 4
21041 fcntl64(0x4, 0x2, 0x1, 0x2)       = 0
21041 connect(4, {sin_family=AF_UNIX, path="/dev/log"}, 16) = 0
21041 send(4, "<11>Oct 27 15:51:46 ypbind: Unknown host: pisvm2.ms.com", 
55, 0)
= 55
21041 rt_sigaction(SIGPIPE, {SIG_DFL}, NULL, 8) = 0
21041 rt_sigprocmask(SIG_SETMASK, NULL, [32], 8) = 0
21041 rt_sigsuspend([] <unfinished ...>
21041 --- SIGINT (Interrupt) ---
21041 +++ killed by SIGINT +++


Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1. take a working yp.conf file and replace a known with an unknown host 
2. stop ypbind
3. start ypbind
	

Actual Results:  ypbind hangs

Expected Results:  ypbind should discard hosts that are not known and use 
as many valid hosts as it can find, up to the maximum as defined in the 
source code.

Additional info:
Comment 1 Alexander Larsson 2002-03-21 10:57:33 EST

*** This bug has been marked as a duplicate of 56322 ***

Note You need to log in before you can comment on or make changes to this bug.