summary refs log tree commit diff
path: root/conform
diff options
context:
space:
mode:
Diffstat (limited to 'conform')
-rw-r--r--conform/data/fcntl.h-data4
-rw-r--r--conform/data/fmtmsg.h-data1
-rw-r--r--conform/data/ftw.h-data1
-rw-r--r--conform/data/inttypes.h-data4
-rw-r--r--conform/data/limits.h-data15
-rw-r--r--conform/data/math.h-data2
-rw-r--r--conform/data/mqueue.h-data6
-rw-r--r--conform/data/net/if.h-data1
-rw-r--r--conform/data/netdb.h-data5
-rw-r--r--conform/data/netinet/in.h-data10
-rw-r--r--conform/data/pthread.h-data4
-rw-r--r--conform/data/semaphore.h-data1
-rw-r--r--conform/data/signal.h-data4
-rw-r--r--conform/data/stdio.h-data4
-rw-r--r--conform/data/stdlib.h-data2
-rw-r--r--conform/data/string.h-data2
-rw-r--r--conform/data/sys/socket.h-data6
-rw-r--r--conform/data/time.h-data2
-rw-r--r--conform/data/unistd.h-data4
19 files changed, 66 insertions, 12 deletions
diff --git a/conform/data/fcntl.h-data b/conform/data/fcntl.h-data
index ba857c9ffa..c8caf0360f 100644
--- a/conform/data/fcntl.h-data
+++ b/conform/data/fcntl.h-data
@@ -87,8 +87,8 @@ function int creat (const char*, mode_t)
 function int fcntl (int, int, ...)
 function int open (const char*, int, ...)
 #ifdef XOPEN2K
-function int posix_fadvise (int, off_t, size_t, int)
-function int posix_fallocate (int, off_t, size_t)
+function int posix_fadvise (int, off_t, off_t, int)
+function int posix_fallocate (int, off_t, off_t)
 #endif
 
 allow-header sys/stat.h
diff --git a/conform/data/fmtmsg.h-data b/conform/data/fmtmsg.h-data
index 25be1ec509..da1ed65ac4 100644
--- a/conform/data/fmtmsg.h-data
+++ b/conform/data/fmtmsg.h-data
@@ -59,4 +59,5 @@ macro MM_NOCON
 function int fmtmsg (long, const char*, int, const char*, const char*, const char*)
 
 allow *_t
+allow MM_*
 #endif
