Commit Graph

1644 Commits

Author SHA1 Message Date
christos
d432193098 keep value as an int. 2015-11-20 20:27:20 +00:00
christos
a5c147c83f update to size_t 2015-11-20 20:24:49 +00:00
reinoud
d6424c5393 Revert 2015-11-19 20:57:49 +00:00
reinoud
b4f510032f Fix ANSI-C prototype error 2015-11-19 20:34:47 +00:00
christos
fcc3c9564a PR/50434: Louis Guillaume: Bump the in and out formats to 511 (NAME_MAX) 2015-11-16 17:09:56 +00:00
christos
58d11ee7bb provide a poll(2) based interface. 2015-11-07 23:10:37 +00:00
christos
670a38d899 Put back NULL tests for allocation failures. 2015-11-07 16:58:24 +00:00
nros
b16a5c9dec Add the C11 function aligned_alloc to libc. 2015-11-07 16:21:42 +00:00
christos
cdf9ad9883 Switch to the size-unlimited fd_set. Some code will need to change to be
able to use this if the code allocates its own fd_set's.
2015-11-06 19:42:57 +00:00
christos
fa13c0f43d - provide accessor functions for the fdset's used internally.
- add getreqset2 method that takes a setsize.
2015-11-06 19:35:40 +00:00
christos
1136c97c1c add tzgetgmtoff 2015-10-29 17:48:55 +00:00
christos
3762d08e86 add kinfo_getvmmap() decl 2015-09-24 14:39:37 +00:00
plunky
762a9b9c68 correct __ssp_overlap() to not trigger for adjacent areas 2015-09-03 20:43:47 +00:00
kamil
0c4bdb7434 Do as POSIX says, define the timespec structure in <signal.h>
Extract struct timespec from <sys/time.h> and put into a separate header.

This solution is minimally invasive.
2015-07-31 12:51:32 +00:00
christos
024ced04ed move stdbool.h to sys, reuire pool.h to include <sys/stdbool.h> for bool,
centralize definitions of bool, true, false, to <sys/stdbool.h>
2015-07-29 00:10:25 +00:00
kamil
2cf5f6af2b Add ereallocarr(3) to libutil
ereallocarr(3) wraps reallocarr(3) and embeds return status validation.

Older version reviewed by <riastradh> and <christos>
2015-07-26 02:20:30 +00:00
christos
4701a51d4b updatre with latest from tzcode. 2015-07-11 16:40:53 +00:00
joerg
c7f24be614 Allow SSP enabled functions to conditionally skip the object size check.
Use this is fix the getcwd(NULL, lmit) case, which breaks in lang/parrot.
2015-06-25 18:41:03 +00:00
manu
841339f07f Make PTHREAD_KEYS_MAX dynamically adjustable
NetBSD's PTHREAD_KEYS_MAX is set to 256, which is low compared to
other systems like Linux (1024) or MacOS X (512). As a result some
setups tested on Linux will exhibit problems on NetBSD because of
pthread_keys usage beyond the limit. This happens for instance on
Apache with various module loaded, and in this case no particular
developper can be blamed for going beyond the limit, since several
modules from different sources contribute to the problem.

This patch makes the limit conigurable through the PTHREAD_KEYS_MAX
environement variable. If undefined, the default remains unchanged
(256). In any case, the value cannot be lowered below POSIX-mandated
_POSIX_THREAD_KEYS_MAX (128).

