History log of /openbsd-src/lib/libc/hidden/stdlib.h (Results 1 – 20 of 20)
Revision Date Author Comments
# 1aa88f2b 01-Mar-2024 millert <millert@openbsd.org>

Add mkdtemps(3), like mkdtemp(3) but with a suffix.
OK deraadt@ tb@


# 2ce65aae 19-Jan-2024 millert <millert@openbsd.org>

Make our mktemp(3) callback-driven and split into multiple files.
Previously, calling any of the mktemp(3) family would pull in
lstat(2), open(2) and mkdir(2). Now, only the necessary system
calls w

Make our mktemp(3) callback-driven and split into multiple files.
Previously, calling any of the mktemp(3) family would pull in
lstat(2), open(2) and mkdir(2). Now, only the necessary system
calls will be reachable from the binary. OK deraadt@ guenther@

show more ...


# d88bac1a 27-May-2023 otto <otto@openbsd.org>

Remove malloc interposition, a workaround that was once needed for emacs
ok guenther@


# 170ca6cd 18-May-2023 guenther <guenther@openbsd.org>

Add PROTO_NORMAL() declarations for the remaining syscalls, to avoid
future, inadvertant PLT entries. Move the __getcwd and __realpath
declarations to hidden/{stdlib,unistd}.h to consolidate and rem

Add PROTO_NORMAL() declarations for the remaining syscalls, to avoid
future, inadvertant PLT entries. Move the __getcwd and __realpath
declarations to hidden/{stdlib,unistd}.h to consolidate and remove
duplication.

ok tb@ otto@ deraadt@

show more ...


# e03a3151 10-May-2019 otto <otto@openbsd.org>

Inroduce malloc_conceal() and calloc_conceal(). Similar to their
counterparts but return memory in pages marked MAP_CONCEAL and on
free() freezero() is actually called.


# acb3f83f 21-Nov-2018 otto <otto@openbsd.org>

Introducing malloc_usable_size() was a mistake. While some other
libs have it, it is a function that is considered harmful, so:

Delete malloc_usable_size(). It is a function that blurs the line
betw

Introducing malloc_usable_size() was a mistake. While some other
libs have it, it is a function that is considered harmful, so:

Delete malloc_usable_size(). It is a function that blurs the line
between malloc managed memory and application managed memory and
exposes some of the internal workings of malloc. If an application
relies on that, it is likely to break using another implementation
of malloc. If you want usable size x, just allocate x bytes. ok
deraadt@ and other devs

show more ...


# f5c5425b 18-Nov-2018 otto <otto@openbsd.org>

Implement malloc_usable_size(); ok millert@ deraadt@ and jmc@ for the man page


# 7a9442eb 05-Nov-2018 otto <otto@openbsd.org>

Implement C11's aligned_alloc(3). ok guenther@


# 3a628b46 05-Sep-2017 schwarze <schwarze@openbsd.org>

New POSIX xlocale implementation written from scratch.
Complete in the sense that all POSIX *locale(3) and *_l(3) functions
are included, but in OpenBSD, we of course only really care about
LC_CTYPE

New POSIX xlocale implementation written from scratch.
Complete in the sense that all POSIX *locale(3) and *_l(3) functions
are included, but in OpenBSD, we of course only really care about
LC_CTYPE and we only support ASCII and UTF-8.

With important help from kettenis@, guenther@, and jca@.
Repeated testing in ports bulk builds by naddy@.
Additional testing by jca@, sebastia@, dcoppa@, and others.
OK kettenis@ dcoppa@, and guenther@ on an earlier version.
Riding guenther@'s libc/librthread major bump.

show more ...


# 4520aa4f 20-May-2017 millert <millert@openbsd.org>

Use David Musser's introsort algorithm to fall back to heapsort(3)
when the recursion depth reaches 2*lg(n + 1). This avoids quicksort's
quadratic behavior for pathological input without appreciably

