summaryrefslogtreecommitdiff
path: root/src/sysdeps
AgeCommit message (Collapse)Author
2017-02-15 add arc4random_addrandom sysdep; next batch of types changes.Laurent Bercot
The library isn't supposed to be functional yet: there are still a lot of type mismatches.
2017-01-25 More work on the types. This commit builds but has errors.Laurent Bercot
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.
2016-12-05 Fix trygetrandom.c to correctly detect getrandom() on muslLaurent Bercot
2016-10-24 More strict test for SKALIBS_HASTIMER (must have struct itimerspec and ↵Laurent Bercot
struct sigevent too)
2016-10-24 Add the alarm library, first draft.Laurent Bercot
2016-10-14 Clean up and modernize librandom.Laurent Bercot
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.
2016-04-27 Fix tryfutimens.c header inclusion. The test should be good now...Laurent Bercot
2016-04-27 Help Solaris finds its own futimens() in its own assLaurent Bercot
2016-04-27 Even less standards for futimes()Laurent Bercot
2016-04-27 futimes() is not POSIX, so add some ftmsLaurent Bercot
2016-04-27 Add new sysdeps for futimens() and futimes(), adapt touch() implementationLaurent Bercot
2015-07-13 - sysdeps for strnlen (Solaris... sigh)Laurent Bercot
- rc for 2.3.5.2
2015-03-13 Applied Roman Kimov's fixesv2.3.1.3Laurent Bercot
2014-12-31 Add _GNU_SOURCE to trynbwaitall.c because glibc headersLaurent Bercot
don't define kill() with only _BSD_SOURCE. That's very disappointing from GNU.
2014-12-21 OK, this one works, and the problem was actually on my side (failure toLaurent Bercot
use CMSG_LEN where required in tryancilautoclose). Also, good news: the sys/param.h inclusion in FreeBSD isn't necessary anymore.
2014-12-21 next generation of the FreeBSD fix...Laurent Bercot
2014-12-21 So MSG_WAITALL can block even with MSG_DONTWAIT... wtfbsdseriously.Laurent Bercot
Only include MSG_WAITALL when it's tested nb, then. Also test yet another fix for the tryancilautoclose FreeBSD problem.
2014-12-21 Stricter trynbwaitall to actually catch the problemsLaurent Bercot
2014-12-21 So the non-portable MSG_DONTWAIT may alleviate the problem... mightLaurent Bercot
as well use it on architectures that support it.
2014-12-20 Something is rotten in the state of FreeBSD... but we all knew itLaurent Bercot
already. More tentative workarounds.
2014-12-20 FreeBSD now chokes on tryancilautoclose ; tentative fixLaurent Bercot
2014-12-20 Found the BSD unixmessage bug. recvmsg(..., MSG_WAITALL) blocksLaurent Bercot
until buffer full or socket shutdown on BSD, *even if the socket is nonblocking*. So I added an "okwaitall" sysdeps, and won't set MSG_WAITALL on retarded systems.
2014-09-18initial commit with rc for skalibs-2.0.0.0Laurent Bercot