summaryrefslogtreecommitdiff
path: root/util/libreboot-utils
AgeCommit message (Collapse)Author
2026-03-28nvmutil: clamp rand (rejection sampling)Leah Rowe
clamp rand to eliminate modulo sampling; high values on the randomisation will bias the result. not really critical for mac addresses, but there's no reason not to have this. this patches reduces the chance that two libreboot users will generate the same mac addresses! Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-28util/nvmutil: tidy up hextonumLeah Rowe
i had a bunch of hacks in here because i was previously using very buggy rand. now it's ok. Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-28rand.c: fix initialisation bug in mrkbufLeah Rowe
should be null on bad return Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-27cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-27headerLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-27util/libreboot-utils: fix div by zero in rsizeLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-27util/libreboot-utils: finish implementing hellLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-27challengeLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26further cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26libreboot-utils: improved randomness testLeah Rowe
and the module bias handling is fully correct Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26mkhtemp rand: fix theoretical integer overflowLeah Rowe
extremely theoretical, with a T. T for theoretical. Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26rand/libreboot/utils: prevent div by zeroLeah Rowe
not really a thing. bufsiz would never be zero, unless the demon takes over linux Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26rand: fix modulo bias in rmallocLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26improve 3Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26improve 2Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26improveLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26phrasingLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26nvmutil: remove errno handle in hextonumLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26REAL_POS_IO enable by default in nvmutilLeah Rowe
(for real pwrite/pread. don't use the compatibility one - it works perfectly, but using it is pointless and may have unknown bugs, even though i know it's probably perfect) Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26nvmutil: fix lseek call when read pos i/o enabledLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26mkhtemp readmeLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26more cleanup on rand.cLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26fix makefileLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26libreboot-utils: tidy up rand.cLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26libreboot-utils: new function, scatn()Leah Rowe
concatenate an arbitrary number of strings, pointed to by char ** i'll use this and the next function, dcatn, in an upcoming feature planned for mkhtemp. Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26rmallocLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26util/libreboot-utils: randomisation testLeah Rowe
to test the effectiveness of the rand function Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26mkrstrLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26lbutils: new function, mkrbuf (random malloc)Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26lbutils: close fd on rset failureLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26further clarify intenttLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26lbutils, rset: err if zero bytes requestedLeah Rowe
similar to the logic about other failure states Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26dotLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26lbutils: also check null!Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26lbutils: clarify design regarding urandom/getrandomLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26lbutils, rand: err on zero return (fatal)Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26lbutils: cast to prevent ub in rset()Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26fix offset on urandom falbackLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26libreboot-utils: tidy up randLeah Rowe
make it more efficient. much lower rejection rate now, about 2-5%. deal with bias, but also get numbers in bulk. not too many. i'd say this is about right in terms of performance balance. 64 bytes == 8 large integers. Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26cleanupLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26libreboot-utils: replace rlong() with rset()Leah Rowe
now you can send an arbitrary number of bytes with random numbers Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26libreboot-utils: tidy up randLeah Rowe
also re-add /dev/urandom support, as a config option Signed-off-by: Leah Rowe <leah@libreboot.org>
2026-03-26util/mkhtemp: use /dev/urandom *if enabled*Leah Rowe
build-time option. do not allow fallback; on a system where getrandom is used, it should be used exclusively. on some systems, getrandom may not be available, even if they have a newer kernel. Signed-off-by: Leah Rowe <leah@libreboot.org>