Commit Graph

13 Commits

Author SHA1 Message Date
Joseph Myers
0516e24d18 conformtest: Fix XPG standard naming.
The conform/ tests test -D_XOPEN_SOURCE under the name "XPG3", and
-D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED under the name "XPG4".

That naming is misleading.  _XOPEN_SOURCE_EXTENDED actually means
XPG4.2, including UX-shaded interfaces.  _XOPEN_SOURCE actually means
XPG4, or XPG4.2 without UX-shaded interfaces.  (Prior XPG versions
also used _XOPEN_SOURCE, but without any versioning of the values of
the macro, so XPG4.2 without UX-shaded interfaces is the only sensible
set of interfaces for glibc to expose given _XOPEN_SOURCE=1 without
_XOPEN_SOURCE_EXTENDED defined.)

This patch fixes the naming in the conform/ tests, so that what is now
called XPG4 is changed to XPG42, and what is now called XPG3 is
changed to XPG4.

Tested for x86_64 (and verified the complete set of expectations is
unchanged by the patch beyond the intended renaming).

	* conform/GlibcConform.pm (XPG4): Rename standard to XPG42.
	(XPG3): Rename standard to XPG4.
	* conform/Makefile: Likewise.
	* conform/list-header-symbols.pl: Likewise.
	* conform/data/aio.h-data: Likewise.
	* conform/data/arpa/inet.h-data: Likewise.
	* conform/data/complex.h-data: Likewise.
	* conform/data/ctype.h-data: Likewise.
	* conform/data/dlfcn.h-data: Likewise.
	* conform/data/fcntl.h-data: Likewise.
	* conform/data/fenv.h-data: Likewise.
	* conform/data/float.h-data: Likewise.
	* conform/data/fmtmsg.h-data: Likewise.
	* conform/data/ftw.h-data: Likewise.
	* conform/data/grp.h-data: Likewise.
	* conform/data/inttypes.h-data: Likewise.
	* conform/data/iso646.h-data: Likewise.
	* conform/data/langinfo.h-data: Likewise.
	* conform/data/libgen.h-data: Likewise.
	* conform/data/limits.h-data: Likewise.
	* conform/data/locale.h-data: Likewise.
	* conform/data/math.h-data: Likewise.
	* conform/data/mqueue.h-data: Likewise.
	* conform/data/ndbm.h-data: Likewise.
	* conform/data/net/if.h-data: Likewise.
	* conform/data/netdb.h-data: Likewise.
	* conform/data/netinet/in.h-data: Likewise.
	* conform/data/poll.h-data: Likewise.
	* conform/data/pthread.h-data: Likewise.
	* conform/data/pwd.h-data: Likewise.
	* conform/data/sched.h-data: Likewise.
	* conform/data/search.h-data: Likewise.
	* conform/data/semaphore.h-data: Likewise.
	* conform/data/signal.h-data: Likewise.
	* conform/data/spawn.h-data: Likewise.
	* conform/data/stdbool.h-data: Likewise.
	* conform/data/stdint.h-data: Likewise.
	* conform/data/stdio.h-data: Likewise.
	* conform/data/stdlib.h-data: Likewise.
	* conform/data/string.h-data: Likewise.
	* conform/data/strings.h-data: Likewise.
	* conform/data/stropts.h-data: Likewise.
	* conform/data/sys/mman.h-data: Likewise.
	* conform/data/sys/resource.h-data: Likewise.
	* conform/data/sys/select.h-data: Likewise.
	* conform/data/sys/socket.h-data: Likewise.
	* conform/data/sys/stat.h-data: Likewise.
	* conform/data/sys/statvfs.h-data: Likewise.
	* conform/data/sys/time.h-data: Likewise.
	* conform/data/sys/timeb.h-data: Likewise.
	* conform/data/sys/types.h-data: Likewise.
	* conform/data/sys/uio.h-data: Likewise.
	* conform/data/sys/un.h-data: Likewise.
	* conform/data/sys/wait.h-data: Likewise.
	* conform/data/syslog.h-data: Likewise.
	* conform/data/termios.h-data: Likewise.
	* conform/data/tgmath.h-data: Likewise.
	* conform/data/time.h-data: Likewise.
	* conform/data/ucontext.h-data: Likewise.
	* conform/data/unistd.h-data: Likewise.
	* conform/data/utmpx.h-data: Likewise.
	* conform/data/varargs.h-data: Likewise.
	* conform/data/wchar.h-data: Likewise.
	* conform/data/wctype.h-data: Likewise.