While there:
- use EXIT_FAILURE instead of 1 when calling err(3) in libpthread.
- Reset _POSIX_THREAD_KEYS_MAX to POSIX mandated 128, instead of 256.
2015-05-29 07:37:31 +00:00
christos
a7328ae62a add VIS_NOLOCALE flag 2015-05-23 11:48:31 +00:00
christos
adfc40c594 add a macro to check overlapping pointers 2015-05-09 15:41:47 +00:00
pgoyette
3e6c65d1e2 Add missing PATH_WATCHDOG (to complement PATH_SYSMON and PATH_POWER) 2015-05-06 23:06:26 +00:00
wiz
fc5db8c0e8 Put fseeko, ftello, pread, and pwrite in the POSIX 2001 namespace.
Ok christos, apb, martin
2015-03-24 07:44:52 +00:00
dholland
faa5a4f036 One vscanf_l is ample. 2015-03-05 03:29:02 +00:00
christos
72566f3f96 PR/49715: Henning Petersen: Missing _*_DECLS in stdio.h around popenve. 2015-03-04 13:33:19 +00:00
christos
4d416d886b belated removal of the advertising clause. 2015-02-24 17:56:20 +00:00
christos
5a70401cf6 PR/49684: Pierre Pronchery: readlinkat(2) return type is wrong. 2015-02-22 00:50:30 +00:00
joerg
9b5f3d5723 Move reallocarray under _OPENBSD_SOURCE where it belongs. 2015-02-17 20:33:40 +00:00
joerg
c9baa5968d Introduce reallocarr(3) for easy (re)allocation of memory with overflow
checks. Compared to OpenBSD's reallocarray, makes it easier to avoid memory
leaks on allocation failures and it doesn't depend on malloc(0) != NULL
for correct error checking. Compared to plain realloc, it also avoids
the problem of intermediate integer overflows. The trade-off is the use
of void * to side step C type system with regard to generic pointer to
pointer.
2015-02-17 20:29:20 +00:00
christos
7f04eb91cf add reallocarray 2015-02-05 16:05:46 +00:00
christos
829f81ac73 add popenve(). 2015-01-20 17:29:00 +00:00
christos
0a09d1ccef add estrto{i,u} (Kamil Rytarowski) 2015-01-18 18:10:01 +00:00
christos
f1e6017cdd remove restrict to match with OpenBSD prototype (Kamil Rytarowski) 2015-01-18 17:56:09 +00:00
christos
5bdc27618e Add strtonum protected with _OPENBSD_SOURCE 2015-01-16 18:40:16 +00:00
christos
eba37ae46b strtoi and strtou additions 2015-01-16 18:35:59 +00:00
martin
dce8d6f504 fenv(3) support for hppa 2014-12-27 16:54:02 +00:00
pooka
a238844191 Create the stpncpy() inline only when GCC>=4.8 || clang
Mirrors the stpncpy() wrapper macro and avoids the following:
warning: implicit declaration of function ‘__builtin___stpncpy_chk’
2014-11-29 13:23:48 +00:00
christos
faef322439 add open_{,w}memstream 2014-10-13 00:47:03 +00:00
christos
3a0f0eb646 sync function signatures with tzcode 2014-10-07 21:50:36 +00:00
christos
718924c8d3 add execvpe, execlpe (reviewed by phone) 2014-09-26 19:28:03 +00:00
christos
e36fdb7ec1 add VIS_META/VIS_SHELL support to encode all shell metacharacters.
XXX: /etc/rc.d/wizd fix $
2014-09-26 01:21:07 +00:00
christos
155fdf3987 add strnstr from FreeBSD 2014-09-24 18:16:36 +00:00
matt
bf1be8599e RISC-V support <fenv.h> 2014-09-19 17:39:15 +00:00
matt
65b2ebd6b2 or1k support <fenv.h> 2014-09-03 19:28:20 +00:00
matt
547b3a3b01 Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only.  While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.
2014-08-10 05:56:36 +00:00
christos
8e2b2a8fd3 cast to LHS type and minor KNF. 2014-08-07 17:24:03 +00:00
dholland
d0352e761c Add userlevel manifestations of posix_fallocate and fdiscard, in
unistd.h and libc, and add a man page.

Allow wiggle room in the man page for implementations of fallocate
that either (a) don't fully unwind on failure, leaving new blocks
allocated without changing the file size, or (b) create only in-memory
transient reservations that disappear when crashing or rebooting.