diff --git a/conform/data/ftw.h-data b/conform/data/ftw.h-data
index 229a18a458..81c50070d1 100644
--- a/conform/data/ftw.h-data
+++ b/conform/data/ftw.h-data
@@ -22,4 +22,5 @@ function int nftw (const char*, int (*) (const char *, const struct stat*, int,
 allow-header sys/stat.h
 
 allow *_t
+allow FTW*
 #endif
diff --git a/conform/data/inttypes.h-data b/conform/data/inttypes.h-data
index 3c13ea9c20..93e4713c95 100644
--- a/conform/data/inttypes.h-data
+++ b/conform/data/inttypes.h-data
@@ -136,6 +136,8 @@ macro INTMAX_C
 macro UINTMAX_C
 
 // The following expressions are not entirely correct but the current
-// fnamtch implementation doesn't grok the right form.
+// poorfnmatch implementation doesn't grok the right form.
 allow INT*
 allow UINT*
+allow PRI[Xa-z]*
+allow SCN[Xa-z]*
diff --git a/conform/data/limits.h-data b/conform/data/limits.h-data
index e4787486c8..9801ddeb86 100644
--- a/conform/data/limits.h-data
+++ b/conform/data/limits.h-data
@@ -57,7 +57,11 @@ constant _POSIX_CLOCKRES_MIN <= 20000000
 optional-constant _POSIX_AIO_LISTIO_MAX	2
 optional-constant _POSIX_AIO_MAX 1
 optional-constant _POSIX_ARG_MAX 4096
+#ifdef XOPEN2K
+optional-constant _POSIX_CHILD_MAX 25
+#else
 optional-constant _POSIX_CHILD_MAX 6
+#endif
 optional-constant _POSIX_DELAYTIMER_MAX 32
 optional-constant _POSIX_LINK_MAX 8
 optional-constant _POSIX_LOGIN_NAME_MAX 9
@@ -66,8 +70,16 @@ optional-constant _POSIX_MAX_INPUT 255
 optional-constant _POSIX_MQ_OPEN_MAX 8
 optional-constant _POSIX_MQ_PRIO_MAX 32
 optional-constant _POSIX_NAME_MAX 14
+#ifdef XOPEN2K
+optional-constant _POSIX_NGROUPS_MAX 8
+#else
 optional-constant _POSIX_NGROUPS_MAX 0
+#endif
+#ifdef XOPEN2K
+optional-constant _POSIX_OPEN_MAX 20
+#else
 optional-constant _POSIX_OPEN_MAX 16
+#endif
 optional-constant _POSIX_PATH_MAX 256
 optional-constant _POSIX_PIPE_BUF 512
 optional-constant _POSIX2_RE_DUP_MAX 255
@@ -126,3 +138,6 @@ optional-constant NL_SETMAX >= 255
 optional-constant NL_TEXTMAX
 optional-constant NZERO >= 20
 optional-constant TMP_MAX >= 10000
+
+allow *_MAX
+allow *_MIN
diff --git a/conform/data/math.h-data b/conform/data/math.h-data
index eb9a450880..40312effdd 100644
--- a/conform/data/math.h-data
+++ b/conform/data/math.h-data
@@ -357,4 +357,6 @@ allow scalbl
 #endif
 
 allow *_t
+// The following expressions are not entirely correct but the current
+// poorfnmatch implementation doesn't grok the right form.
 allow FP_*
diff --git a/conform/data/mqueue.h-data b/conform/data/mqueue.h-data
index 1b410a77eb..6ec1e312d5 100644
--- a/conform/data/mqueue.h-data
+++ b/conform/data/mqueue.h-data
@@ -8,7 +8,7 @@ type {struct mq_attr}
 element {struct mq_attr} long mq_flags
 element {struct mq_attr} long mq_maxmsg
 element {struct mq_attr} long mq_msgsize
-element {struct mq_attr} long mq_curmsg
+element {struct mq_attr} long mq_curmsgs
 
 function int mq_close (mqd_t)
 function int mq_getattr (mqd_t, struct mq_attr*)
@@ -18,6 +18,10 @@ function ssize_t mq_receive (mqd_t, char*, size_t, unsigned int*)
 function int mq_send (mqd_t, const char*, size_t, unsigned int)
 function int mq_setattr (mqd_t, const struct mq_attr*, struct mq_attr*)
 function int mq_unlink (const char*)
+#ifdef XOPEN2K
+optional-function ssize_t mq_timedreceive (mqd_t, char*, size_t, unsigned int*, const struct timespec*)
+optional-function int mq_timedsend (mqd_t, const char*, size_t, unsigned int, const struct timespec*)
+#endif
 
 allow-header fcntl.h
 allow-header signal.h
diff --git a/conform/data/net/if.h-data b/conform/data/net/if.h-data
index 8a462522d1..d019978ab5 100644
--- a/conform/data/net/if.h-data
+++ b/conform/data/net/if.h-data
@@ -12,4 +12,5 @@ function {struct if_nameindex*} if_nameindex (void)
 function void if_freenameindex (struct if_nameindex*)
 
 allow *_t
+allow IF_*
 #endif
diff --git a/conform/data/netdb.h-data b/conform/data/netdb.h-data
index d07846c636..483a3fcc96 100644
--- a/conform/data/netdb.h-data
+++ b/conform/data/netdb.h-data
@@ -55,6 +55,10 @@ element {struct addrinfo} {struct addrinfo*} ai_next
 macro AI_PASSIVE
 macro AI_CANONNAME
 macro AI_NUMERICHOST
+macro AI_V4MAPPED
+macro AI_ALL
+macro AI_ADDRCONFIG
+macro AI_NUMERICSERV
 
 macro NI_NOFQDN
 macro NI_NUMERICHOST
@@ -71,6 +75,7 @@ macro EAI_NONAME
 macro EAI_SERVICE
 macro EAI_SOCKTYPE
 macro EAI_SYSTEM
+macro EAI_OVERFLOW
 
 function void endhostent (void)
 function void endnetent (void)
diff --git a/conform/data/netinet/in.h-data b/conform/data/netinet/in.h-data
index 607f97c48a..391e1a551c 100644
--- a/conform/data/netinet/in.h-data
+++ b/conform/data/netinet/in.h-data
@@ -27,12 +27,12 @@ element {struct sockaddr_in6} uint32_t sin6_flowinfo
 element {struct sockaddr_in6} {struct in6_addr} sin6_addr
 element {struct sockaddr_in6} uint32_t sin6_scope_id
 
-variable {struct in6_addr} in6addr_any
+variable {const struct in6_addr} in6addr_any
 
 // constant IN6ADDR_ANY_INIT
 macro IN6ADDR_ANY_INIT
 
-variable {struct in6_addr} in6addr_loopback
+variable {const struct in6_addr} in6addr_loopback
 
 // constant IN6ADDR_LOOPBACK_INIT
 macro IN6ADDR_LOOPBACK_INIT
@@ -59,7 +59,7 @@ function uint32_t ntohl (uint32_t)
 function uint16_t ntohs (uint16_t)
 
 allow-header inttypes.h
-allow-header arpa/inet.h
+allow-header sys/socket.h
 
 constant INET6_ADDRSTRLEN 46
 
@@ -83,8 +83,12 @@ macro IN6_IS_ADDR_MC_SITELOCAL
 macro IN6_IS_ADDR_MC_ORGLOCAL
 macro IN6_IS_ADDR_MC_GLOBAL
 
+allow IMPLINK_*
 allow IN_*
+allow IN6_*
+allow INADDR_*
 allow IP_*
+allow IPV6_*
 allow IPPORT_*
 allow IPPROTO_*
 allow SOCK_*
diff --git a/conform/data/pthread.h-data b/conform/data/pthread.h-data
index b37b4cde64..aa5861f1d8 100644
--- a/conform/data/pthread.h-data
+++ b/conform/data/pthread.h-data
@@ -84,7 +84,7 @@ function int pthread_condattr_destroy (pthread_condattr_t*)
 optional-function int pthread_condattr_getclock (const pthread_condattr_t*, clockid_t*)
 function int pthread_condattr_getpshared (const pthread_condattr_t*, int*)
 function int pthread_condattr_init (pthread_condattr_t*)
-optional-function int pthread_condattr_setclock (const pthread_condattr_t*, clockid_t*)
+optional-function int pthread_condattr_setclock (pthread_condattr_t*, clockid_t)
 function int pthread_condattr_setpshared (pthread_condattr_t*, int)
 function int pthread_create (pthread_t*, const pthread_attr_t*, void *(*) (void*), void*)
 function int pthread_detach (pthread_t)
@@ -140,7 +140,9 @@ function int pthread_setconcurrency (int)
 # endif
 function int pthread_setschedparam (pthread_t, int, const struct sched_param*)
 function int pthread_setspecific (pthread_key_t, const void*)
+#ifndef XOPEN2K
 function int pthread_sigmask (int, const sigset_t*, sigset_t*)
+#endif
 function int pthread_spin_destroy (pthread_spinlock_t*)
 function int pthread_spin_init (pthread_spinlock_t*, int)
 function int pthread_spin_lock (pthread_spinlock_t*)
diff --git a/conform/data/semaphore.h-data b/conform/data/semaphore.h-data
index df29e0c01b..20fe0706b7 100644
--- a/conform/data/semaphore.h-data
+++ b/conform/data/semaphore.h-data
@@ -18,6 +18,7 @@ function int sem_wait (sem_t*)
 allow-header fcntl.h
 allow-header sys/types.h
 # endif
+allow-header time.h
 
 allow sem_*
 allow SEM_*
diff --git a/conform/data/signal.h-data b/conform/data/signal.h-data
index 22e07fb257..95bd37299b 100644
--- a/conform/data/signal.h-data
+++ b/conform/data/signal.h-data
@@ -180,6 +180,8 @@ function int sigtimedwait (const sigset_t*, siginfo_t*, const struct timespec*)
 function int sigwait (const sigset_t*, int*)
 function int sigwaitinfo (const sigset_t*, siginfo_t*)
 
+// The following expressions are not entirely correct but the current
+// poorfnmatch implementation doesn't grok the right form.
 allow SIG*
 allow sa_*
 allow uc_*
@@ -201,3 +203,5 @@ allow SS_*
 allow SV_*
 allow TRAP_*
 allow *_t
+
+allow-header time.h
diff --git a/conform/data/stdio.h-data b/conform/data/stdio.h-data
index 4349f8eec2..c3f071e8f9 100644
--- a/conform/data/stdio.h-data
+++ b/conform/data/stdio.h-data
@@ -67,7 +67,9 @@ function int getchar_unlocked ()
 function int getopt (int, char *const[], const char *)
 #endif
 function {char*} gets (char*)
+#ifndef XOPEN2K
 function int getw (FILE*)
+#endif
 function int pclose (FILE*)
 function void perror (const char*)
 function {FILE*} popen (const char*, const char*)
@@ -77,7 +79,9 @@ function int putchar (int)
 function int putc_unlocked (int, FILE*)
 function int putchar_unlocked (int)
 function int puts (const char*)
+#ifndef XOPEN2K
 function int putw (int, FILE*)
+#endif
 function int remove (const char*)
 function int rename (const char*, const char*)
 function void rewind (FILE*)
diff --git a/conform/data/stdlib.h-data b/conform/data/stdlib.h-data
index ccfdff637b..c639bb52d0 100644
--- a/conform/data/stdlib.h-data
+++ b/conform/data/stdlib.h-data
@@ -86,7 +86,7 @@ function {char*} realpath (const char*, char*)
 function {unsigned short int*} seed48 (unsigned short int[3])
 function int setenv (const char*, const char*, int)
 function void setkey (const char*)
-function {char*} setstate (const char*)
+function {char*} setstate (char*)
 function void srand (unsigned int)
 function void srand48 (long int)
 function void srandom (unsigned)
diff --git a/conform/data/string.h-data b/conform/data/string.h-data
index c3334fb066..19c06d292c 100644
--- a/conform/data/string.h-data
+++ b/conform/data/string.h-data
@@ -17,7 +17,7 @@ function size_t strcspn (const char*, const char*)
 function {char*} strdup (const char*)
 function {char*} strerror (int)
 #ifdef XOPEN2K
-function {char*} strerror_r (int, char*, size_t)
+function int strerror_r (int, char*, size_t)
 #endif
 function size_t strlen (const char*)
 function {char*} strncat (char*, const char*, size_t)
diff --git a/conform/data/sys/socket.h-data b/conform/data/sys/socket.h-data
index 61f30abc82..dd1f265b2b 100644
--- a/conform/data/sys/socket.h-data
+++ b/conform/data/sys/socket.h-data
@@ -118,4 +118,10 @@ allow msg_*
 allow cmsg_*
 allow l_*
 allow SO*
+allow AF_*
+allow CMSG_*
+allow MSG_*
+allow PF_*
+allow SCM_*
+allow SHUT_*
 #endif
diff --git a/conform/data/time.h-data b/conform/data/time.h-data
index f503165fae..805c48dd6f 100644
--- a/conform/data/time.h-data
+++ b/conform/data/time.h-data
@@ -29,7 +29,7 @@ element {struct itimerspec} {struct timespec} it_interval
 element {struct itimerspec} {struct timespec} it_value
 
 constant CLOCK_REALTIME
-constant TIME_ABSTIME
+constant TIMER_ABSTIME
 constant CLOCK_MONOTONIC
 
 type clock_t
diff --git a/conform/data/unistd.h-data b/conform/data/unistd.h-data
index 757d5c9905..b6effa064e 100644
--- a/conform/data/unistd.h-data
+++ b/conform/data/unistd.h-data
@@ -337,10 +337,12 @@ function {long int} pathconf (const char*, int)
 function int pause (void)
 function int pipe (int[2])
 function ssize_t pread (int, void*, size_t, off_t)
+#ifndef XOPEN2K
 function int pthread_atfork (void(*)(void), void(*)(void), void(*)(void))
+#endif
 function ssize_t pwrite (int, const void*, size_t, off_t)
 function ssize_t read (int, void*, size_t)
-function int readlink (const char*, char*, size_t)
+function ssize_t readlink (const char*, char*, size_t)
 function int rmdir (const char*)
 function {void*} sbrk (intptr_t)
 function int setegid (gid_t)