summaryrefslogtreecommitdiff
path: root/sys/lib
AgeCommit message (Collapse)Author
2019-08-03In the bootblocks, after discovering and opening /bsd.upgrade, fchmod -xTheo de Raadt
so the file cannot be re-executed upon the next boot. This provides a stronger one-shot-upgrade model than the upgrade script's rm /bsd.upgrade. Now various forms of upgrade failure will reboot into /bsd, which is probably more recoverable. Performing fchmod -x depends on (1) use of MI boot.c (not alpha/macppc/sparc64/sgi/octeon) and (2) "can write blocks" functionality in the IO layer. Most architectures have this support now. Two diagnostics "fchmod a-x %s: failed" and "/bsd.upgrade is not u+x" will remain in the tree while refinements happen for some of the laggard architectures. based upon a discussion florian tested in snapshots for more than a week without any complaints
2019-06-01Fix warnings when building zlib with ZLIB_CONST definedJeremie Courreges-Anglas
Probably not very useful (given the lack of feedback) but feels more correct. Kernel part tested with option ZLIB_CONST.
2019-05-12Add ZLIB_CONSTJeremie Courreges-Anglas
Introduced in zlib-1.2.5.2, used by a few ports. ok deraadt@
2019-05-11we have never built without %b supportTheo de Raadt
2019-04-25Add movstrSI12_i4 for linking -Os/-Oz kernels. Sadly however itTheo de Raadt
fails and locks early in boot.
2019-04-20libsa's memcpy() is actually memmove(). make a proper memmove(), and giveTheo de Raadt
memcpy() correct behaviour. This also brings the bcopy() macro into line.
2019-04-10change marks[] array to uint64_t, so the code can track full 64-bitTheo de Raadt
details from the ELF header instead of faking it. Proposal from mlarkin, tested on most architectures already
2019-01-25I am retiring my old email address; replace it with my OpenBSD one.Todd C. Miller
2018-12-16Make the freelist best fit code a tiny bit smarter to not use a block ifOtto Moerbeek
half or more would be wasted. Causes more effective re-use of blocks. ok jsing@
2018-08-10Retry on incorrect passphrase for softraid crypto boot.Joel Sing
Historically, the softraid crypto support in the boot loaders has only given one attempt to provide the correct passphrase. There were a few reasons for this, including the fact that pkcs5_pbkdf2() allows an empty passphrase and that returning EPERM allowed for another attempt. With the event of KARL and the need for bsd.booted with hibernate resumption, this becomes much more of an issue - if you get the passphrase wrong you fail to resume. There are also other situations like using /etc/boot.conf to switch serial console, but an incorrect passphrase results in the config not being read. Also, bcrypt_pbkdf() does not permit empty passphrases. This reworks the softraid crypto support in the boot loaders so that it loops requesting a valid passphrase until one is provided, or an empty passphrase is entered (at which point it will abort). ok mortimer@ tb@
2018-07-13Use _ALIGN_TRAPS instead of _ALIGN_TEXT where nops aren't needed.Philip Guenther
ok deraadt@
2018-07-10In asm.h ensure NENTRY uses the old-school nop-sled align, but change standardTheo de Raadt
ENTRY is a trapsled. Fix a few functions which fall-through into an ENTRY macro. amd64 binaries now are free of double+-nop sequences (except for one assember nit in aes-586.pl). Previous changes by guenther got us here. ok mortimer kettenis
2018-07-03Add retguard macros for libkernmortimer
ok deraadt
2018-05-23Align libsa ctime output with libc ctime output.cheloha
Use zero-padding to get double-digit HH:MM:SS and space-padding for the DOM. ok visa@
2018-04-25use size_t for the size of buffers and strings, not int.David Gwynne
sprinkle some bounded attributes while here. ok deraadt@
2018-03-31Stop converting UDP and IP header values from network endianness to hostPatrick Wildt
endianness for convenience reasons. Especially in code pathes like TFTP where the source port is read from the received UDP packet and used as destination port in a new UDP packet this can be very harmful. Luckily this issue has had no effect on our architectures since they never use any of the code paths that could be harmful. ok visa@
2018-01-17Implement basic padding support in libsa so we can do zero-paddingPatrick Wildt
in bootloader printfs. Feedback from and ok gerhard@
2017-11-10"unknown KDF type 2" -> "keydisk not found".Sunil Nimmagadda
Inputs and ok jsing@.
2017-10-26Add aliases for __aeabi_idivmod and __aeabi_uidivmod calls clang emits.Jonathan Gray
Remainder of the division is already stored in r1 in __divsi3/__udivsi3. ok kettenis@
2017-10-08Revert: libsa lacks memmove currently; a more thorough rename/change isPhilip Guenther
needed problem noted by naddy@
2017-10-07bcopy() is expected to be overlap safe, so it implement it with memmove()Philip Guenther
not memcpy(). 'oh oh' deraadt@
2017-09-08If you use sys/param.h, you don't need sys/types.hTheo de Raadt
2017-08-20Fix the __sync_* functions to make them work properlyVisa Hankala
as full memory barriers.
2017-05-31make the AES-XTS mode a little more constant-time, though the AESDamien Miller
implementation that it depends on currently isn't. ok mikeb tom
2017-05-27move sha224_initial_hash_value[] under !SHA2_SMALL; ok deraadt@ millert@Christian Weisgerber
2017-05-21Enable radeondrm(4) on loongson to get accelerated graphicsVisa Hankala
with the RS780E chipset. OK kettenis@, jsg@
2017-05-08Guard debug printf with NFS_DEBUG ifdef like the other debug prints.Patrick Wildt
ok tom@
2017-01-24In preparation of compiling our kernels with -ffreestanding, explicitly mapMark Kettenis
a few performance-critical functions to compiler builtins. Since the builtins supported by gcc3, gcc4 and clang are not the same, there are (unfortunately) some compiler checks to make sure we only do the mapping for builtins that are actually supported by the compiler. ok jca@, tom@, guenther@
2016-11-27Add missing OpenBSD CVS tagsReyk Floeter
2016-11-25Fix signedness warnings with careful casts and replace a re-defined variable.Reyk Floeter
OK krw@
2016-11-14Copy data by using 64-bit loads and stores rather than 32-bitVisa Hankala
operations. This about doubles the routine's throughput. No binary change on the 32-bit bootblocks Discussed with miod@ long ago
2016-09-24Add an implementation of __aeabi_ldivmode() and __aeabi_uldivmod(); clangMark Kettenis
generates calls to these functions when compiling an armv7 kernel. Code from NetBSD's unified userland+kernel implementation, with lots of irrelevant (for us) #ifdefs removed. ok patrick@, guenther@
2016-09-22Add aeabi aliases.Mark Kettenis
ok guenther@, patrick@
2016-09-18Add bcrypt pbkdf support to the softraid crypto boot loader code.Joel Sing
Based on a diff from djm@
2016-09-18Correctly handle short read()s in the libsa gzip handling lseek(). AlsoJoel Sing
avoid masking the errno from a failed read(). ok guenther@ tom@
2016-09-17move the .SUNW_ctf section name definition to exec_elf.h and document it in ↵Jasper Lievisse Adriaanse
elf(5) feedback from guenther@ ok guenther@ kettenis@
2016-09-16unifdef SAVE_MEMORY which is no longer set nor usedJasper Lievisse Adriaanse
ok deraadt@ millert@
2016-09-13when loading the kernel binary, also load the .SUNW_ctf section when present,Jasper Lievisse Adriaanse
which holds the CTF data. ok mpi@
2016-09-11Provide initial libsa softraid - this is currently just the data structuresJoel Sing
and softraid crypto key handling code.
2016-09-10Add bcrypt_pbkdf to libsa, from libutil. This will soon allow the bootJoel Sing
loader to support softraid crypto volumes using bcrypt pbkdf.
2016-09-10Add blowfish to libsa, taken from libc - needed for bcrypt_pbkdf.Joel Sing
2016-09-10Add sha2 to libsa, taken from libc - needed for bcrypt_pbkdf.Joel Sing
2016-09-10Rename libsa pbkdf2.c to pkcs5_pbkdf2.c so that we match libutil.Joel Sing
2016-09-10Sync libsa pkcs5_pbkdf2() with libutil.Joel Sing
2016-09-01retire sparcTed Unangst
2016-08-27Declare lseek() instead of assuming it'll be provided elsewherePhilip Guenther
ok deraadt@
2016-05-11remove hppa64 port, which we never got going beyond broken single users.Theo de Raadt
hppa reverse-stack gives us a valuable test case, but most developers don't have a 2nd one to proceed further with this. ok kettenis
2016-03-23remove vax handlingnatano
ok millert
2016-03-20" the the " -> " the ", or in a couple of cases replace the superfluousKenneth R Westerback
"the" with the obviously intended word. Started with a "the the" spotted by Mihal Mazurek.
2016-03-14Change a bunch of (<blah> *)0 to NULL.Kenneth R Westerback
ok beck@ deraadt@