Also, add crossreference to fdiscard from ftruncate(2), and remove the
old BUGS entry from there that called for a generalized version that
allows discarding ranges of a file: that's what fdiscard is.
2014-07-25 08:30:47 +00:00
christos
6030f04a15 amend the new destroy function to take function pointers. 2014-07-20 20:17:21 +00:00
christos
842ee049dd Our hdestroy implementation was non-conformant because it freed the key of
each entry. Add a new function hdestroy1 that allows the user to control
what gets freed. Pointed out by Pedro Giffuni at FreeBSD.
2014-07-20 13:34:17 +00:00
christos
e00a3615cf add mkostemp{s,} mkstemps from FreeBSD 2014-06-18 17:48:22 +00:00
christos
b27e135433 rename to 60 2014-06-12 18:49:37 +00:00
christos
1eb0dcbb1d fix srandom and initstate signatures (from enh at google) 2014-06-12 18:44:36 +00:00
christos
af46c9781f Always use the reentrant rpc_createerr. Otherwise every threaded program
that uses rpc needs to define _REENTRANT to work properly. We'll keep
compatibility but setting the old variable in the library, but we are not
advertising it anymore.
2014-06-06 14:31:24 +00:00
joerg
a8b7899cfa Fix use of getline and friends in C++ code. 2014-05-23 16:48:52 +00:00
kleink
eead6b988e Move declarations of getdelim() and getline() from the (incorrect) ANSI C
section to POSIX-2008.  From Jarmo Jaakkola in PR standards/48788.
2014-05-19 16:04:10 +00:00
pooka
366b2dd23e Apparently clang pretends to be gcc 4.2 but is secretly much awesomer
than gcc 4.2, so enable the stpncpy() wrapper also for clang.
2014-04-25 18:37:38 +00:00
pooka
232a041b7a Wrap stpncpy() iff GNUC_PREREQ(4,8). Fixes USE_SSP=yes builds
with gcc 4.5.
2014-04-24 20:12:56 +00:00
christos
73447a65e4 add stpncpy() 2014-04-06 19:29:58 +00:00
christos
5570e6936a __lwp_park60 2014-01-31 20:44:17 +00:00
christos
1102b348b0 Add the {v,}{warn,err}c function flavors from FreeBSD 2014-01-16 17:22:06 +00:00
christos
eabc0dd171 add ptsname_r 2014-01-08 02:15:42 +00:00
christos
a012ad3d35 PR/4891: Wiz: readlink moved from xopen to base at issue 5. 2014-01-02 23:33:50 +00:00
matt
a9c8f9282e Make ptrdiff_t available in the kernel. 2013-12-12 17:53:03 +00:00
joerg
aceb213538 Allow kernel code to access constant databases by moving cdbr(3) and the
required mi_vector_hash(3) into src/common.
2013-12-11 01:24:08 +00:00
joerg
fcff7df126 Add cdbr_open_mem. 2013-12-05 21:17:23 +00:00
christos
115f51c7be add new internal functions 2013-12-01 00:23:11 +00:00
christos
96c26aba65 use a TAILQ instead of a CIRCLEQ, from FreeBSD 2013-11-22 16:25:01 +00:00
degroote
0809f57592 Expose properly vfwscanf and friends for POSIX_SOURCE >= 200112L 2013-11-21 09:09:52 +00:00
christos
53e3f1af8a gcc-4.8.1 is has a builtin stpncpy, but is missing the __builtin_ ssp
equivalent. go figure.
2013-11-07 02:00:54 +00:00
tron
fb23e6a8a9 Revert my last change. I'm not convinced it is correct and while it seems
to fix some build problems it might cause others.
2013-11-07 00:02:58 +00:00
tron
24f67c8710 Add missing declarations for SSP versions of stpcpy(3) and stpncpy(3). 2013-11-06 21:33:12 +00:00
christos
c15ffc1416 add stp{,n}cpy 2013-11-06 16:31:08 +00:00
njoly
0d88813605 Follow OpenGroup online specification[1], move
fchmodat/mkdirat/mkfifoat/mknodat prototypes to <sys.stat.h>.