2017-04-27 20:29:35 +00:00
Joseph Myers
bb5cc234e1 conformtest: Add alpha XFAIL for struct netent n_net type (bug 21260).
As noted in bug 21260, sysdeps/unix/sysv/linux/alpha/bits/netdb.h
defines struct netent with n_net of type unsigned long instead of the
correct uint32_t.  This patch XFAILs that test in the conformtest
expectations for alpha.  (This is not a fix for the bug, and it should
not be closed without an actual fix.)

Tested for alpha with build-many-glibcs.py.

	[BZ #21260]
	* sysdeps/unix/sysv/linux/alpha/Makefile
	[$(subdir) = conform] (conformtest-xfail-conds): New variable.
2017-03-17 02:42:16 +00:00
Joseph Myers
8737be8064 Fix netdb.h addrinfo namespace (bug 18529).
netdb.h declares interfaces such as getaddrinfo if __USE_POSIX,
i.e. POSIX.1:1990 or later.  However, these interfaces were new in the
2001 edition of POSIX, although the header was in XPG4 and UNIX98, so
they should not be declared for XPG4 or UNIX98.  (This produces
spurious linknamespace test failures, although there are other
failures for this header as well for the same standards so this patch
doesn't remove any XFAILs.)  This patch corrects the condition, and
the conform/ test expectations which were similarly wrong.

Tested for x86_64 and x86 (testsuite, and that installed stripped
shared libraries are unchanged by the patch).

	[BZ #18529]
	* resolv/netdb.h [__USE_POSIX]: Change condition to
	[__USE_XOPEN2K].
	* conform/data/netdb.h-data [XPG4 || UNIX98] (struct addrinfo): Do
	not expect.
	[XPG4 || UNIX98] (AI_PASSIVE): Likewise.
	[XPG4 || UNIX98] (AI_CANONNAME): Likewise.
	[XPG4 || UNIX98] (AI_NUMERICHOST): Likewise.
	[XPG4 || UNIX98] (AI_V4MAPPED): Likewise.
	[XPG4 || UNIX98] (AI_ALL): Likewise.
	[XPG4 || UNIX98] (AI_ADDRCONFIG): Likewise.
	[XPG4 || UNIX98] (AI_NUMERICSERV): Likewise.
	[XPG4 || UNIX98] (NI_NOFQDN): Likewise.
	[XPG4 || UNIX98] (NI_NUMERICHOST): Likewise.
	[XPG4 || UNIX98] (NI_NAMEREQD): Likewise.
	[XPG4 || UNIX98] (NI_NUMERICSERV): Likewise.
	[XPG4 || UNIX98] (NI_DGRAM): Likewise.
	[XPG4 || UNIX98] (EAI_AGAIN): Likewise.
	[XPG4 || UNIX98] (EAI_BADFLAGS): Likewise.
	[XPG4 || UNIX98] (EAI_FAIL): Likewise.
	[XPG4 || UNIX98] (EAI_FAMILY): Likewise.
	[XPG4 || UNIX98] (EAI_MEMORY): Likewise.
	[XPG4 || UNIX98] (EAI_NONAME): Likewise.
	[XPG4 || UNIX98] (EAI_SERVICE): Likewise.
	[XPG4 || UNIX98] (EAI_SOCKTYPE): Likewise.
	[XPG4 || UNIX98] (EAI_SYSTEM): Likewise.
	[XPG4 || UNIX98] (EAI_SYSTEM): Likewise.
	[XPG4 || UNIX98] (freeaddrinfo): Likewise.
	[XPG4 || UNIX98] (gai_strerror): Likewise.
	[XPG4 || UNIX98] (getaddrinfo): Likewise.
	[XPG4 || UNIX98] (getnameinfo): Likewise.
2015-06-12 22:35:07 +00:00
Joseph Myers
2ea18461d3 conformtest: correct set of standards for which some headers are tested.
Reviewing the sets of headers for which conformtest has expectations
for various standards showed up cases where headers had expectations
for standards not including those headers, or were missing
expectations for a standard that did include the header.  This patch
fixes easy cases of this (largely disabling tests for standards for
which they are inapplicable).  Tested x86_64.

	* conform/data/aio.h-data [XPG3 || XPG4]: Disable whole file.
	* conform/data/arpa/inet.h-data [XPG3]: Likewise.
	* conform/data/dlfcn.h-data [XPG3 || XPG4]: Likewise.
	* conform/data/fmtmsg.h-data [XPG3]: Likewise.
	* conform/data/libgen.h-data [XPG3]: Likewise.
	* conform/data/mqueue.h-data [XPG3 || XPG4]: Likewise.
	* conform/data/ndbm.h-data [XPG3]: Likewise.
	* conform/data/net/if.h-data [XPG3 || XPG4 || UNIX98]: Likewise.
	* conform/data/netdb.h-data [XPG3]: Likewise.
	* conform/data/netinet/in.h-data [XPG3]: Likewise.
	* conform/data/poll.h-data [XPG3]: Likewise.
	* conform/data/spawn.h-data [XPG3 || XPG4 || UNIX98]: Likewise.
	* conform/data/strings.h-data [XPG3]: Likewise.
	* conform/data/stropts.h-data [XPG3]: Likewise.
	* conform/data/sys/mman.h-data [XPG3]: Likewise.
	* conform/data/sys/resource.h-data [XPG3]: Likewise.
	* conform/data/sys/select.h-data [XPG3 || XPG4 || UNIX98]:
	Likewise.
	* conform/data/sys/statvfs.h-data [XPG3]: Likewise.
	* conform/data/sys/time.h-data [XPG3]: Likewise.
	* conform/data/sys/timeb.h-data [XPG3]: Likewise.
	* conform/data/sys/uio.h-data [XPG3]: Likewise.
	* conform/data/sys/un.h-data [XPG3]: Likewise.
	* conform/data/syslog.h-data [XPG3]: Likewise.
	* conform/data/ucontext.h-data [XPG3]: Likewise.
	* conform/data/utmpx.h-data [XPG3]: Likewise.
	* conform/data/varargs.h-data [UNIX98]: Enable file.
2014-03-06 17:42:03 +00:00
Ulrich Drepper
3134156779 First steps to get conformtest fully working 2012-02-25 23:18:39 -05:00
Bruno Haible
e4ecafe004 Fix getnameinfo flags parameter type. 2011-05-01 21:36:43 -04:00
Ulrich Drepper
f095bb7204 Add support for XPG7 testing.
The header conformance testing code needed extending for XPG7.  This
exposed a few bugs in the headers.  There are more changes to come.
2010-01-09 10:56:41 -08:00
Ulrich Drepper
a53d3f8295 [BZ #5607]
2008-01-16  Ulrich Drepper  <drepper@redhat.com>
	[BZ #5607]
	* conform/data/fcntl.h-data: Fix posix_fadvise and posix_fallocate
	prototypes.
	* conform/data/limits.h-data: Adjust limits changed in v6 and add
	additional suffixes.
	* conform/data/mqueue.h-data: Fix typo in mq_curmsgs entry.
	Add optional functions mq_timedreceive and mq_timedsend.
	* conform/data/netdb.h-data: Add more AI_* and EAI_* constants.
	* conform/data/pthread.h-data: Fix prototype of
	pthread_condattr_setclock.  pthread_sigmask is not required in v6.
	* conform/data/semaphore.h-data: Allow time.h definitions.
	* conform/data/signal.h-data: Likewise.
	* conform/data/stdio.h-data: getw and putw are not required in v6.
	* conform/data/stdlib.h-data: Change setstate prototype.
	* conform/data/string.h-data: Fix strerror_r prototype.
	* conform/data/time.h-data: Fix typo in TIMER_ABSTIME definition.
	* conform/data/unistd.h-data: pthread_atfork not required in v6.
	Fix readlink prototype.
	* conform/data/netinet/in.h-data: Add const to in6addr_any and
	in6addr_loopback.
	* inet/netinet/in.h: Cleanup namespace.
	* posix/regex.h: Likewise.
	* resolv/netdb.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/in.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
2008-01-16 10:11:18 +00:00
Ulrich Drepper
0f4b99a643 Update.
2001-08-17  Ulrich Drepper  <drepper@redhat.com>

	* conform/data/netdb.h-data: Adjust gai_strerror return type.

	* misc/getpass.c: Include wchar.h for prototypes.
	* malloc/obstack.c: Likewise.
2001-08-18 00:46:40 +00:00
Ulrich Drepper
ccd4b479dc Update.
* conform/conformtest.pl: Implement optional-type.

	* resolv/netdb.h: Include <netinet/in.h> not <sys/socket.h>.  Include
	<rpc/netdb.h> only if __USE_MISC.  Include <stdint.h> instead of
	defining uint32_t here.  Define IPPORT_RESERVED.
	(struct hostent): Type of h_length element is int.
	(getnameinfo): Type of flags parameter is unsigned int.
	* inet/getnameinfo.c (getnameinfo): flags argument is unsigned.
	* conform/data/netdb.h-data: Add many missing definitions.
2001-01-27 02:27:46 +00:00
Ulrich Drepper
4de9dbfa2c Update.
2001-01-25  Ulrich Drepper  <drepper@redhat.com>

	* conform/data/ctype.h-data: Use correct comment form.
	* conform/data/errno.h-data: Likewise.
	* conform/data/math.h-data: Likewise.
	* conform/data/mqueue.h-data: Likewise.
	* conform/data/netdb.h-data: Likewise.
	* conform/data/pthread.h-data: Likewise.
2001-01-25 08:10:36 +00:00
Andreas Jaeger
eba8c0e224 Update.
* conform/data/netdb.h-data: Remove getipnodebyaddr and friends.

	* include/netdb.h: Remove getipnodebyaddr and friends, leave
	constants in.

	* nis/Versions: Remove _nss_nis_getipnodebyname_r and
	_nss_nisplus_getipnodebyname_r.

	* nis/nss_nis/nis-hosts.c (_nss_nis_getipnodebyname_r): #if 0 for
	now, getipnodebyname is deprecated.
	* nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_getipnodebyname_r): Likewise.

	* inet/Makefile (routines): Don't build getipnodebyaddr and
	friends.
2000-08-01 16:05:21 +00:00
Ulrich Drepper
9d4d69b88b Update.
* conform/conformtest.pl (@headers): Add sys/utsname.h, sys/un.h,
	sys/socket.h, spawn.h, netinet/tcp.h, netinet/in.h, net/if.h, and
	arpa/inet.h.
	* conform/data/fcntl.h-data: Add F_GETOWN, F_SETOWN,
	SEEK_SET, SEEK_CUR, SEEK_END, S_IFMT, S_IFBLK, S_IFCHR, S_IFIFO,
	S_IFREG, S_IFDIR, S_IFLNK, S_IFSOCK, S_IRWXU, S_IRUSR S_IWUSR,
	S_IXUSR, S_IRWXG, S_IRGRP, S_IWGRP, S_IXGRP, S_IRWXO, S_IROTH,
	S_IWOTH, S_IXOTH, S_ISUID, S_ISGID, S_ISVTX, POSIX_FADV_NORMAL,
	POSIX_FADV_SEQUENTIAL, POSIX_FADV_RANDOM, POSIX_FADV_WILLNEED,
	POSIX_FADV_DONTNEED, POSIX_FADV_NOREUSE, posix_fadvise,
	posix_fallocate, and posix_madvise.
	* conform/data/netdb.h-data: New file.
	* conform/data/pthread.h-data: Add pthread_barrier_t,
	pthread_barrierattr_t, pthread_barrier_destroy,
	pthread_barrier_init, pthread_barrier_wait,
	pthread_barrierattr_destroy, pthread_barrierattr_getpshared,
	pthread_barrierattr_init, pthread_barrierattr_setpshared,
	pthread_condattr_getclock, pthread_condattr_setclock,
	pthread_getcpuclockid, pthread_mutex_timedlock,
	pthread_rwlock_timedrdlock, pthread_rwlock_timedwrlock,
	pthread_sigmask, pthread_spin_destroy, pthread_spin_init,
	pthread_spin_lock, pthread_spin_trylock, and pthread_spin_unlock.
	* conform/data/sched.h-data: Add sched_ss_low_priority,
	sched_ss_repl_period, sched_ss_init_budget, sched_ss_max_repl, and
	SCHED_SPORADIC.
	* conform/data/semaphore.h-data: Add sem_timedwait.
	* conform/data/signal.h-data: Add SIGIO.
	* conform/data/spawn.h-data: New file.
	* conform/data/stdlib.h-data: Add posix_memalign, setenv, and unsetenv.
	* conform/data/time.h-data: Add CLOCK_PROCESS_CPUTIME_ID,
	CLOCK_THREAD_CPUTIME_ID, clock_getcpuclockid, and clock_nanosleep.
	Fix typo in gmtime_r definition.
	* conform/data/unistd.h-data: Add _POSIX_ADVISORY_INFO,
	_POSIX_ASYNCHRONOUS_IO, _POSIX_BARRIERS, _POSIX_MONOTONIC_CLOCK,
	_POSIX_READER_WRITER_LOCKS, _POSIX_SHELL, _POSIX_SPAWN,
	_POSIX_SPIN_LOCKS, _POSIX_SPORADIC_SERVER, _POSIX_THREAD_CPUTIME,
	_POSIX_TYPED_MEMORY_OBJECTS, _POSIX_THREAD_SPORADIC_SERVER,
	_XOPEN_STREAMS, _POSIX_TIMEOUTS, _POSIX2_PBS,
	_POSIX2_PBS_ACCOUNTING, _POSIX2_PBS_CHECKPOINT,
	_POSIX2_PBS_LOCATE, _POSIX2_PBS_MESSAGE, _POSIX2_PBS_TRACK,
	_SC_2_PBS, _SC_2_PBS_ACCOUNTING, _SC_2_PBS_CHECKPOINT,
	_SC_2_PBS_LOCATE, _SC_2_PBS_MESSAGE, _SC_2_PBS_TRACK,
	_SC_BARRIERS, _SC_BASE, _SC_CLOCK_SELECTION, _SC_DEVICE_IO,
	_SC_DEVICE_SPECIFIC, _SC_DEVICE_SPECIFIC_R, _SC_FD_MGMT, _SC_FIFO,
	_SC_FILE_ATTRIBUTES, _SC_FILE_LOCKING, _SC_FILE_SYSTEM,
	_SC_MEMORY_PROTECTION, _SC_MESSAGE_PASSING, _SC_MONOTONIC_CLOCK,
	_SC_MESSAGE_PASSING, _SC_MONOTONIC_CLOCK, _SC_MULTIPLE_PROCESS,
	_SC_NETWORKING, _SC_PIPE, _SC_READER_WRITER_LOCKS, _SC_REGEXP,
	_SC_SHELL, _SC_SIGNALS, _SC_SINGLE_PROCESS, _SC_SPIN_LOCKS,
	_SC_TYPED_MEMORY_OBJECTS, _SC_USER_GROUPS, _SC_USER_GROUPS_R,
	_SC_STREAMS, _PC_REC_INCR_XFER_SIZE, _PC_REC_MAX_XFER_SIZE,
	_PC_REC_MIN_XFER_SIZE, _PC_REC_XFER_ALIGN, setegid, seteuid.  Fix
	typo in off_t definition.
	* conform/data/net/if.h-data: New file.
	* conform/data/netinet/in.h-data: New file.
	* conform/data/netinet/tcp.h-data: New file.
	* conform/data/sys/mman.h-data: Add POSIX_MADV_NORMAL,
	POSIX_MADV_SEQUENTIAL, POSIX_MADV_RANDOM, POSIX_MADV_WILLNEED,
	POSIX_MADV_DONTNEED, POSIX_TYPED_MEM_ALLOCATE,
	POSIX_TYPED_MEM_ALLOCATE_CONTIG, POSIX_TYPED_MEM_MAP_ALLOCATABLE,
	posix_typedmem_info, posix_mem_offset, posix_typed_mem_get_info,
	and posix_typed_mem_open.
	* conform/data/sys/socket.h-data: New file.
	* conform/data/sys/stat.h-data: Add S_TYPEISTMO and isfdtype.
	* conform/data/sys/types.h-data: Add pthread_barrier_t,
	pthread_barrierattr_t, and pthread_spinlock_t.
	* conform/data/sys/un.h-data: New file.
	* conform/data/sys/utsname.h-data: New file.

	* include/netdb.h (__gethostbyaddr_r): Fix types of first and second
	parameter.
	* inet/gethstbyad.c (gethostbyname): Likewise.
	* inet/gethstbyad_t.c (gethostbyname_r): Likewise.
	* inet/getipnodebyad.c (getipnodebyad): Likewise.
	* nis/nss_nis/nis-hosts.c (_nss_nis_gethostbyaddr_r): Likewise.
	* nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_gethostbyaddr_r):
	Likewise.
	* nscd/gethstbyad_r.c (gethostbyaddr_r): Likewise.
	* nscd/nscd_gethst_r.c (__nscd_gethostbyaddr_r): Likewise.
	* nscd/nscd_proto.h (__nscd_gethostbyaddr_r): Likewise.
	* nss/nss_files/files-hosts.c (_nss_files_gethostbyaddr_r): Likewise.
	* resolv/gethnamaddr.c (gethostbyname): Likewise.
	* resolv/netdb.h (struct hostent): Fix type of h_length member.
	(gethostbyaddr, getipnodebyaddr, gethostbyaddr_r): Fix types of first
	and second parameter.

2000-04-29  Andreas Jaeger  <aj@suse.de>

	* conform/data/arpa/inet.h-data: New file.
2000-04-30 04:17:35 +00:00