Use David Musser's introsort algorithm to fall back to heapsort(3)
when the recursion depth reaches 2*lg(n + 1). This avoids quicksort's
quadratic behavior for pathological input without appreciably
changing the average run time.

show more ...


# c0e0c2a5 10-Apr-2017 otto <otto@openbsd.org>

Introducing freezero(3) a version of free that guarantees the process
no longer has access to the content of a memmory object. It does
this by either clearing (if the object memory remains cached) or

Introducing freezero(3) a version of free that guarantees the process
no longer has access to the content of a memmory object. It does
this by either clearing (if the object memory remains cached) or
by calling munmap(2). ok millert@, deraadt@, guenther@

show more ...


# 3f0eb563 06-Mar-2017 otto <otto@openbsd.org>

Introducing recallocarray(3), a blend of calloc(3) and reallocarray(3)
with the added feature that released memory is cleared. Much input from various
developers. ok deraadt@ tom@


# 60e29447 14-Aug-2016 guenther <guenther@openbsd.org>

Reduce qabs() and qdiv() to aliases of llabs() and lldiv().
Merge the manual pages and call them deprecated there.

ok and manpage tweak jmc@, ok natano@


# e4224292 13-Mar-2016 guenther <guenther@openbsd.org>

environ and __progname are not declared in a public header; declare them
in libc's hidden/stdlib.h instead of in each .c file that needs one

ok deraadt@ gsoares@ mpi@


# 6897476f 10-Nov-2015 guenther <guenther@openbsd.org>

libc.so can't be unloaded, so move the hidden atexit() and pthread_atfork()
stubs for the executable from crtbegin.o into libc, which lets them be
excluded from static links that don't use them.
For

libc.so can't be unloaded, so move the hidden atexit() and pthread_atfork()
stubs for the executable from crtbegin.o into libc, which lets them be
excluded from static links that don't use them.
For this, drop the normal crt{begin,end}S.o from libc.so: the .init and .fini
sections for libc aren't called at the right times anyway, so it's good that
they're unused. libc.so just needs __guard_local and the .note.openbsd.ident
section, so add them to stack_protector.c for now (this will be improved)

"good time" deraadt@

show more ...


# 57b9636d 25-Oct-2015 guenther <guenther@openbsd.org>

Hide __atexit and __atexit_register_cleanup()
Wrap __cxa_{atexit,finalize}() so the call from exit() goes direct
Switch regress/lib/libc/atexit/ to be built with -static so that it can
still access

Hide __atexit and __atexit_register_cleanup()
Wrap __cxa_{atexit,finalize}() so the call from exit() goes direct
Switch regress/lib/libc/atexit/ to be built with -static so that it can
still access __atexit*

ok millert@ jca@

show more ...


# 14437dc7 19-Sep-2015 guenther <guenther@openbsd.org>

Don't wrap initialized variables: binutils appears to be mishandling them
on arm and m88k

problems with optind observed by jsg@


# 55148231 13-Sep-2015 guenther <guenther@openbsd.org>

For now, permit overriding of the malloc family, to make emacs happy


# c68f07f6 13-Sep-2015 guenther <guenther@openbsd.org>

Overshot w/PROTO_DEPRECATED: seed48_deterministic() is used internally


# 0d943ef0 13-Sep-2015 guenther <guenther@openbsd.org>

Wrap <stdlib.h> so that calls go direct and the symbols not in the
C standard are all weak.
Apply __{BEGIN,END}_HIDDEN_DECLS to gdtoa{,imp}.h, hiding the
arch-specific __strtorx, __ULtox_D2A, __strto

Wrap <stdlib.h> so that calls go direct and the symbols not in the
C standard are all weak.
Apply __{BEGIN,END}_HIDDEN_DECLS to gdtoa{,imp}.h, hiding the
arch-specific __strtorx, __ULtox_D2A, __strtorQ, __ULtoQ_D2A symbols.

show more ...