Module Name: src
Committed By: yamt
Date: Thu May 22 11:36:35 UTC 2014
Modified Files:
src/include [yamt-pagecache]: Makefile complex.h ctype.h db.h err.h
fenv.h inttypes.h iso646.h langinfo.h locale.h lwp.h math.h mpool.h
netdb.h nl_types.h search.h stdbool.h stddef.h stdio.h stdlib.h
string.h time.h ttyent.h unistd.h util.h vis.h wchar.h wctype.h
src/include/rpc [yamt-pagecache]: svc.h
src/include/rpcsvc [yamt-pagecache]: yp_prot.h
src/include/ssp [yamt-pagecache]: string.h
Removed Files:
src/include [yamt-pagecache]: cdbr.h
Log Message:
sync with head.
for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
To generate a diff of this commit:
cvs rdiff -u -r1.136.2.1 -r1.136.2.2 src/include/Makefile
cvs rdiff -u -r1.1 -r0 src/include/cdbr.h
cvs rdiff -u -r1.3 -r1.3.6.1 src/include/complex.h src/include/stdbool.h
cvs rdiff -u -r1.31 -r1.31.6.1 src/include/ctype.h
cvs rdiff -u -r1.24.2.1 -r1.24.2.2 src/include/db.h
cvs rdiff -u -r1.16 -r1.16.2.1 src/include/err.h
cvs rdiff -u -r1.6.4.1 -r1.6.4.2 src/include/fenv.h
cvs rdiff -u -r1.7 -r1.7.8.1 src/include/inttypes.h
cvs rdiff -u -r1.1 -r1.1.82.1 src/include/iso646.h
cvs rdiff -u -r1.9 -r1.9.54.1 src/include/langinfo.h
cvs rdiff -u -r1.17 -r1.17.6.1 src/include/locale.h
cvs rdiff -u -r1.11 -r1.11.10.1 src/include/lwp.h
cvs rdiff -u -r1.56.2.2 -r1.56.2.3 src/include/math.h
cvs rdiff -u -r1.13 -r1.13.2.1 src/include/mpool.h
cvs rdiff -u -r1.64.6.1 -r1.64.6.2 src/include/netdb.h
cvs rdiff -u -r1.12 -r1.12.6.1 src/include/nl_types.h
cvs rdiff -u -r1.19 -r1.19.2.1 src/include/search.h
cvs rdiff -u -r1.16 -r1.16.8.1 src/include/stddef.h
cvs rdiff -u -r1.79.2.2 -r1.79.2.3 src/include/stdio.h
cvs rdiff -u -r1.97.4.2 -r1.97.4.3 src/include/stdlib.h
cvs rdiff -u -r1.39.8.2 -r1.39.8.3 src/include/string.h
cvs rdiff -u -r1.40.6.1 -r1.40.6.2 src/include/time.h
cvs rdiff -u -r1.14 -r1.14.48.1 src/include/ttyent.h
cvs rdiff -u -r1.127.2.5 -r1.127.2.6 src/include/unistd.h
cvs rdiff -u -r1.59.2.2 -r1.59.2.3 src/include/util.h
cvs rdiff -u -r1.19.4.1 -r1.19.4.2 src/include/vis.h
cvs rdiff -u -r1.30 -r1.30.2.1 src/include/wchar.h
cvs rdiff -u -r1.7 -r1.7.6.1 src/include/wctype.h
cvs rdiff -u -r1.24 -r1.24.2.1 src/include/rpc/svc.h
cvs rdiff -u -r1.17 -r1.17.34.1 src/include/rpcsvc/yp_prot.h
cvs rdiff -u -r1.4.8.1 -r1.4.8.2 src/include/ssp/string.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/include/Makefile
diff -u src/include/Makefile:1.136.2.1 src/include/Makefile:1.136.2.2
--- src/include/Makefile:1.136.2.1 Tue Apr 17 00:05:10 2012
+++ src/include/Makefile Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.136.2.1 2012/04/17 00:05:10 yamt Exp $
+# $NetBSD: Makefile,v 1.136.2.2 2014/05/22 11:36:35 yamt Exp $
# @(#)Makefile 8.2 (Berkeley) 1/4/94
# Doing a make includes builds /usr/include
@@ -8,7 +8,7 @@ NOOBJ= # defined
# Missing: mp.h
INCS= a.out.h aio.h ar.h assert.h atomic.h \
- bitstring.h bm.h cdbr.h cdbw.h complex.h cpio.h ctype.h \
+ bitstring.h bm.h cdbw.h complex.h cpio.h ctype.h \
db.h dirent.h disktab.h dlfcn.h err.h errno.h fenv.h fmtmsg.h fnmatch.h \
fstab.h fts.h ftw.h getopt.h glob.h grp.h ifaddrs.h iconv.h \
inttypes.h iso646.h kvm.h langinfo.h libgen.h \
Index: src/include/complex.h
diff -u src/include/complex.h:1.3 src/include/complex.h:1.3.6.1
--- src/include/complex.h:1.3 Wed Sep 15 16:11:30 2010
+++ src/include/complex.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: complex.h,v 1.3 2010/09/15 16:11:30 christos Exp $ */
+/* $NetBSD: complex.h,v 1.3.6.1 2014/05/22 11:36:35 yamt Exp $ */
/*
* Written by Matthias Drochner.
@@ -20,60 +20,74 @@ __BEGIN_DECLS
/* 7.3.5.1 The cacos functions */
double complex cacos(double complex);
float complex cacosf(float complex);
+long double complex cacosl(long double complex);
/* 7.3.5.2 The casin functions */
double complex casin(double complex);
float complex casinf(float complex);
+long double complex casinl(long double complex);
/* 7.3.5.1 The catan functions */
double complex catan(double complex);
float complex catanf(float complex);
+long double complex catanl(long double complex);
/* 7.3.5.1 The ccos functions */
double complex ccos(double complex);
float complex ccosf(float complex);
+long double complex ccosl(long double complex);
/* 7.3.5.1 The csin functions */
double complex csin(double complex);
float complex csinf(float complex);
+long double complex csinl(long double complex);
/* 7.3.5.1 The ctan functions */
double complex ctan(double complex);
float complex ctanf(float complex);
+long double complex ctanl(long double complex);
/* 7.3.6 Hyperbolic functions */
/* 7.3.6.1 The cacosh functions */
double complex cacosh(double complex);
float complex cacoshf(float complex);
+long double complex cacoshl(long double complex);
/* 7.3.6.2 The casinh functions */
double complex casinh(double complex);
float complex casinhf(float complex);
+long double complex casinhl(long double complex);
/* 7.3.6.3 The catanh functions */
double complex catanh(double complex);
float complex catanhf(float complex);
+long double complex catanhl(long double complex);
/* 7.3.6.4 The ccosh functions */
double complex ccosh(double complex);
float complex ccoshf(float complex);
+long double complex ccoshl(long double complex);
/* 7.3.6.5 The csinh functions */
double complex csinh(double complex);
float complex csinhf(float complex);
+long double complex csinhl(long double complex);
/* 7.3.6.6 The ctanh functions */
double complex ctanh(double complex);
float complex ctanhf(float complex);
+long double complex ctanhl(long double complex);
/* 7.3.7 Exponential and logarithmic functions */
/* 7.3.7.1 The cexp functions */
double complex cexp(double complex);
float complex cexpf(float complex);
+long double complex cexpl(long double complex);
/* 7.3.7.2 The clog functions */
double complex clog(double complex);
float complex clogf(float complex);
+long double complex clogl(long double complex);
/* 7.3.8 Power and absolute-value functions */
/* 7.3.8.1 The cabs functions */
@@ -81,20 +95,24 @@ float complex clogf(float complex);
/* avoid conflict with historical cabs(struct complex) */
double cabs(double complex) __RENAME(__c99_cabs);
float cabsf(float complex) __RENAME(__c99_cabsf);
+long double cabsl(long double complex) __RENAME(__c99_cabsl);
#endif
/* 7.3.8.2 The cpow functions */
double complex cpow(double complex, double complex);
float complex cpowf(float complex, float complex);
+long double complex cpowl(long double complex, long double complex);
/* 7.3.8.3 The csqrt functions */
double complex csqrt(double complex);
float complex csqrtf(float complex);
+long double complex csqrtl(long double complex);
/* 7.3.9 Manipulation functions */
/* 7.3.9.1 The carg functions */
double carg(double complex);
float cargf(float complex);
+long double cargl(long double complex);
/* 7.3.9.2 The cimag functions */
double cimag(double complex);
Index: src/include/stdbool.h
diff -u src/include/stdbool.h:1.3 src/include/stdbool.h:1.3.6.1
--- src/include/stdbool.h:1.3 Mon Apr 28 20:22:54 2008
+++ src/include/stdbool.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: stdbool.h,v 1.3 2008/04/28 20:22:54 martin Exp $ */
+/* $NetBSD: stdbool.h,v 1.3.6.1 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 2002 The NetBSD Foundation, Inc.
@@ -37,11 +37,7 @@
#define true 1
#define false 0
-#else
-#define bool bool
-#define true true
-#define false false
#endif /* __cplusplus */
#define __bool_true_false_are_defined 1
Index: src/include/ctype.h
diff -u src/include/ctype.h:1.31 src/include/ctype.h:1.31.6.1
--- src/include/ctype.h:1.31 Tue Jun 1 13:52:08 2010
+++ src/include/ctype.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: ctype.h,v 1.31 2010/06/01 13:52:08 tnozaki Exp $ */
+/* $NetBSD: ctype.h,v 1.31.6.1 2014/05/22 11:36:35 yamt Exp $ */
/*
* Copyright (c) 1989 The Regents of the University of California.
@@ -57,6 +57,28 @@ int isxdigit(int);
int tolower(int);
int toupper(int);
+#if (_POSIX_C_SOURCE - 0) >= 200809L || defined(_NETBSD_SOURCE)
+# ifndef __LOCALE_T_DECLARED
+typedef struct _locale *locale_t;
+# define __LOCALE_T_DECLARED
+# endif
+
+int isalnum_l(int, locale_t);
+int isalpha_l(int, locale_t);
+int isblank_l(int, locale_t);
+int iscntrl_l(int, locale_t);
+int isdigit_l(int, locale_t);
+int isgraph_l(int, locale_t);
+int islower_l(int, locale_t);
+int isprint_l(int, locale_t);
+int ispunct_l(int, locale_t);
+int isspace_l(int, locale_t);
+int isupper_l(int, locale_t);
+int isxdigit_l(int, locale_t);
+int tolower_l(int, locale_t);
+int toupper_l(int, locale_t);
+#endif
+
#if defined(_XOPEN_SOURCE) || defined(_NETBSD_SOURCE)
int isascii(int);
int toascii(int);
@@ -70,8 +92,11 @@ int isblank(int);
#endif
__END_DECLS
-#if defined(_NETBSD_SOURCE) && !defined(_CTYPE_NOINLINE)
+#if defined(_NETBSD_SOURCE) && !defined(_CTYPE_NOINLINE) && \
+ !defined(__cplusplus)
#include <sys/ctype_inline.h>
+#else
+#include <sys/ctype_bits.h>
#endif
#endif /* !_CTYPE_H_ */
Index: src/include/db.h
diff -u src/include/db.h:1.24.2.1 src/include/db.h:1.24.2.2
--- src/include/db.h:1.24.2.1 Tue Apr 17 00:05:10 2012
+++ src/include/db.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: db.h,v 1.24.2.1 2012/04/17 00:05:10 yamt Exp $ */
+/* $NetBSD: db.h,v 1.24.2.2 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 1990, 1993, 1994
@@ -220,6 +220,9 @@ DB *__bt_open(const char *, int, mode_t,
DB *__hash_open(const char *, int, mode_t, const HASHINFO *, int);
DB *__rec_open(const char *, int, mode_t, const RECNOINFO *, int);
void __dbpanic(DB *);
+struct stat;
+int __dbopen(const char *, int, mode_t, struct stat *);
+int __dbtemp(const char *, struct stat *);
#endif
__END_DECLS
#endif /* !_DB_H_ */
Index: src/include/err.h
diff -u src/include/err.h:1.16 src/include/err.h:1.16.2.1
--- src/include/err.h:1.16 Sun Jul 17 20:54:34 2011
+++ src/include/err.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: err.h,v 1.16 2011/07/17 20:54:34 joerg Exp $ */
+/* $NetBSD: err.h,v 1.16.2.1 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 1993
@@ -46,6 +46,10 @@ __dead void errx(int, const char *, ...)
__printflike(2, 3) __dead;
__dead void verrx(int, const char *, va_list)
__printflike(2, 0) __dead;
+__dead void errc(int, int, const char *, ...)
+ __printflike(3, 4) __dead;
+__dead void verrc(int, int, const char *, va_list)
+ __printflike(3, 0) __dead;
void warn(const char *, ...)
__printflike(1, 2);
void vwarn(const char *, va_list)
@@ -54,6 +58,10 @@ void warnx(const char *, ...)
__printflike(1, 2);
void vwarnx(const char *, va_list)
__printflike(1, 0);
+void warnc(int, const char *, ...)
+ __printflike(2, 3);
+void vwarnc(int, const char *, va_list)
+ __printflike(2, 0);
__END_DECLS
#endif /* !_ERR_H_ */
Index: src/include/fenv.h
diff -u src/include/fenv.h:1.6.4.1 src/include/fenv.h:1.6.4.2
--- src/include/fenv.h:1.6.4.1 Tue Apr 17 00:05:10 2012
+++ src/include/fenv.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: fenv.h,v 1.6.4.1 2012/04/17 00:05:10 yamt Exp $ */
+/* $NetBSD: fenv.h,v 1.6.4.2 2014/05/22 11:36:35 yamt Exp $ */
/*
* Copyright (c) 2010 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -25,13 +25,15 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
-#if !defined(__i386__) && !defined(__amd64__) && !defined(__sparc__)
+#if !defined(__arm__) && !defined(__i386__) \
+ && !defined(__sparc__) && !defined(__x86_64__)
#error "fenv.h is currently not supported for this architecture"
#endif
#ifndef _FENV_H_
#define _FENV_H_
+#include <sys/featuretest.h>
#include <machine/fenv.h>
__BEGIN_DECLS
Index: src/include/inttypes.h
diff -u src/include/inttypes.h:1.7 src/include/inttypes.h:1.7.8.1
--- src/include/inttypes.h:1.7 Sun Nov 15 22:21:03 2009
+++ src/include/inttypes.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: inttypes.h,v 1.7 2009/11/15 22:21:03 christos Exp $ */
+/* $NetBSD: inttypes.h,v 1.7.8.1 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -33,6 +33,7 @@
#define _INTTYPES_H_
#include <sys/cdefs.h>
+#include <sys/featuretest.h>
#include <sys/inttypes.h>
#include <machine/ansi.h>
@@ -59,6 +60,21 @@ typedef struct {
} imaxdiv_t;
imaxdiv_t imaxdiv(intmax_t, intmax_t);
+
+#if (_POSIX_C_SOURCE - 0) >= 200809L || defined(_NETBSD_SOURCE)
+# ifndef __LOCALE_T_DECLARED
+typedef struct _locale *locale_t;
+# define __LOCALE_T_DECLARED
+# endif
+intmax_t strtoimax_l(const char * __restrict,
+ char ** __restrict, int, locale_t);
+uintmax_t strtoumax_l(const char * __restrict,
+ char ** __restrict, int, locale_t);
+intmax_t wcstoimax_l(const wchar_t * __restrict,
+ wchar_t ** __restrict, int, locale_t);
+uintmax_t wcstoumax_l(const wchar_t * __restrict,
+ wchar_t ** __restrict, int, locale_t);
+#endif
__END_DECLS
#endif /* !_INTTYPES_H_ */
Index: src/include/iso646.h
diff -u src/include/iso646.h:1.1 src/include/iso646.h:1.1.82.1
--- src/include/iso646.h:1.1 Fri Feb 17 09:08:10 1995
+++ src/include/iso646.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: iso646.h,v 1.1 1995/02/17 09:08:10 jtc Exp $ */
+/* $NetBSD: iso646.h,v 1.1.82.1 2014/05/22 11:36:35 yamt Exp $ */
/*
* Written by J.T. Conklin <[email protected]> 02/16/95.
@@ -8,6 +8,7 @@
#ifndef _ISO646_H_
#define _ISO646_H_
+#ifndef __cplusplus
#define and &&
#define and_eq &=
#define bitand &
@@ -19,5 +20,6 @@
#define or_eq |=
#define xor ^
#define xor_eq ^=
+#endif
#endif /* !_ISO646_H_ */
Index: src/include/langinfo.h
diff -u src/include/langinfo.h:1.9 src/include/langinfo.h:1.9.54.1
--- src/include/langinfo.h:1.9 Thu Feb 3 04:39:32 2005
+++ src/include/langinfo.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: langinfo.h,v 1.9 2005/02/03 04:39:32 perry Exp $ */
+/* $NetBSD: langinfo.h,v 1.9.54.1 2014/05/22 11:36:35 yamt Exp $ */
/*
* Written by J.T. Conklin <[email protected]>
@@ -88,4 +88,14 @@ __BEGIN_DECLS
char *nl_langinfo(nl_item);
__END_DECLS
+#if defined(_NETBSD_SOURCE)
+# ifndef __LOCALE_T_DECLARED
+typedef struct _locale *locale_t;
+# define __LOCALE_T_DECLARED
+# endif
+__BEGIN_DECLS
+char *nl_langinfo_l(nl_item, locale_t);
+__END_DECLS
+#endif
+
#endif /* _LANGINFO_H_ */
Index: src/include/locale.h
diff -u src/include/locale.h:1.17 src/include/locale.h:1.17.6.1
--- src/include/locale.h:1.17 Mon Jun 7 13:52:29 2010
+++ src/include/locale.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: locale.h,v 1.17 2010/06/07 13:52:29 tnozaki Exp $ */
+/* $NetBSD: locale.h,v 1.17.6.1 2014/05/22 11:36:35 yamt Exp $ */
/*
* Copyright (c) 1991, 1993
@@ -34,6 +34,8 @@
#ifndef _LOCALE_H_
#define _LOCALE_H_
+#include <sys/featuretest.h>
+
struct lconv {
char *decimal_point;
char *thousands_sep;
@@ -75,17 +77,51 @@ struct lconv {
#include <sys/cdefs.h>
-#ifdef __SETLOCALE_SOURCE__
-
-typedef struct _locale_impl_t *_locale_t;
-
-#define _LC_GLOBAL_LOCALE ((_locale_t)-1)
-
+#if (_POSIX_C_SOURCE - 0) >= 200809L || defined(_NETBSD_SOURCE) || \
+ defined(__SETLOCALE_SOURCE__)
+# ifndef __LOCALE_T_DECLARED
+typedef struct _locale *locale_t;
+# define __LOCALE_T_DECLARED
+# endif
#endif
__BEGIN_DECLS
struct lconv *localeconv(void);
char *setlocale(int, const char *) __RENAME(__setlocale50);
+
+#if (_POSIX_C_SOURCE - 0) >= 200809L || defined(_NETBSD_SOURCE)
+# ifndef __LOCALE_T_DECLARED
+typedef struct _locale *locale_t;
+# define __LOCALE_T_DECLARED
+# endif
+#define LC_ALL_MASK ((int)~0)
+#define LC_COLLATE_MASK ((int)(1 << LC_COLLATE))
+#define LC_CTYPE_MASK ((int)(1 << LC_CTYPE))
+#define LC_MONETARY_MASK ((int)(1 << LC_MONETARY))
+#define LC_NUMERIC_MASK ((int)(1 << LC_NUMERIC))
+#define LC_TIME_MASK ((int)(1 << LC_TIME))
+#define LC_MESSAGES_MASK ((int)(1 << LC_MESSAGES))
+locale_t duplocale(locale_t);
+void freelocale(locale_t);
+struct lconv *localeconv_l(locale_t);
+locale_t newlocale(int, const char *, locale_t);
+
+#ifndef _LIBC
+extern struct _locale _lc_global_locale;
+#else
+extern __dso_protected struct _locale _lc_global_locale;
+#endif
+#define LC_GLOBAL_LOCALE (&_lc_global_locale)
+#endif /* _POSIX_SOURCE >= 200809 || _NETBSD_SOURCE */
+
+#if defined(_NETBSD_SOURCE)
+# ifndef _LIBC
+extern const struct _locale _lc_C_locale;
+# else
+extern __dso_protected const struct _locale _lc_C_locale;
+# endif
+#define LC_C_LOCALE ((locale_t)__UNCONST(&_lc_C_locale))
+#endif
__END_DECLS
#endif /* _LOCALE_H_ */
Index: src/include/lwp.h
diff -u src/include/lwp.h:1.11 src/include/lwp.h:1.11.10.1
--- src/include/lwp.h:1.11 Sun Jan 11 03:04:12 2009
+++ src/include/lwp.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: lwp.h,v 1.11 2009/01/11 03:04:12 christos Exp $ */
+/* $NetBSD: lwp.h,v 1.11.10.1 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 2000 The NetBSD Foundation, Inc.
@@ -54,8 +54,8 @@ void _lwp_setprivate(void *);
int _lwp_kill(lwpid_t, int);
int _lwp_detach(lwpid_t);
#ifndef __LIBC12_SOURCE__
-int _lwp_park(const struct timespec *, lwpid_t, const void *, const void *)
- __RENAME(___lwp_park50);
+int _lwp_park(clockid_t, int, const struct timespec *, lwpid_t,
+ const void *, const void *) __RENAME(___lwp_park60);
#endif
int _lwp_unpark(lwpid_t, const void *);
ssize_t _lwp_unpark_all(const lwpid_t *, size_t, const void *);
Index: src/include/math.h
diff -u src/include/math.h:1.56.2.2 src/include/math.h:1.56.2.3
--- src/include/math.h:1.56.2.2 Wed May 23 10:07:30 2012
+++ src/include/math.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: math.h,v 1.56.2.2 2012/05/23 10:07:30 yamt Exp $ */
+/* $NetBSD: math.h,v 1.56.2.3 2014/05/22 11:36:35 yamt Exp $ */
/*
* ====================================================
@@ -38,6 +38,20 @@ union __long_double_u {
#include <machine/math.h> /* may use __float_u, __double_u,
or __long_double_u */
+#include <limits.h> /* for INT_{MIN,MAX} */
+
+#if ((_POSIX_C_SOURCE - 0) >= 200809L || defined(_NETBSD_SOURCE))
+# if defined(__FLT_EVAL_METHOD__) && (__FLT_EVAL_METHOD__ - 0) == 0
+typedef double double_t;
+typedef float float_t;
+# elif (__FLT_EVAL_METHOD__ - 0) == 1
+typedef double double_t;
+typedef double float_t;
+# elif (__FLT_EVAL_METHOD__ - 0) == 2
+typedef long double double_t;
+typedef long double float_t;
+# endif
+#endif
#ifdef __HAVE_LONG_DOUBLE
#define __fpmacro_unary_floating(__name, __arg0) \
@@ -116,6 +130,9 @@ extern const union __float_u __nanf;
#define _FP_LOMD 0x80 /* range for machine-specific classes */
#define _FP_HIMD 0xff
+#define FP_ILOGB0 INT_MIN
+#define FP_ILOGBNAN INT_MAX
+
#endif /* !_ANSI_SOURCE && ... */
/*
@@ -282,6 +299,14 @@ float cosf(float);
float sinf(float);
float tanf(float);
+long double acosl(long double);
+long double asinl(long double);
+long double atanl(long double);
+long double atan2l(long double, long double);
+long double cosl(long double);
+long double sinl(long double);
+long double tanl(long double);
+
/* 7.12.5 hyperbolic */
float acoshf(float);
@@ -290,6 +315,12 @@ float atanhf(float);
float coshf(float);
float sinhf(float);
float tanhf(float);
+long double acoshl(long double);
+long double asinhl(long double);
+long double atanhl(long double);
+long double coshl(long double);
+long double sinhl(long double);
+long double tanhl(long double);
/* 7.12.6 exp / log */
@@ -306,65 +337,110 @@ float log1pf(float);
float logbf(float);
float modff(float, float *);
float scalbnf(float, int);
+float scalblnf(float, long);
+
+long double expl(long double);
+long double exp2l(long double);
+long double expm1l(long double);
+long double frexpl(long double, int *);
+int ilogbl(long double);
+long double ldexpl(long double, int);
+long double logl(long double);
+long double log2l(long double);
+long double log10l(long double);
+long double log1pl(long double);
+long double logbl(long double);
+long double modfl(long double, long double *);
+long double scalbnl(long double, int);
+long double scalblnl(long double, long);
+
/* 7.12.7 power / absolute */
float cbrtf(float);
float fabsf(float);
-long double fabsl(long double);
float hypotf(float, float);
float powf(float, float);
float sqrtf(float);
+long double cbrtl(long double);
+long double fabsl(long double);
+long double hypotl(long double, long double);
+long double powl(long double, long double);
+long double sqrtl(long double);
/* 7.12.8 error / gamma */
+double tgamma(double);
float erff(float);
float erfcf(float);
float lgammaf(float);
float tgammaf(float);
-double tgamma(double);
+long double erfl(long double);
+long double erfcl(long double);
+long double lgammal(long double);
+long double tgammal(long double);
/* 7.12.9 nearest integer */
-float ceilf(float);
-float floorf(float);
-float rintf(float);
-double round(double);
-float roundf(float);
-double trunc(double);
-float truncf(float);
-long int lrint(double);
-long int lrintf(float);
/* LONGLONG */
long long int llrint(double);
-/* LONGLONG */
-long long int llrintf(float);
long int lround(double);
-long int lroundf(float);
/* LONGLONG */
long long int llround(double);
+long int lrint(double);
+double round(double);
+double trunc(double);
+
+float ceilf(float);
+float floorf(float);
+/* LONGLONG */
+long long int llrintf(float);
+long int lroundf(float);
/* LONGLONG */
long long int llroundf(float);
+long int lrintf(float);
+float rintf(float);
+float roundf(float);
+float truncf(float);
+long double ceill(long double);
+long double floorl(long double);
+/* LONGLONG */
+long long int llrintl(long double);
+long int lroundl(long double);
+/* LONGLONG */
+long long int llroundl(long double);
+long int lrintl(long double);
+long double rintl(long double);
+long double roundl(long double);
+long double truncl(long double);
/* 7.12.10 remainder */
float fmodf(float, float);
float remainderf(float, float);
+long double fmodl(long double, long double);
+long double remainderl(long double, long double);
/* 7.12.10.3 The remquo functions */
double remquo(double, double, int *);
float remquof(float, float, int *);
+long double remquol(long double, long double, int *);
/* 7.12.11 manipulation */
-float copysignf(float, float);
-long double copysignl(long double, long double);
double nan(const char *);
+double nearbyint(double);
+double nexttoward(double, long double);
+float copysignf(float, float);
float nanf(const char *);
-long double nanl(const char *);
+float nearbyintf(float);
float nextafterf(float, float);
+float nexttowardf(float, long double);
+long double copysignl(long double, long double);
+long double nanl(const char *);
+long double nearbyintl(long double);
long double nextafterl(long double, long double);
-double nexttoward(double, long double);
+long double nexttowardl(long double, long double);
/* 7.12.14 comparison */
@@ -376,12 +452,15 @@ double nexttoward(double, long double);
#define islessgreater(x, y) (!isunordered((x), (y)) && \
((x) > (y) || (y) > (x)))
double fdim(double, double);
+double fma(double, double, double);
double fmax(double, double);
double fmin(double, double);
float fdimf(float, float);
+float fmaf(float, float, float);
float fmaxf(float, float);
float fminf(float, float);
long double fdiml(long double, long double);
+long double fmal(long double, long double, long double);
long double fmaxl(long double, long double);
long double fminl(long double, long double);
@@ -393,14 +472,14 @@ long double fminl(long double, long doub
((_POSIX_C_SOURCE - 0) >= 200112L) || \
defined(_ISOC99_SOURCE) || defined(_NETBSD_SOURCE)
/* 7.12.3.3 int isinf(real-floating x) */
-#ifdef __isinf
+#if defined(__isinf) || defined(__HAVE_INLINE___ISINF)
#define isinf(__x) __isinf(__x)
#else
#define isinf(__x) __fpmacro_unary_floating(isinf, __x)
#endif
/* 7.12.3.4 int isnan(real-floating x) */
-#ifdef __isnan
+#if defined(__isnan) || defined(__HAVE_INLINE___ISNAN)
#define isnan(__x) __isnan(__x)
#else
#define isnan(__x) __fpmacro_unary_floating(isnan, __x)
@@ -422,6 +501,7 @@ double significand(double);
*/
double copysign(double, double);
double scalbn(double, int);
+double scalbln(double, long);
/*
* BSD math library entry points
@@ -500,10 +580,6 @@ int __isnanl(long double);
int __signbitl(long double);
#endif
-int ilogbl(long double);
-long double logbl(long double);
-long double scalbnl(long double, int);
-
__END_DECLS
#endif /* _MATH_H_ */
Index: src/include/mpool.h
diff -u src/include/mpool.h:1.13 src/include/mpool.h:1.13.2.1
--- src/include/mpool.h:1.13 Tue Aug 26 21:18:38 2008
+++ src/include/mpool.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: mpool.h,v 1.13 2008/08/26 21:18:38 joerg Exp $ */
+/* $NetBSD: mpool.h,v 1.13.2.1 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 1991, 1993, 1994
@@ -49,8 +49,8 @@
/* The BKT structures are the elements of the queues. */
typedef struct _bkt {
- CIRCLEQ_ENTRY(_bkt) hq; /* hash queue */
- CIRCLEQ_ENTRY(_bkt) q; /* lru queue */
+ TAILQ_ENTRY(_bkt) hq; /* hash queue */
+ TAILQ_ENTRY(_bkt) q; /* lru queue */
void *page; /* page */
pgno_t pgno; /* page number */
@@ -60,9 +60,9 @@ typedef struct _bkt {
} BKT;
typedef struct MPOOL {
- CIRCLEQ_HEAD(_lqh, _bkt) lqh; /* lru queue head */
+ TAILQ_HEAD(_lqh, _bkt) lqh; /* lru queue head */
/* hash queue array */
- CIRCLEQ_HEAD(_hqh, _bkt) hqh[HASHSIZE];
+ TAILQ_HEAD(_hqh, _bkt) hqh[HASHSIZE];
pgno_t curcache; /* current number of cached pages */
pgno_t maxcache; /* max number of cached pages */
pgno_t npages; /* number of pages in the file */
Index: src/include/netdb.h
diff -u src/include/netdb.h:1.64.6.1 src/include/netdb.h:1.64.6.2
--- src/include/netdb.h:1.64.6.1 Tue Apr 17 00:05:10 2012
+++ src/include/netdb.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: netdb.h,v 1.64.6.1 2012/04/17 00:05:10 yamt Exp $ */
+/* $NetBSD: netdb.h,v 1.64.6.2 2014/05/22 11:36:35 yamt Exp $ */
/*
* ++Copyright++ 1980, 1983, 1988, 1993
@@ -90,10 +90,9 @@
#ifndef _NETDB_H_
#define _NETDB_H_
-#include <machine/ansi.h>
+#include <sys/cdefs.h>
#include <machine/endian_machdep.h>
#include <sys/ansi.h>
-#include <sys/cdefs.h>
#include <sys/featuretest.h>
#include <inttypes.h>
/*
@@ -267,11 +266,18 @@ struct addrinfo {
#define AI_CANONNAME 0x00000002 /* fill ai_canonname */
#define AI_NUMERICHOST 0x00000004 /* prevent host name resolution */
#define AI_NUMERICSERV 0x00000008 /* prevent service name resolution */
+#define AI_ADDRCONFIG 0x00000400 /* only if any address is assigned */
/* valid flags for addrinfo (not a standard def, apps should not use it) */
+#ifdef _NETBSD_SOURCE
+#define AI_SRV 0x00000800 /* do _srv lookups */
+#define AI_MASK \
+ (AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST | AI_NUMERICSERV | \
+ AI_ADDRCONFIG | AI_SRV)
+#else
#define AI_MASK \
(AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST | AI_NUMERICSERV | \
AI_ADDRCONFIG)
-#define AI_ADDRCONFIG 0x00000400 /* only if any address is assigned */
+#endif
#endif
#if (_POSIX_C_SOURCE - 0) >= 200112L || (_XOPEN_SOURCE - 0) >= 520 || \
@@ -314,7 +320,7 @@ void endservent(void);
void freehostent(struct hostent *);
#endif
#endif
-struct hostent *gethostbyaddr(const char *, socklen_t, int);
+struct hostent *gethostbyaddr(const void *, socklen_t, int);
struct hostent *gethostbyname(const char *);
#if defined(_NETBSD_SOURCE)
struct hostent *gethostbyname2(const char *, int);
Index: src/include/nl_types.h
diff -u src/include/nl_types.h:1.12 src/include/nl_types.h:1.12.6.1
--- src/include/nl_types.h:1.12 Mon Apr 28 20:22:54 2008
+++ src/include/nl_types.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: nl_types.h,v 1.12 2008/04/28 20:22:54 martin Exp $ */
+/* $NetBSD: nl_types.h,v 1.12.6.1 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 1996 The NetBSD Foundation, Inc.
@@ -83,9 +83,18 @@ typedef long nl_item;
__BEGIN_DECLS
nl_catd catopen(const char *, int);
-char *catgets(nl_catd, int, int, const char *)
- __attribute__((__format_arg__(4)));
+char *catgets(nl_catd, int, int, const char *) __format_arg(4);
int catclose(nl_catd);
__END_DECLS
+#if defined(_NETBSD_SOURCE)
+# ifndef __LOCALE_T_DECLARED
+typedef struct _locale *locale_t;
+# define __LOCALE_T_DECLARED
+# endif
+__BEGIN_DECLS
+nl_catd catopen_l(const char *, int, locale_t);
+__END_DECLS
+#endif
+
#endif /* _NL_TYPES_H_ */
Index: src/include/search.h
diff -u src/include/search.h:1.19 src/include/search.h:1.19.2.1
--- src/include/search.h:1.19 Wed Sep 14 23:34:26 2011
+++ src/include/search.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: search.h,v 1.19 2011/09/14 23:34:26 christos Exp $ */
+/* $NetBSD: search.h,v 1.19.2.1 2014/05/22 11:36:35 yamt Exp $ */
/*
* Written by J.T. Conklin <[email protected]>
@@ -9,6 +9,7 @@
#define _SEARCH_H_
#include <sys/cdefs.h>
+#include <sys/featuretest.h>
#include <machine/ansi.h>
#ifdef _BSD_SIZE_T_
Index: src/include/stddef.h
diff -u src/include/stddef.h:1.16 src/include/stddef.h:1.16.8.1
--- src/include/stddef.h:1.16 Sun Nov 15 22:21:03 2009
+++ src/include/stddef.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: stddef.h,v 1.16 2009/11/15 22:21:03 christos Exp $ */
+/* $NetBSD: stddef.h,v 1.16.8.1 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 1990, 1993
@@ -38,7 +38,10 @@
#include <sys/featuretest.h>
#include <machine/ansi.h>
+#ifdef _BSD_PTRDIFF_T_
typedef _BSD_PTRDIFF_T_ ptrdiff_t;
+#undef _BSD_PTRDIFF_T_
+#endif
#ifdef _BSD_SIZE_T_
typedef _BSD_SIZE_T_ size_t;
Index: src/include/stdio.h
diff -u src/include/stdio.h:1.79.2.2 src/include/stdio.h:1.79.2.3
--- src/include/stdio.h:1.79.2.2 Wed May 23 10:07:30 2012
+++ src/include/stdio.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: stdio.h,v 1.79.2.2 2012/05/23 10:07:30 yamt Exp $ */
+/* $NetBSD: stdio.h,v 1.79.2.3 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 1990, 1993
@@ -228,7 +228,7 @@ int fflush(FILE *);
int fgetc(FILE *);
char *fgets(char * __restrict, int, FILE * __restrict);
FILE *fopen(const char * __restrict , const char * __restrict);
-int fprintf(FILE * __restrict , const char * __restrict, ...)
+int fprintf(FILE * __restrict, const char * __restrict, ...)
__printflike(2, 3);
int fputc(int, FILE *);
int fputs(const char * __restrict, FILE * __restrict);
@@ -485,7 +485,7 @@ static __inline int __sputc(int _c, FILE
#define __sfileno(p) \
((p)->_file == -1 ? -1 : (int)(unsigned short)(p)->_file)
-#ifndef __lint__
+#if !defined(__lint__) && !defined(__cplusplus)
#if !defined(_REENTRANT) && !defined(_PTHREADS)
#define feof(p) __sfeof(p)
#define ferror(p) __sferror(p)
@@ -494,17 +494,18 @@ static __inline int __sputc(int _c, FILE
#define getc(fp) __sgetc(fp)
#define putc(x, fp) __sputc(x, fp)
#endif /* !_REENTRANT && !_PTHREADS */
-#endif /* __lint__ */
#define getchar() getc(stdin)
#define putchar(x) putc(x, stdout)
-#if defined(_POSIX_C_SOURCE) || defined(_XOPEN_SOURCE) || \
- defined(_NETBSD_SOURCE)
+#endif /* !__lint__ && !__cplusplus */
+
+#if (defined(_POSIX_C_SOURCE) || defined(_XOPEN_SOURCE) || \
+ defined(_NETBSD_SOURCE)) && !defined(__cplusplus)
#if !defined(_REENTRANT) && !defined(_PTHREADS)
#define fileno(p) __sfileno(p)
#endif /* !_REENTRANT && !_PTHREADS */
-#endif /* !_ANSI_SOURCE */
+#endif /* !_ANSI_SOURCE && !__cplusplus*/
#if (_POSIX_C_SOURCE - 0) >= 200809L || defined(_NETBSD_SOURCE)
int vdprintf(int, const char * __restrict, __va_list)
@@ -514,7 +515,7 @@ int dprintf(int, const char * __restric
#endif /* (_POSIX_C_SOURCE - 0) >= 200809L || defined(_NETBSD_SOURCE) */
#if (_POSIX_C_SOURCE - 0) >= 199506L || (_XOPEN_SOURCE - 0) >= 500 || \
- defined(_REENTRANT) || defined(_NETBSD_SOURCE)
+ defined(_REENTRANT) || defined(_NETBSD_SOURCE) && !defined(__cplusplus)
#define getc_unlocked(fp) __sgetc(fp)
#define putc_unlocked(x, fp) __sputc(x, fp)
@@ -527,6 +528,63 @@ int dprintf(int, const char * __restric
FILE *fmemopen(void * __restrict, size_t, const char * __restrict);
#endif
+#if (_POSIX_C_SOURCE - 0) >= 200809L || defined(_NETBSD_SOURCE)
+# ifndef __LOCALE_T_DECLARED
+typedef struct _locale *locale_t;
+# define __LOCALE_T_DECLARED
+# endif
+__BEGIN_DECLS
+int fprintf_l(FILE * __restrict, locale_t, const char * __restrict, ...)
+ __printflike(3, 4);
+int vfprintf_l(FILE * __restrict, locale_t, const char * __restrict,
+ __va_list) __printflike(3, 0);
+int printf_l(locale_t, const char * __restrict, ...)
+ __printflike(2, 3);
+int vprintf_l(locale_t, const char * __restrict, __va_list)
+ __printflike(2, 0);
+int asprintf_l(char ** __restrict, locale_t, const char * __restrict, ...)
+ __printflike(3, 4);
+int vasprintf_l(char ** __restrict, locale_t, const char * __restrict,
+ __va_list)
+ __printflike(3, 0);
+int vdprintf_l(int, locale_t, const char * __restrict, __va_list)
+ __printflike(3, 0);
+int dprintf_l(int, locale_t, const char * __restrict, ...)
+ __printflike(3, 4);
+int snprintf_l(char * __restrict, size_t, locale_t,
+ const char * __restrict, ...) __printflike(4, 5);
+int vsnprintf_l(char * __restrict, size_t, locale_t,
+ const char * __restrict, __va_list) __printflike(4, 0);
+#ifndef __AUDIT__
+int sprintf_l(char * __restrict, locale_t, const char * __restrict, ...)
+ __printflike(3, 4);
+int vsprintf_l(char * __restrict, locale_t, const char * __restrict,
+ __va_list) __printflike(3, 0);
+#endif
+
+int fscanf_l(FILE * __restrict, locale_t, const char * __restrict, ...)
+ __scanflike(3, 4);
+int scanf_l(locale_t, const char * __restrict, ...)
+ __scanflike(2, 3);
+int sscanf_l(const char * __restrict, locale_t,
+ const char * __restrict, ...) __scanflike(3, 4);
+int vscanf_l(locale_t, const char * __restrict, __va_list)
+ __scanflike(2, 0);
+int vscanf_l(locale_t, const char * __restrict, __va_list)
+ __scanflike(2, 0);
+int vfscanf_l(FILE * __restrict, locale_t, const char * __restrict,
+ __va_list) __scanflike(3, 0);
+int vsscanf_l(const char * __restrict, locale_t, const char * __restrict,
+ __va_list) __scanflike(3, 0);
+#ifdef _NETBSD_SOURCE
+int snprintf_ss(char *restrict, size_t, const char * __restrict, ...)
+ __printflike(3, 4);
+int vsnprintf_ss(char *restrict, size_t, const char * __restrict, __va_list)
+ __printflike(3, 0);
+#endif
+__END_DECLS
+#endif
+
#if _FORTIFY_SOURCE > 0
#include <ssp/stdio.h>
#endif
Index: src/include/stdlib.h
diff -u src/include/stdlib.h:1.97.4.2 src/include/stdlib.h:1.97.4.3
--- src/include/stdlib.h:1.97.4.2 Tue Oct 30 18:58:33 2012
+++ src/include/stdlib.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: stdlib.h,v 1.97.4.2 2012/10/30 18:58:33 yamt Exp $ */
+/* $NetBSD: stdlib.h,v 1.97.4.3 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 1990, 1993
@@ -65,7 +65,7 @@ typedef struct {
#if !defined(_ANSI_SOURCE) && \
(defined(_ISOC99_SOURCE) || (__STDC_VERSION__ - 0) >= 199901L || \
- defined(_NETBSD_SOURCE))
+ (__cplusplus - 0) >= 201103L || defined(_NETBSD_SOURCE))
typedef struct {
/* LONGLONG */
long long int quot; /* quotient */
@@ -207,7 +207,8 @@ char *ptsname(int);
* ISO C99
*/
#if defined(_ISOC99_SOURCE) || (__STDC_VERSION__ - 0) >= 199901L || \
- defined(_NETBSD_SOURCE)
+ defined(_NETBSD_SOURCE) || (__cplusplus - 0) >= 201103L
+
/* LONGLONG */
long long int atoll(const char *);
/* LONGLONG */
@@ -223,6 +224,12 @@ float strtof(const char * __restrict, c
long double strtold(const char * __restrict, char ** __restrict);
#endif
+#if defined(_ISOC11_SOURCE) || (__STDC_VERSION__ - 0) >= 201101L || \
+ defined(_NETBSD_SOURCE) || (__cplusplus - 0) >= 201103L
+int at_quick_exit(void (*)(void));
+__dead void quick_exit(int);
+#endif
+
/*
* The Open Group Base Specifications, Issue 6; IEEE Std 1003.1-2001 (POSIX)
*/
@@ -295,6 +302,7 @@ void cfree(void *);
int heapsort(void *, size_t, size_t, int (*)(const void *, const void *));
int mergesort(void *, size_t, size_t,
int (*)(const void *, const void *));
+int ptsname_r(int, char *, size_t);
int radixsort(const unsigned char **, int, const unsigned char *,
unsigned);
int sradixsort(const unsigned char **, int, const unsigned char *,
@@ -328,6 +336,44 @@ size_t shquotev(int, char * const *, cha
#if defined(_NETBSD_SOURCE)
qdiv_t qdiv(quad_t, quad_t);
#endif
+
+#if (_POSIX_C_SOURCE - 0) >= 200809L || defined(_NETBSD_SOURCE)
+# ifndef __LOCALE_T_DECLARED
+typedef struct _locale *locale_t;
+# define __LOCALE_T_DECLARED
+# endif
+double strtod_l(const char * __restrict, char ** __restrict, locale_t);
+float strtof_l(const char * __restrict, char ** __restrict, locale_t);
+long double strtold_l(const char * __restrict, char ** __restrict,
+ locale_t);
+long strtol_l(const char * __restrict, char ** __restrict, int, locale_t);
+unsigned long
+ strtoul_l(const char * __restrict, char ** __restrict, int, locale_t);
+/* LONGLONG */
+long long int
+ strtoll_l(const char * __restrict, char ** __restrict, int, locale_t);
+/* LONGLONG */
+unsigned long long int
+ strtoull_l(const char * __restrict, char ** __restrict, int, locale_t);
+
+# if defined(_NETBSD_SOURCE)
+quad_t strtoq_l(const char * __restrict, char ** __restrict, int, locale_t);
+u_quad_t strtouq_l(const char * __restrict, char ** __restrict, int, locale_t);
+
+size_t _mb_cur_max_l(locale_t);
+#define MB_CUR_MAX_L(loc) _mb_cur_max_l(loc)
+int mblen_l(const char *, size_t, locale_t);
+size_t mbstowcs_l(wchar_t * __restrict, const char * __restrict, size_t,
+ locale_t);
+int wctomb_l(char *, wchar_t, locale_t);
+int mbtowc_l(wchar_t * __restrict, const char * __restrict, size_t,
+ locale_t);
+size_t wcstombs_l(char * __restrict, const wchar_t * __restrict, size_t,
+ locale_t);
+
+# endif /* _NETBSD_SOURCE */
+#endif /* _POSIX_C_SOURCE >= 200809 || _NETBSD_SOURCE */
+
__END_DECLS
#endif /* !_STDLIB_H_ */
Index: src/include/string.h
diff -u src/include/string.h:1.39.8.2 src/include/string.h:1.39.8.3
--- src/include/string.h:1.39.8.2 Tue Oct 30 18:58:33 2012
+++ src/include/string.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: string.h,v 1.39.8.2 2012/10/30 18:58:33 yamt Exp $ */
+/* $NetBSD: string.h,v 1.39.8.3 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 1990, 1993
@@ -89,12 +89,6 @@ size_t strnlen(const char *, size_t);
/* also in unistd.h */
__aconst char *strsignal(int);
#endif /* __STRSIGNAL_DECLARED */
-/*
- * For POSIX compliance, we still need:
- * strcoll_l
- * strerror_l
- * strxfrm_l
- */
#endif
__END_DECLS
@@ -109,11 +103,23 @@ char *strsep(char **, const char *);
char *stresep(char **, const char *, int);
char *strndup(const char *, size_t);
void *memrchr(const void *, int, size_t);
-void __explicit_bzero(void *, size_t);
-int __consttime_bcmp(const void *, const void *, size_t);
+void *explicit_memset(void *, int, size_t);
+int consttime_memequal(const void *, const void *, size_t);
__END_DECLS
#endif
+#if (_POSIX_C_SOURCE - 0) >= 200809L || defined(_NETBSD_SOURCE)
+# ifndef __LOCALE_T_DECLARED
+typedef struct _locale *locale_t;
+# define __LOCALE_T_DECLARED
+# endif
+__BEGIN_DECLS
+int strcoll_l(const char *, const char *, locale_t);
+size_t strxfrm_l(char * __restrict, const char * __restrict, size_t, locale_t);
+__aconst char *strerror_l(int, locale_t);
+__END_DECLS
+#endif /* _POSIX_C_SOURCE || _NETBSD_SOURCE */
+
#if _FORTIFY_SOURCE > 0
#include <ssp/string.h>
#endif
Index: src/include/time.h
diff -u src/include/time.h:1.40.6.1 src/include/time.h:1.40.6.2
--- src/include/time.h:1.40.6.1 Tue Oct 30 18:58:33 2012
+++ src/include/time.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: time.h,v 1.40.6.1 2012/10/30 18:58:33 yamt Exp $ */
+/* $NetBSD: time.h,v 1.40.6.2 2014/05/22 11:36:35 yamt Exp $ */
/*
* Copyright (c) 1989, 1993
@@ -174,6 +174,16 @@ struct tm *localtime_r(const time_t * __
#endif
#endif
+#if (_POSIX_C_SOURCE - 0) >= 200809L || defined(_NETBSD_SOURCE)
+# ifndef __LOCALE_T_DECLARED
+typedef struct _locale *locale_t;
+# define __LOCALE_T_DECLARED
+# endif
+size_t strftime_l(char * __restrict, size_t, const char * __restrict,
+ const struct tm * __restrict, locale_t)
+ __attribute__((__format__(__strftime__, 3, 0)));
+#endif
+
#if defined(_NETBSD_SOURCE)
typedef struct __state *timezone_t;
@@ -200,9 +210,14 @@ void tzfree(const timezone_t) __RENAME(_
const char *tzgetname(const timezone_t, int) __RENAME(__tzgetname50);
#endif
+size_t strftime_lz(const timezone_t, char * __restrict, size_t,
+ const char * __restrict, const struct tm * __restrict, locale_t)
+ __attribute__((__format__(__strftime__, 4, 0)));
size_t strftime_z(const timezone_t, char * __restrict, size_t,
const char * __restrict, const struct tm * __restrict)
__attribute__((__format__(__strftime__, 4, 0)));
+char *strptime_l(const char * __restrict, const char * __restrict,
+ struct tm * __restrict, locale_t);
#endif /* _NETBSD_SOURCE */
Index: src/include/ttyent.h
diff -u src/include/ttyent.h:1.14 src/include/ttyent.h:1.14.48.1
--- src/include/ttyent.h:1.14 Mon Apr 17 23:29:21 2006
+++ src/include/ttyent.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: ttyent.h,v 1.14 2006/04/17 23:29:21 salo Exp $ */
+/* $NetBSD: ttyent.h,v 1.14.48.1 2014/05/22 11:36:35 yamt Exp $ */
/*
* Copyright (c) 1989, 1993
@@ -35,6 +35,7 @@
#define _TTYENT_H_
#include <sys/cdefs.h>
+#include <sys/featuretest.h>
#define _PATH_TTYS "/etc/ttys"
Index: src/include/unistd.h
diff -u src/include/unistd.h:1.127.2.5 src/include/unistd.h:1.127.2.6
--- src/include/unistd.h:1.127.2.5 Wed Jan 23 00:05:21 2013
+++ src/include/unistd.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: unistd.h,v 1.127.2.5 2013/01/23 00:05:21 yamt Exp $ */
+/* $NetBSD: unistd.h,v 1.127.2.6 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 1998, 1999, 2008 The NetBSD Foundation, Inc.
@@ -159,6 +159,16 @@ extern int optopt;
#endif
/*
+ * The Open Group Base Specifications, Issue 5; IEEE Std 1003.1-2001 (POSIX)
+ */
+#if (_POSIX_C_SOURCE - 0) >= 200112L || (_XOPEN_SOURCE - 0) >= 500 || \
+ defined(_NETBSD_SOURCE)
+#if __SSP_FORTIFY_LEVEL == 0
+ssize_t readlink(const char * __restrict, char * __restrict, size_t);
+#endif
+#endif
+
+/*
* The Open Group Base Specifications, Issue 6; IEEE Std 1003.1-2001 (POSIX)
*/
#if (_POSIX_C_SOURCE - 0) >= 200112L || (_XOPEN_SOURCE - 0) >= 600 || \
@@ -260,9 +270,6 @@ int lchown(const char *, uid_t, gid_t)
int lchown(const char *, uid_t, gid_t);
#endif
int lockf(int, int, off_t);
-#if __SSP_FORTIFY_LEVEL == 0
-ssize_t readlink(const char * __restrict, char * __restrict, size_t);
-#endif
void *sbrk(intptr_t);
/* XXX prototype wrong! */
int setpgrp(pid_t, pid_t); /* obsoleted by setpgid() */
@@ -298,11 +305,7 @@ ssize_t pwrite(int, const void *, size_
defined(_INCOMPLETE_XOPEN_C063) || defined(_NETBSD_SOURCE)
int linkat(int, const char *, int, const char *, int);
int renameat(int, const char *, int, const char *);
-int mkfifoat(int, const char *, mode_t);
-int mknodat(int, const char *, mode_t, uint32_t);
-int mkdirat(int, const char *, mode_t);
int faccessat(int, const char *, int, int);
-int fchmodat(int, const char *, mode_t, int);
int fchownat(int, const char *, uid_t, gid_t, int);
int readlinkat(int, const char *, char *, size_t);
int symlinkat(const char *, int, const char *);
Index: src/include/util.h
diff -u src/include/util.h:1.59.2.2 src/include/util.h:1.59.2.3
--- src/include/util.h:1.59.2.2 Wed Jan 16 05:32:23 2013
+++ src/include/util.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: util.h,v 1.59.2.2 2013/01/16 05:32:23 yamt Exp $ */
+/* $NetBSD: util.h,v 1.59.2.3 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 1995
@@ -73,6 +73,7 @@ struct sockaddr;
char *flags_to_string(unsigned long, const char *);
pid_t forkpty(int *, char *, struct termios *, struct winsize *);
const char *getbootfile(void);
+int getbyteorder(void);
off_t getlabeloffset(void);
int getlabelsector(void);
int getlabelusesmbr(void);
Index: src/include/vis.h
diff -u src/include/vis.h:1.19.4.1 src/include/vis.h:1.19.4.2
--- src/include/vis.h:1.19.4.1 Wed Jan 23 00:05:21 2013
+++ src/include/vis.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: vis.h,v 1.19.4.1 2013/01/23 00:05:21 yamt Exp $ */
+/* $NetBSD: vis.h,v 1.19.4.2 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 1990, 1993
@@ -95,9 +95,12 @@ int strsnvis(char *, size_t, const char
int strvisx(char *, const char *, size_t, int);
int strnvisx(char *, size_t, const char *, size_t, int);
+int strenvisx(char *, size_t, const char *, size_t, int, int *);
int strsvisx(char *, const char *, size_t, int, const char *);
int strsnvisx(char *, size_t, const char *, size_t, int, const char *);
+int strsenvisx(char *, size_t, const char *, size_t , int, const char *,
+ int *);
int strunvis(char *, const char *);
int strnunvis(char *, size_t, const char *);
Index: src/include/wchar.h
diff -u src/include/wchar.h:1.30 src/include/wchar.h:1.30.2.1
--- src/include/wchar.h:1.30 Sun Jul 17 20:54:34 2011
+++ src/include/wchar.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: wchar.h,v 1.30 2011/07/17 20:54:34 joerg Exp $ */
+/* $NetBSD: wchar.h,v 1.30.2.1 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c)1999 Citrus Project,
@@ -145,7 +145,8 @@ long int wcstol(const wchar_t * __restri
double wcstod(const wchar_t * __restrict, wchar_t ** __restrict);
#if defined(_ISOC99_SOURCE) || (__STDC_VERSION__ - 0) > 199901L || \
- defined(_NETBSD_SOURCE)
+ defined(_NETBSD_SOURCE) || \
+ (_POSIX_C_SOURCE - 0) >= 200112L || (_XOPEN_SOURCE - 0) >= 600
float wcstof(const wchar_t * __restrict, wchar_t ** __restrict);
long double wcstold(const wchar_t * __restrict, wchar_t ** __restrict);
@@ -181,7 +182,8 @@ int vwprintf(const wchar_t * __restrict,
int wprintf(const wchar_t * __restrict, ...);
int wscanf(const wchar_t * __restrict, ...);
#if defined(_ISOC99_SOURCE) || (__STDC_VERSION__ - 0) > 199901L || \
- defined(_NETBSD_SOURCE)
+ defined(_NETBSD_SOURCE) || \
+ (_POSIX_C_SOURCE - 0) >= 200112L || (_XOPEN_SOURCE - 0) >= 600
int vfwscanf(FILE * __restrict, const wchar_t * __restrict, __va_list);
int vswscanf(const wchar_t * __restrict, const wchar_t * __restrict,
__va_list);
@@ -206,4 +208,83 @@ __END_DECLS
#define putwc(wc, f) fputwc((wc), (f))
#define putwchar(wc) putwc((wc), stdout)
+#if (_POSIX_C_SOURCE - 0) >= 200809L || defined(_NETBSD_SOURCE)
+# ifndef __LOCALE_T_DECLARED
+typedef struct _locale *locale_t;
+# define __LOCALE_T_DECLARED
+# endif
+__BEGIN_DECLS
+size_t mbsnrtowcs(wchar_t * __restrict, const char ** __restrict, size_t,
+ size_t, mbstate_t * __restrict);
+size_t wcsnrtombs(char * __restrict, const wchar_t ** __restrict, size_t,
+ size_t, mbstate_t * __restrict);
+
+int wcscoll_l(const wchar_t *, const wchar_t *, locale_t);
+size_t wcsxfrm_l(wchar_t *, const wchar_t *, size_t, locale_t);
+int wcsncasecmp_l(const wchar_t *, const wchar_t *, size_t, locale_t);
+int wcscasecmp_l(const wchar_t *, const wchar_t *, locale_t);
+
+size_t wcsftime_l(wchar_t * __restrict, size_t, const wchar_t * __restrict,
+ const struct tm * __restrict, locale_t);
+
+float wcstof_l(const wchar_t * __restrict, wchar_t ** __restrict, locale_t);
+double wcstod_l(const wchar_t * __restrict, wchar_t ** __restrict, locale_t);
+long double wcstold_l(const wchar_t * __restrict, wchar_t ** __restrict,
+ locale_t);
+long int wcstol_l(const wchar_t * __restrict, wchar_t ** __restrict, int,
+ locale_t);
+unsigned long int wcstoul_l(const wchar_t * __restrict,
+ wchar_t ** __restrict, int, locale_t);
+/* LONGLONG */
+long long int wcstoll_l(const wchar_t * __restrict, wchar_t ** __restrict, int,
+ locale_t);
+/* LONGLONG */
+unsigned long long int wcstoull_l(const wchar_t * __restrict,
+ wchar_t ** __restrict, int, locale_t);
+int wcwidth_l(wchar_t, locale_t);
+int wcswidth_l(const wchar_t *, size_t, locale_t);
+__END_DECLS
+#endif /* _POSIX_C_SOURCE || _NETBSD_SOURCE */
+
+#if defined(_NETBSD_SOURCE)
+__BEGIN_DECLS
+wint_t btowc_l(int, locale_t);
+size_t mbrlen_l(const char * __restrict, size_t, mbstate_t * __restrict,
+ locale_t);
+size_t mbrtowc_l(wchar_t * __restrict, const char * __restrict, size_t,
+ mbstate_t * __restrict, locale_t);
+int mbsinit_l(const mbstate_t *, locale_t);
+size_t mbsrtowcs_l(wchar_t * __restrict, const char ** __restrict, size_t,
+ mbstate_t * __restrict, locale_t);
+size_t mbsnrtowcs_l(wchar_t * __restrict, const char ** __restrict, size_t,
+ size_t, mbstate_t * __restrict, locale_t);
+size_t wcrtomb_l(char * __restrict, wchar_t, mbstate_t * __restrict, locale_t);
+size_t wcsrtombs_l(char * __restrict, const wchar_t ** __restrict, size_t,
+ mbstate_t * __restrict, locale_t);
+size_t wcsnrtombs_l(char * __restrict, const wchar_t ** __restrict, size_t,
+ size_t, mbstate_t * __restrict, locale_t);
+int wctob_l(wint_t, locale_t);
+
+int fwprintf_l(FILE * __restrict, locale_t, const wchar_t * __restrict, ...);
+int swprintf_l(wchar_t * __restrict, size_t n, locale_t,
+ const wchar_t * __restrict, ...);
+int vfwprintf_l(FILE * __restrict, locale_t,
+ const wchar_t * __restrict, __va_list);
+int vswprintf_l(wchar_t * __restrict, size_t, locale_t,
+ const wchar_t * __restrict, __va_list);
+int vwprintf_l(locale_t, const wchar_t * __restrict, __va_list);
+int wprintf_l(locale_t, const wchar_t * __restrict, ...);
+
+int fwscanf_l(FILE * __restrict, locale_t, const wchar_t * __restrict, ...);
+int swscanf_l(const wchar_t * __restrict, locale_t, const wchar_t *
+ __restrict, ...);
+int wscanf_l(locale_t, const wchar_t * __restrict, ...);
+int vfwscanf_l(FILE * __restrict, locale_t, const wchar_t * __restrict,
+ __va_list);
+int vswscanf_l(const wchar_t * __restrict, locale_t, const wchar_t * __restrict,
+ __va_list);
+int vwscanf_l(locale_t, const wchar_t * __restrict, __va_list);
+__END_DECLS
+#endif /* _NETBSD_SOURCE */
+
#endif /* !_WCHAR_H_ */
Index: src/include/wctype.h
diff -u src/include/wctype.h:1.7 src/include/wctype.h:1.7.6.1
--- src/include/wctype.h:1.7 Sat Mar 27 22:14:09 2010
+++ src/include/wctype.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: wctype.h,v 1.7 2010/03/27 22:14:09 tnozaki Exp $ */
+/* $NetBSD: wctype.h,v 1.7.6.1 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c)1999 Citrus Project,
@@ -32,6 +32,7 @@
#define _WCTYPE_H_
#include <sys/cdefs.h>
+#include <sys/featuretest.h>
#include <sys/ansi.h>
#ifdef _BSD_WINT_T_
@@ -72,6 +73,31 @@ wint_t towlower(wint_t);
wint_t towupper(wint_t);
wctrans_t wctrans(const char *);
wctype_t wctype(const char *);
+
+#if (_POSIX_C_SOURCE - 0) >= 200809L || defined(_NETBSD_SOURCE)
+# ifndef __LOCALE_T_DECLARED
+typedef struct _locale *locale_t;
+# define __LOCALE_T_DECLARED
+# endif
+int iswalnum_l(wint_t, locale_t);
+int iswalpha_l(wint_t, locale_t);
+int iswblank_l(wint_t, locale_t);
+int iswcntrl_l(wint_t, locale_t);
+int iswdigit_l(wint_t, locale_t);
+int iswgraph_l(wint_t, locale_t);
+int iswlower_l(wint_t, locale_t);
+int iswprint_l(wint_t, locale_t);
+int iswpunct_l(wint_t, locale_t);
+int iswspace_l(wint_t, locale_t);
+int iswupper_l(wint_t, locale_t);
+int iswxdigit_l(wint_t, locale_t);
+int iswctype_l(wint_t, wctype_t, locale_t);
+wint_t towctrans_l(wint_t, wctrans_t, locale_t);
+wint_t towlower_l(wint_t, locale_t);
+wint_t towupper_l(wint_t, locale_t);
+wctrans_t wctrans_l(const char *, locale_t);
+wctype_t wctype_l(const char *, locale_t);
+#endif
__END_DECLS
#endif /* _WCTYPE_H_ */
Index: src/include/rpc/svc.h
diff -u src/include/rpc/svc.h:1.24 src/include/rpc/svc.h:1.24.2.1
--- src/include/rpc/svc.h:1.24 Tue Aug 30 17:06:20 2011
+++ src/include/rpc/svc.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: svc.h,v 1.24 2011/08/30 17:06:20 plunky Exp $ */
+/* $NetBSD: svc.h,v 1.24.2.1 2014/05/22 11:36:35 yamt Exp $ */
/*
* Sun RPC is a product of Sun Microsystems, Inc. and is provided for
@@ -221,7 +221,7 @@ __END_DECLS
* SVCXPRT *xprt;
*/
__BEGIN_DECLS
-extern void xprt_register (SVCXPRT *);
+extern bool_t xprt_register (SVCXPRT *);
__END_DECLS
/*
Index: src/include/rpcsvc/yp_prot.h
diff -u src/include/rpcsvc/yp_prot.h:1.17 src/include/rpcsvc/yp_prot.h:1.17.34.1
--- src/include/rpcsvc/yp_prot.h:1.17 Sat Oct 6 16:17:34 2007
+++ src/include/rpcsvc/yp_prot.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: yp_prot.h,v 1.17 2007/10/06 16:17:34 yamt Exp $ */
+/* $NetBSD: yp_prot.h,v 1.17.34.1 2014/05/22 11:36:35 yamt Exp $ */
/*
* Copyright (c) 1992, 1993 Theo de Raadt <[email protected]>
@@ -287,7 +287,7 @@ struct yppushresp_xfr {
#define YPPUSH_AGE ((unsigned int)2) /* Master's version not newer */
#define YPPUSH_NOMAP ((unsigned int)-1) /* Can't find server for map */
#define YPPUSH_NODOM ((unsigned int)-2) /* Domain not supported */
-#define YPPUSH_RSRC ((unsigned int)-3) /* Local resouce alloc failure */
+#define YPPUSH_RSRC ((unsigned int)-3) /* Local resource alloc failure */
#define YPPUSH_RPC ((unsigned int)-4) /* RPC failure talking to server */
#define YPPUSH_MADDR ((unsigned int)-5) /* Can't get master address */
#define YPPUSH_YPERR ((unsigned int)-6) /* YP server/map db error */
Index: src/include/ssp/string.h
diff -u src/include/ssp/string.h:1.4.8.1 src/include/ssp/string.h:1.4.8.2
--- src/include/ssp/string.h:1.4.8.1 Tue Oct 30 18:58:34 2012
+++ src/include/ssp/string.h Thu May 22 11:36:35 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: string.h,v 1.4.8.1 2012/10/30 18:58:34 yamt Exp $ */
+/* $NetBSD: string.h,v 1.4.8.2 2014/05/22 11:36:35 yamt Exp $ */
/*-
* Copyright (c) 2006 The NetBSD Foundation, Inc.
@@ -31,12 +31,14 @@
#ifndef _SSP_STRING_H_
#define _SSP_STRING_H_
+#include <sys/cdefs.h>
#include <ssp/ssp.h>
__BEGIN_DECLS
void *__memcpy_chk(void *, const void *, size_t, size_t);
void *__memmove_chk(void *, void *, size_t, size_t);
void *__memset_chk(void *, int, size_t, size_t);
+char *__stpcpy_chk(char *, const char *, size_t);
char *__strcat_chk(char *, const char *, size_t);
char *__strcpy_chk(char *, const char *, size_t);
char *__strncat_chk(char *, const char *, size_t, size_t);
@@ -80,6 +82,8 @@ __BEGIN_DECLS
__ssp_bos_icheck3_restrict(memcpy, void *, const void *)
__ssp_bos_icheck3(memmove, void *, const void *)
__ssp_bos_icheck3(memset, void *, int)
+__ssp_bos_icheck2_restrict(stpcpy, char *, const char *)
+__ssp_bos_icheck3_restrict(stpncpy, char *, const char *)
__ssp_bos_icheck2_restrict(strcpy, char *, const char *)
__ssp_bos_icheck2_restrict(strcat, char *, const char *)
__ssp_bos_icheck3_restrict(strncpy, char *, const char *)
@@ -89,6 +93,10 @@ __END_DECLS
#define memcpy(dst, src, len) __ssp_bos_check3(memcpy, dst, src, len)
#define memmove(dst, src, len) __ssp_bos_check3(memmove, dst, src, len)
#define memset(dst, val, len) __ssp_bos_check3(memset, dst, val, len)
+#define stpcpy(dst, src) __ssp_bos_check2(stpcpy, dst, src)
+#if __GNUC_PREREQ__(4,8) || defined(__clang__)
+#define stpncpy(dst, src, len) __ssp_bos_check3(stpncpy, dst, src, len)
+#endif
#define strcpy(dst, src) __ssp_bos_check2(strcpy, dst, src)
#define strcat(dst, src) __ssp_bos_check2(strcat, dst, src)
#define strncpy(dst, src, len) __ssp_bos_check3(strncpy, dst, src, len)