[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_stat.h.html
2013-10-09 09:38:21 +00:00
martin
cc4812f36b Allow archs to provide __isinf() and __isnan() as inline functions instead
of macros.
2013-09-16 15:54:42 +00:00
riastradh
1239c2bb08 Publish explicit_memset and consttime_memequal in userland libc.
Remove the double-underscore from the userland versions, and do the
weak alias dance instead, now that these are public parts of libc.

As discussed on tech-userlevel:

https://mail-index.netbsd.org/tech-userlevel/2013/06/24/msg007843.html
(option 3)
2013-08-28 17:47:07 +00:00
riastradh
495fdb7e9a Make explicit_memset match memset's return value. 2013-08-28 15:46:23 +00:00
joerg
cc1cb97e40 Remove outdated comment. 2013-08-27 18:29:28 +00:00
joerg
7efdee83f2 Add strerror_l. 2013-08-19 13:03:12 +00:00
joerg
9c11b12444 Add nl_langinfo_l, catopen_l and wcsftime_l. 2013-08-19 08:03:33 +00:00
christos
2c0b172d86 fix gethostbyaddr prototype per TOG. 2013-08-19 07:18:42 +00:00
riastradh
82db4b9858 Replace consttime_bcmp/explicit_bzero by consttime_memequal/explicit_memset.
consttime_memequal is the same as the old consttime_bcmp.
explicit_memset is to memset as explicit_bzero was to bcmp.

Passes amd64 release and i386/ALL, but I'm sure I missed some spots,
so please let me know.
2013-06-24 04:21:19 +00:00
joerg
85a67e61f7 Add mbsnrtowcs and wcsnrtombs. Approved by core. 2013-05-28 16:57:56 +00:00
joerg
844ef71922 Too many endif. 2013-05-17 14:11:55 +00:00
joerg
2aac8b87b0 Only provide LC_C_LOCALE under _NETBSD_SOURCE. 2013-05-17 13:00:40 +00:00
joerg
e0ac190e1e Provide explicit LC_C_LOCALE accessor and drop the various NULL checks.
Provide LC_GLOBAL_LOCALE in a way that works with all locale functions.
Merge constant data used by the initial global locale and the C locale.
Drop function call layer for _current_locale() and directly return the
locale reference, not a pointer to it. Use protected access for global
variables, so that libc references can avoid the GOT overhead.
2013-05-17 12:55:56 +00:00
christos
df2bc3e4f8 add the signal safe prototypes 2013-05-04 18:30:14 +00:00
riz
05108b4611 Add missing #endif (Hi, Christos!) 2013-05-04 00:37:47 +00:00
christos
017320144a PR/25827, PR/32373: addr AI_SRV 2013-05-03 19:34:13 +00:00
matt
8c629cb493 Add getbyteorder(void) prototype. 2013-05-02 07:17:35 +00:00
joerg
81d0329e8d Make that to process PATH_LOCALE the first time _find_category is
called. Use this to implement newlocale and provide duplocale/freelocale
as well. Based on patches by Takehiko Nozaki with simplications and fix
for the init order by myself.
2013-04-30 00:45:04 +00:00
matt
0b64d3196d Enable fenv support for arm. 2013-04-28 21:07:36 +00:00
joerg
668d06e93f Include at least ctype_bits.h, even when not providing the macros. 2013-04-28 19:39:56 +00:00
joerg
89a508fbb5 Systematically include sys/featuretest.h when _NETBSD_SOURCE is used.
Some are redundant, but make verification with grep much easier.
2013-04-27 21:35:24 +00:00
joerg
e8c1e0eee9 Include sys/featuretest.h before using _NETBSD_SOURCE. 2013-04-27 21:24:27 +00:00
joerg
cce2130bb3 machine/ansi.h is included by sys/ansi.h. 2013-04-27 21:22:05 +00:00
christos
c4c409af9e add at_quick_exit and quick_exit 2013-04-26 18:07:43 +00:00
joerg
3be70ab6e0 Define __bool_true_false_are_defined for C++ as well. 2013-04-26 17:41:34 +00:00
joerg
cd8f66ed62 Don't pollute the name space with the various stdio macros for C++. 2013-04-26 17:37:06 +00:00
joerg
2e24f90028 Provide the long long routines for C++11 code. 2013-04-26 17:36:24 +00:00
joerg
a74df2a38d Do not define the ctype(3) interface via macros for C++. 2013-04-26 17:35:52 +00:00