summary refs log tree commit diff
path: root/src/sysdeps
Commit message (Collapse)AuthorAgeFilesLines
* Switch getrandom sysdep back to choose clLaurent Bercot2019-10-261-0/+6
|
* THAT'S IT WE HAVE EASY CROSS-COMPILATION FOLKSLaurent Bercot2019-09-201-43/+0
|
* We're down to ONE rogue sysdep, boys. ONE.Laurent Bercot2019-09-203-53/+0
|
* sysdeps redesign: first part: minimize clr testsLaurent Bercot2019-09-205-33/+30
| | | | | | | | Remaining clr: emptyregex: can be safely guessed to no nullispointer: can't be safely guessed, but do we need the test? devurandom: can't be safely guessed malloc0: can more or less be safely guessed to no
* Big wallclock/stopwatch refactor. It was long overdue.Laurent Bercot2019-09-031-0/+10
| | | | | | | | | | | | | * --enable-clock and --enable-monotonic are gone * tain_sysclock() has been renamed tain_wallclock_read() * tain_wallclock_read() reads from CLOCK_REALTIME (or gettimeofday()) * tain_clockmon[_init]() have been renamed to tain_stopwatch_[read|init]() and now accept a monotonic clock name as an extra argument * tain_now() points to the system (wall) clock by default * tain_now_set_[stopwatch|wallclock]() can be used to switch Now to make a pass on all skarnet.org programs and add a tain_now_set_stopwatch() call everywhere needed... >.>
* Add tryemptyregex/skalibs_regcomp, prepare for 2.8.1.0Laurent Bercot2019-05-111-0/+16
|
* Add skalibs/posixishard.hLaurent Bercot2019-02-191-9/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | This will break things. It's a known issue. Patches to other packages will come later, to adapt them to the new API. To work around brokenness, there needs to be *two* different headers: 1. one to be used before including system headers, that maximizes visibility by enabling system-dependent feature test macros (that will be tested by system headers) 2. one to be used after including system headers, that performs preprocessor tests and defines. skalibs/nonposix.h is the first one. Previously, there was no second one, and the tests were scattered all over. There was a strnlen declaration in skalibs/posixplz.h (which serves a totally different function: declaring things that should be in POSIX, but *are not*, i.e. working around problems in the standard, instead of problems in systems failing to respect the standard), a build-time sysdep for error.h, #defines for MSG_NOSIGNAL, etc. etc. skalibs/posixishard.h now is the second one, and centralizes all the tests. As a result, the eproto sysdep is unnecessary and has been removed. skalibs/error.h is now a static header, it is not built anymore.
* Add DragonFly macro; remove nbwaitall and ancilautocloseLaurent Bercot2019-02-192-133/+0
|
* Get rid of tryancilautoclose testLaurent Bercot2019-02-181-108/+6
|
* Add nullispointer sysdepLaurent Bercot2018-05-031-0/+12
|
* Add byte_zzero, openb_readLaurent Bercot2018-03-011-0/+30
|
* Try strnlen() portability with _POSIX_C_SOURCE...Laurent Bercot2018-01-131-3/+0
|
* GNU manages to botch dirfd() too. POSIX is hard!Laurent Bercot2017-12-211-0/+3
|
* Add dirfd sysdep, because Solaris sucksLaurent Bercot2017-12-211-0/+19
|
* Big 2.6.3.0 reorganizationLaurent Bercot2017-12-217-2/+102
| | | | | | | - Add libposixplz, update headers - Add memmem and friends - Add textmessage to libunixonacid - Update some sysdeps tests
* Add O_DIRECTORY sysdepLaurent Bercot2017-11-221-0/+5
|
* Add nsgetparent sysdepLaurent Bercot2017-08-281-0/+12
|
* Change xexecvep exit codes ; add namespaces sysdepLaurent Bercot2017-08-231-0/+12
|
* Change setgroups() management, in particular add skalibs_setgroups()Laurent Bercot2017-07-161-39/+0
|
* Add egidingroups sysdeps, change fd_close() to void and saving errno, ↵Laurent Bercot2017-07-161-0/+39
| | | | propagate changes
* Accommodate some broken GNU toolchains by including sys/types.h in sysdeps ↵Laurent Bercot2017-05-162-0/+2
| | | | tests
* bugfixes: invalid clockmon detection and futimens detectionLaurent Bercot2017-05-151-0/+3
|
* Adjust ftms for trysetgroups.c (glibc changed APIs without major version ↵Laurent Bercot2017-04-301-0/+8
| | | | bump -_-)
* Fix getrandom() detection: need to run the test, not only link!Laurent Bercot2017-04-261-1/+2
|
* Align ancillary buffers on struct cmsghdr and int boundariesLaurent Bercot2017-04-232-4/+12
|
* More arc4random_addrandom fixes, how can clang be such a PITA ?Laurent Bercot2017-03-161-1/+1
|
* Fix arc4random_addrandom detection for -Werror=pointer-signLaurent Bercot2017-03-161-1/+2
|
* Better pipe2 detection on BSD systemsLaurent Bercot2017-03-151-2/+14
|
* Fix trydevurandom testLaurent Bercot2017-03-151-1/+1
|
* sysdeps tests cleanup. (I expect BSDs to break, as usual.)Laurent Bercot2017-03-1530-77/+24
|
* Types change: big pass on libstddjb and libunixonacidLaurent Bercot2017-02-214-4/+6
| | | | libdatastruct still missing, library still not functional
* More types changesLaurent Bercot2017-02-171-0/+1
| | | | | | | | | New disize Add size_t to the autotypes list Delete redundant and replace-libc files dev_t/ino_t pass Big size_t pass More things missing, still not operational yet
* add arc4random_addrandom sysdep; next batch of types changes.Laurent Bercot2017-02-151-0/+12
| | | | | The library isn't supposed to be functional yet: there are still a lot of type mismatches.
* More work on the types. This commit builds but has errors.Laurent Bercot2017-01-251-0/+22
| | | | | | | Rework src/headers entirely: build skalibs/types.h Convert skalibs/fmtscan.h types. Propagate changes until it builds. There are a lot of incompatible pointer issues remaining, those will be fixed with the buffer overhaul.
* Fix trygetrandom.c to correctly detect getrandom() on muslLaurent Bercot2016-12-051-0/+1
|
* More strict test for SKALIBS_HASTIMER (must have struct itimerspec and ↵Laurent Bercot2016-10-241-2/+4
| | | | struct sigevent too)
* Add the alarm library, first draft.Laurent Bercot2016-10-242-0/+22
|
* Clean up and modernize librandom.Laurent Bercot2016-10-143-54/+33
| | | | | | | | | | | | | | | | | | | | | | Correct random number generation has historically been suprisingly painful to achieve. There was no standard, every system behaved in a subtly different way, and there were a few userland initiatives to get decent randomness, all incompatible of course. The situation is a bit better now, we're heading towards some standardization. The arc4random() series of functions is a good API, and available on a lot of systems - unfortunately not Linux, but on Linux the new getrandom() makes using /dev/random obsolete. So I removed the old crap in librandom, dropped EGD support, dropped dynamic backend selection, made a single API series (random_* instead of goodrandom_* and badrandom_*), added an arc4random backend and a getrandom backend, and defaulted to /dev/urandom backed up by SURF in the worst case. This should be much smaller and logical. However, it's a major API break, so the skarnet.org stack will be changed to adapt.
* Fix tryfutimens.c header inclusion. The test should be good now...Laurent Bercot2016-04-271-0/+4
|
* Help Solaris finds its own futimens() in its own assLaurent Bercot2016-04-271-3/+5
|
* Even less standards for futimes()Laurent Bercot2016-04-271-0/+2
|
* futimes() is not POSIX, so add some ftmsLaurent Bercot2016-04-271-0/+4
|
* Add new sysdeps for futimens() and futimes(), adapt touch() implementationLaurent Bercot2016-04-272-0/+23
|
* - sysdeps for strnlen (Solaris... sigh)Laurent Bercot2015-07-131-0/+4
| | | | - rc for 2.3.5.2
* Applied Roman Kimov's fixes v2.3.1.3Laurent Bercot2015-03-131-1/+0
|
* Add _GNU_SOURCE to trynbwaitall.c because glibc headersLaurent Bercot2014-12-311-0/+3
| | | | | don't define kill() with only _BSD_SOURCE. That's very disappointing from GNU.
* OK, this one works, and the problem was actually on my side (failure toLaurent Bercot2014-12-213-19/+4
| | | | | | use CMSG_LEN where required in tryancilautoclose). Also, good news: the sys/param.h inclusion in FreeBSD isn't necessary anymore.
* next generation of the FreeBSD fix...Laurent Bercot2014-12-213-15/+5
|
* So MSG_WAITALL can block even with MSG_DONTWAIT... wtfbsdseriously.Laurent Bercot2014-12-211-13/+6
| | | | | Only include MSG_WAITALL when it's tested nb, then. Also test yet another fix for the tryancilautoclose FreeBSD problem.
* Stricter trynbwaitall to actually catch the problemsLaurent Bercot2014-12-211-3/+8
|