forked from rpms/glibc
		
	
		
			
				
	
	
		
			49 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| PURPOSE of /tools/glibc/Regression/bz501595-RHEL4-getnameinfo-should-return-EAI-NONAME
 | |
| Description: Test for bz501595 ([RHEL4] getnameinfo() should return EAI_NONAME)
 | |
| Author: Petr Muller <pmuller@redhat.com>
 | |
| Bug summary: [RHEL4] getnameinfo() should return EAI_NONAME when both nodename and servname are set to null and flag is set to NI_NAMEREQD
 | |
| Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=501595
 | |
| 
 | |
| Description:
 | |
| 
 | |
| +++ This bug was initially created as a clone of Bug #489419 +++
 | |
| 
 | |
| Description of Problem:
 | |
| glibc getnameinfo() returns 0 when both nodename and servname are set to null and flag is set to 'NI_NAMEREQD'.
 | |
| 
 | |
| The synopsis of function getnameinfo is:
 | |
|        int getnameinfo(const struct sockaddr *sa, socklen_t salen, char *node, socklen_t nodelen, char *service, socklen_t servicelen, int flags);
 | |
| 
 | |
| RFC3493 tells that getnameinfo() should returns 'EAI_NONAME' when both nodename and servname are null.  So when use getnameinfo() with both nodename and servname are null and the NI_NAMEREQD flag is set, glibc should return 'EAI_NONAME' rather than 0.
 | |
| 
 | |
| 
 | |
| Version-Release number of selected component:
 | |
| glibc-2.3.4-2.43
 | |
| 
 | |
| 
 | |
| How reproducible:
 | |
| every time
 | |
| 
 | |
| 
 | |
| Step to Reproduce:
 | |
| 1. gcc function-nodename-servname-null.c
 | |
| 2. ./a.out
 | |
| 
 | |
| 
 | |
| Actual Results:
 | |
| # ./a.out
 | |
| ==Both nodename and servname are null if the NI_NAMEREQD flag is set==
 | |
| ERROR:return 0, expect error EAI_NONAME
 | |
| <=== NG ===>
 | |
| 
 | |
| 
 | |
| Expected Results:
 | |
| # ./a.out
 | |
| ==Both nodename and servname are null if the NI_NAMEREQD flag is set==
 | |
| <=== OK ===>
 | |
| 
 | |
| 
 | |
| Additional Info:
 | |
| Upstream patch:
 | |
| http://sourceware.org/cgi-bin/cvsweb.cgi/libc/inet/getnameinfo.c.diff?r1=1.36&r2=1.37&cvsroot=glibc
 |