|
Revision tags: release/12.2.0, release/11.4.0, release/12.1.0, release/11.3.0, release/12.0.0 |
|
| #
a29173be |
| 26-Aug-2018 |
Xin LI <[email protected]> |
Remove arc4random_stir and arc4random_addrandom from stdlib.h. Users of arc4random(3) should never call them directly.
All ports tree usage was fixed as part of bug 230756.
Relnotes: yes Appr
Remove arc4random_stir and arc4random_addrandom from stdlib.h. Users of arc4random(3) should never call them directly.
All ports tree usage was fixed as part of bug 230756.
Relnotes: yes Approved by: re (marius), exp-run (bug 230756 by portmgr antoine)
show more ...
|
| #
c1e80940 |
| 19-Aug-2018 |
Xin LI <[email protected]> |
Update userland arc4random() with OpenBSD's Chacha20 based arc4random().
ObsoleteFiles.inc:
Remove manual pages for arc4random_addrandom(3) and arc4random_stir(3).
contrib/ntp/lib/isc/
Update userland arc4random() with OpenBSD's Chacha20 based arc4random().
ObsoleteFiles.inc:
Remove manual pages for arc4random_addrandom(3) and arc4random_stir(3).
contrib/ntp/lib/isc/random.c: contrib/ntp/sntp/libevent/evutil_rand.c:
Eliminate in-tree usage of arc4random_addrandom().
crypto/heimdal/lib/roken/rand.c: crypto/openssh/config.h:
Eliminate in-tree usage of arc4random_stir().
include/stdlib.h:
Remove arc4random_stir() and arc4random_addrandom() prototypes, provide temporary shims for transistion period.
lib/libc/gen/Makefile.inc:
Hook arc4random-compat.c to build, add hint for Chacha20 source for kernel, and remove arc4random_addrandom(3) and arc4random_stir(3) links.
lib/libc/gen/arc4random.c:
Adopt OpenBSD arc4random.c,v 1.54 with bare minimum changes, use the sys/crypto/chacha20 implementation of keystream.
lib/libc/gen/Symbol.map:
Remove arc4random_stir and arc4random_addrandom interfaces.
lib/libc/gen/arc4random.h:
Adopt OpenBSD arc4random.h,v 1.4 but provide _ARC4_LOCK of our own.
lib/libc/gen/arc4random.3:
Adopt OpenBSD arc4random.3,v 1.35 but keep FreeBSD r114444 and r118247.
lib/libc/gen/arc4random-compat.c:
Compatibility shims for arc4random_stir and arc4random_addrandom functions to preserve ABI. Log once when called but do nothing otherwise.
lib/libc/gen/getentropy.c: lib/libc/include/libc_private.h:
Fold __arc4_sysctl into getentropy.c (renamed to arnd_sysctl). Remove from libc_private.h as a result.
sys/crypto/chacha20/chacha.c: sys/crypto/chacha20/chacha.h:
Make it possible to use the kernel implementation in libc.
PR: 182610 Reviewed by: cem, markm Obtained from: OpenBSD Relnotes: yes Differential Revision: https://reviews.freebsd.org/D16760
show more ...
|
|
Revision tags: release/11.2.0 |
|
| #
b8d1747e |
| 22-Jan-2018 |
Pedro F. Giffuni <[email protected]> |
Use the __alloc_size2 attribute where relevant.
This follows the documented use in GCC. It is basically only relevant for calloc(3), reallocarray(3) and mallocarray(9).
Suggested by: Mark Millard
Use the __alloc_size2 attribute where relevant.
This follows the documented use in GCC. It is basically only relevant for calloc(3), reallocarray(3) and mallocarray(9).
Suggested by: Mark Millard
Reference: https://docs.freebsd.org/cgi/mid.cgi?9DE674C6-EAA3-4E8A-906F-446E74D82FC4
show more ...
|
| #
dd5edb11 |
| 09-Jan-2018 |
Pedro F. Giffuni <[email protected]> |
Use the __result_use_check attribute also for reallocf(3).
The GCC attribute causes a warning to be emitted if a caller of the function with this attribute does not use its return value. Unlike the
Use the __result_use_check attribute also for reallocf(3).
The GCC attribute causes a warning to be emitted if a caller of the function with this attribute does not use its return value. Unlike the traditional realloc, with reallocf(3) we don't have to check for NULL values but we still have to make sure the result is used.
MFC after: 3 days
show more ...
|
| #
16545cf5 |
| 23-Dec-2017 |
Mariusz Zaborski <[email protected]> |
Introduce the daemonfd function.
The daemonfd function is equivalent to the daemon(3) function expect that arguments are descriptors. For example dhclient(8) which is sandboxed is unable to open /de
Introduce the daemonfd function.
The daemonfd function is equivalent to the daemon(3) function expect that arguments are descriptors. For example dhclient(8) which is sandboxed is unable to open /dev/null to close stdio instead it's allows to fail daemon(3) function to close the descriptors and then do it explicit in code. Instead of such hacks we can use now daemonfd.
This API can be also helpful to migrate system to platforms like CheriBSD.
Reviewed by: brooks@, bcr@, jilles@ (earlier version) Differential Revision: https://reviews.freebsd.org/D13433
show more ...
|
| #
383f241d |
| 23-Nov-2017 |
Konstantin Belousov <[email protected]> |
Remove lint support from system headers and MD x86 headers.
Reviewed by: dim, jhb Discussed with: imp Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D13156
|
| #
2321c474 |
| 20-Nov-2017 |
Pedro F. Giffuni <[email protected]> |
include: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 3-Clause license.
The Software Package Data Exchange (SPDX) group provides a specification to make it easier
include: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 3-Clause license.
The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts.
Special thanks to Wind River for providing access to "The Duke of Highlander" tool: an older (2014) run over FreeBSD tree was useful as a starting point.
show more ...
|
|
Revision tags: release/10.4.0, release/11.1.0 |
|
| #
7582e393 |
| 16-May-2017 |
Dimitry Andric <[email protected]> |
Vendor import of libc++ trunk r303197: https://llvm.org/svn/llvm-project/libcxx/trunk@303197
|
| #
9851b340 |
| 30-Mar-2017 |
Konstantin Belousov <[email protected]> |
Implement the memset_s(3) function as specified by the C11 ISO/IEC 9899:2011 Appendix K 3.7.4.1.
Other needed supporting types, defines and constraint_handler infrastructure is added as specified in
Implement the memset_s(3) function as specified by the C11 ISO/IEC 9899:2011 Appendix K 3.7.4.1.
Other needed supporting types, defines and constraint_handler infrastructure is added as specified in the C11 spec.
Submitted by: Tom Rix <[email protected]> Sponsored by: Juniper Networks Discussed with: ed MFC after: 3 weeks Differential revision: https://reviews.freebsd.org/D9903 Differential revision: https://reviews.freebsd.org/D10161
show more ...
|
| #
10723054 |
| 16-Feb-2017 |
Pedro F. Giffuni <[email protected]> |
Remove outdated claim.
Despite wishful thinking the removal of these old function hasn't happened yet.
MFC after: 3 days
|
| #
649702c5 |
| 28-Jan-2017 |
Pedro F. Giffuni <[email protected]> |
Make use of clang nullability attributes.
Replace uses of the GCC __nonnull__ attribute with the clang nullability qualifiers. The replacement should be transparent for clang developers as the new q
Make use of clang nullability attributes.
Replace uses of the GCC __nonnull__ attribute with the clang nullability qualifiers. The replacement should be transparent for clang developers as the new qualifiers will produce the same warnings and will be useful for static checkers but will not cause aggressive optimizations.
GCC will not produce such warnings and developers will have to use upgraded GCC ports built with the system headers from r312538.
Hinted by: Apple's Libc-1158.20.4, Bionic libc MFC after: 11.1 Release
Differential Revision: https://reviews.freebsd.org/D9004
show more ...
|
| #
f1b298ad |
| 01-Jan-2017 |
Pedro F. Giffuni <[email protected]> |
Remove some uses of the GCC __nonnull() attribute.
While the checks are considered useful, the attribute does dangerous optimizations, removing NULL checks where they can be needed. Remove the uses
Remove some uses of the GCC __nonnull() attribute.
While the checks are considered useful, the attribute does dangerous optimizations, removing NULL checks where they can be needed. Remove the uses of this attribute introduced in r281130: the changes were inspired on Google's bionic where this attribute is not used anymore.
The __nonnull() attribute will be deprecrated from our headers and replaced with the Clang _Nonnull qualifier in the future.
MFC after: 3 days
show more ...
|
| #
1a466ddc |
| 03-Oct-2016 |
Ed Schouten <[email protected]> |
Remove setkey(), encrypt(), des_setkey() and des_cipher().
The setkey() and encrypt() functions are part of XSI, not the POSIX base definitions. There is no strict requirement for us to provide thes
Remove setkey(), encrypt(), des_setkey() and des_cipher().
The setkey() and encrypt() functions are part of XSI, not the POSIX base definitions. There is no strict requirement for us to provide these, especially if we're only going to keep these around as undocumented stubs. The same holds for des_setkey() and des_cipher().
Instead of providing functions that only generate warnings when linking, simply disallow linking against them. The impact of this is relatively low. It only causes two leaf ports to break. I'll see what I can do to help out to get those fixed.
PR: 211626
show more ...
|
|
Revision tags: release/11.0.1, release/11.0.0 |
|
| #
822b22a9 |
| 28-Jul-2016 |
Ed Schouten <[email protected]> |
Change type of MB_CUR_MAX and MB_CUR_MAX_L() to size_t.
POSIX requires that MB_CUR_MAX expands to an expression of type size_t. It currently expands to an int. As these are already macros, don't cha
Change type of MB_CUR_MAX and MB_CUR_MAX_L() to size_t.
POSIX requires that MB_CUR_MAX expands to an expression of type size_t. It currently expands to an int. As these are already macros, don't change the underlying type of these functions. There is no ned to touch those.
Differential Revision: https://reviews.freebsd.org/D6645
show more ...
|
| #
8de6c267 |
| 26-Jul-2016 |
Ed Schouten <[email protected]> |
Fix typing of srandom() and initstate().
POSIX requires that these functions have an unsigned int for their first argument; not an unsigned long.
My reasoning is that we can safely change these fun
Fix typing of srandom() and initstate().
POSIX requires that these functions have an unsigned int for their first argument; not an unsigned long.
My reasoning is that we can safely change these functions without breaking the ABI. As far as I know, our supported architectures either use registers for passing function arguments that are at least as big as long (e.g., amd64), or int and long are of the same size (e.g., i386).
Reviewed by: ache Differential Revision: https://reviews.freebsd.org/D6644
show more ...
|
| #
9143e6e4 |
| 05-Jul-2016 |
Pedro F. Giffuni <[email protected]> |
Remove incorrect attributes from posix_memalign(3) declaration.
Both __alloc_align and __alloc_size can't be used when the function returns a pointer to memory. This fixes breakage when building wit
Remove incorrect attributes from posix_memalign(3) declaration.
Both __alloc_align and __alloc_size can't be used when the function returns a pointer to memory. This fixes breakage when building with clang 3.4:
In file included from /usr/src/svn/usr.sbin/bhyve/atkbdc.c:40: /usr/include/stdlib.h:176:6: error: '__alloc_size__' attribute only applies to functions that return a pointer [-Werror,-Wignored-attributes]
Pointed out by: ngie, cem Approved by: re (gjb)
show more ...
|
|
Revision tags: release/10.3.0 |
|
| #
4ec98362 |
| 23-Mar-2016 |
Dimitry Andric <[email protected]> |
For C++, expose long long types and functions (lldiv_t, llabs, lldiv, etc) in stdlib.h. These will be needed for newer versions of libc++, which uses them for defining overloaded versions of abs() a
For C++, expose long long types and functions (lldiv_t, llabs, lldiv, etc) in stdlib.h. These will be needed for newer versions of libc++, which uses them for defining overloaded versions of abs() and div().
MFC after: 1 week
show more ...
|
| #
b4c64ad9 |
| 30-Dec-2015 |
Dimitry Andric <[email protected]> |
Vendor import of libc++ trunk r256633: https://llvm.org/svn/llvm-project/libcxx/trunk@256633
|
|
Revision tags: release/10.2.0 |
|
| #
ee90489b |
| 15-May-2015 |
Pedro F. Giffuni <[email protected]> |
Make use of GCC alloc_align attribute
This lets the compiler know about the alignment of pointers returned by aligned_alloc(3), posix_memalign(3). and contigmalloc(9)
Currently this is only support
Make use of GCC alloc_align attribute
This lets the compiler know about the alignment of pointers returned by aligned_alloc(3), posix_memalign(3). and contigmalloc(9)
Currently this is only supported in recent gcc but we are ready to use it if clang implements it.
Relnotes: yes
show more ...
|
| #
d0e9981e |
| 01-May-2015 |
Pedro F. Giffuni <[email protected]> |
No need for result_use_check attribute in reallocf(3).
|
| #
8f0baada |
| 01-May-2015 |
Baptiste Daroussin <[email protected]> |
Move reallocarray definition to the _BSD_VISIBLE block Add the required __alloc_size attributes
Requested by: pfg
|
| #
450dfafb |
| 01-May-2015 |
Baptiste Daroussin <[email protected]> |
Import reallocarray(3) from OpenBSD
Add a manpage for it, assign the copyright to the OpenBSD project on it since it is mostly copy/paste from OpenBSD manpage. style(9) fixes
Differential Revision:
Import reallocarray(3) from OpenBSD
Add a manpage for it, assign the copyright to the OpenBSD project on it since it is mostly copy/paste from OpenBSD manpage. style(9) fixes
Differential Revision: https://reviews.freebsd.org/D2420 Reviewed by: kib
show more ...
|
| #
153cbcd6 |
| 06-Apr-2015 |
Pedro F. Giffuni <[email protected]> |
Make use of gcc attributes in some standard include headers.
The `nonnull' attribute specifies that some function parameters should be non-null pointers. This is very useful as it helps the compile
Make use of gcc attributes in some standard include headers.
The `nonnull' attribute specifies that some function parameters should be non-null pointers. This is very useful as it helps the compiler generate warnings on suspicious code and can also enable some small optimizations.
Also start using 'alloc_size' attribute in the allocator functions.
This is an initial step to better integrate our libc with the compiler: these attributes are fully supported by clang and they are also useful for the static analyzer.
Note that due to some bogus internal procedure in the way gcc ports are built they may require updating if they were built before r280801.
Relnotes: yes Hinted by: Android's bionic libc Differential Revision: https://reviews.freebsd.org/D2107
show more ...
|
| #
1693a59a |
| 25-Mar-2015 |
Pedro F. Giffuni <[email protected]> |
Clean sparse spaces.
|
|
Revision tags: release/10.1.0 |
|
| #
f4189cd6 |
| 01-Sep-2014 |
Pedro F. Giffuni <[email protected]> |
Add bsearch_b to the libc map and the stdlib header.
bsearch_b is the Apple blocks enabled version of bsearch(3). This was added to libc in Revision 264042 but the commit missed the declaration requ
Add bsearch_b to the libc map and the stdlib header.
bsearch_b is the Apple blocks enabled version of bsearch(3). This was added to libc in Revision 264042 but the commit missed the declaration required to make use of it.
While here move some other block-related functions to the BSD_VISIBLE block as these are non-standard.
Phabric: D638 Reviewed by: theraven, wollman
show more ...
|