Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Remove the trailing newline, and ensure the string
returned is always null-terminated.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Reuse the machinery from readlink
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
These are supposed to be specialisations for speed, but these are just
faked. Some warnings were added too, if they return infinite values.
As a side effect of this change, scalbl is also now implemented.
As noted, not all functions are implemented; the big two blockers are an
implementation of j0l and y0l; I imagine Bessel functions aren't too
widely used, so I doubt that many things will want them. Someone (not
it) can implement them later.
|
|
__VA_ARGS__ expects one or more arguments; this is a cheesy hack to
allow passing only a format string (which is often all you need for
small asserts).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
This allows programs run through gcompat to fork and re-exec themselves.
It fixes readlink("/proc/self/exe") to return the executable's absolute
path, instead of musl's path.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
This takes advantage of the (lack of a) musl implementation for
simplicity.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
On musl pread and pread64 are the same thing.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
The other unimplemented signal function in LSB is sigreturn, with is not
really implementable.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
These take advantage of the musl implementation for simplicity.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
This follows the exceptionally-detailed functional description in the
manual page.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
* Document functions and sort by name.
* Explicitly include stddef.h.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
* Add all checked string functions from LSB, plus those found in use
in other applications. Document those functions from LSB as such.
* Use a consistent structure and paramater names for all functions.
* Fix multiple off-by-one errors.
* Use a less hacky and more optimized rawmemchr.
* Sort functions by name.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
* Fix prototype of __realpath_chk.
* Add all strto* functions from LSB, plus the ones thata were previously
incorrectly in string.c
The main missing LSB functions are the reentrant random functions, which
should not be used anyway.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
* Add all (non-wchar) stdio functions from LSB, plus those found in use
in other applications. Document those functions from LSB as such.
* Use a consistent structure and paramater names for all functions.
* flag == 0 means FORTIFY_SOURCE=1, so the implemented checks should be
unconditional.
* Add all possible checks without parsing the format string.
* Move functions from wchar.h to their own appropriately-named file.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
* Make function pointer static.
* Only initialize function pointer once.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
* Make comment style consistent with the rest of the project, and remove
outdated header name.
* Remove "static inline" from functions (this is no longer a header).
* Check statp for NULL in res_ninit like in res_nclose.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Like fgetpwent_r/getpwent_r, these require a deep copy of the structure
into the caller-provided buffer. This is nontrivial for the array of
strings member.
getgrent_r is required by LSB.
[NOTE: I'm not too happy with the macro, but it works. Any suggestions?]
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
These functions require a deep copy of the structure into the
caller-provided buffer. Also make sure to store NULL in result on error.
Use the stream to differentiate the two functions and avoid duplication.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
* Add the missing parameter to __register_atfork.
* Sort and document functions.
__pthread_register_cancel and __pthread_unregister_cancel should be
implemented at some point, or else pthread_cleanup_pop(true) will not
work properly and could cause deadlocks in programs that use it.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
* Add finite() variants, needed by some applications.
* Add remaining long double variants of existing functions.
* Sort and document existing functions, including where referenced in
the LSB standard.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Signed-off-by: Samuel Holland <samuel@sholland.org>
|
|
Changes to existing code:
* Make explicit comparison against NULL.
* Adjust debug message for readability.
Signed-off-by: Samuel Holland <samuel@sholland.org>
|