summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2018-07-18tidy up the flags section a little: supply a little more indent, and reduceJason McIntyre
the amount of modal verbs going on;
2018-07-16Document behavior change of EC_POINTs_mul() again.Theo Buehler
2018-07-16Recommit Billy Brumley's ECC constant time patch with a fix for sparc64Theo Buehler
from Nicola Tuveri (who spotted the omission of ecp_nist.c from the PR). discussed with jsing tested by jsg
2018-07-16Implement FBT_FSYNC, which is called on fsync(2) and fdatasync(2).helg
Currently ignores the a_waitfor argument and always invokes the file system's fsync implementation synchronously. ok mpi@
2018-07-16fix thinkoMarc Espie
okay mestre@
2018-07-15recommit label indentation part of the backout; clearly unrelated to theTheo Buehler
breakage.
2018-07-15back out ecc constant time changesJonathan Gray
after the constant time commits various regress tests started failing on sparc64 ssh t9, libcrypto ec ecdh ecdsa and trying to ssh out resulted in 'invalid elliptic curve value' ok tb@
2018-07-13Correct some typos and also ran it through mandoc -TlintRicardo Mestre
OK millert@ deraadt@ and jmc@ who also gave me a cluebat stick
2018-07-13Crank minor for unveilBob Beck
ok deraadt@
2018-07-13Unveiling unveil(2).Bob Beck
This brings unveil into the tree, disabled by default - Currently this will return EPERM on all attempts to use it until we are fully certain it is ready for people to start using, but this now allows for others to do more tweaking and experimentation. Still needs to send the unveil's across forks and execs before fully enabling. Many thanks to robert@ and deraadt@ for extensive testing. ok deraadt@
2018-07-13Eliminate the weird condition in the BN_swap_ct() API that at most one bitTheo Buehler
be set in condition. This makes the constant time bit-twiddling a bit trickier, but it's not too bad. Thanks to halex for an extensive rubber ducking session over a non-spicy spicy tabouleh falafel.. ok jsing, kn
2018-07-12Add hw.ncpuonline to count the number of online CPUs.cheloha
The introduction of hw.smt means that logical CPUs can be disabled after boot and prior to suspend/resume. If hw.smt=0 (the default), there needs to be a way to count the number of hardware threads available on the system at any given time. So, import HW_NCPUONLINE/hw.ncpuonline from NetBSD and document it. hw.ncpu becomes equal to the number of CPUs given to sched_init_cpu() during boot, while hw.ncpuonline is equal to the number of CPUs available to the scheduler in the cpuset "sched_all_cpus". Set_SC_NPROCESSORS_ONLN equal to this new sysctl and keep _SC_NPROCESSORS_CONF equal to hw.ncpu. This is preferable to adding a new sysctl to count the number of configured CPUs and keeping hw.ncpu equal to the number of online CPUs because such a change would break software in the ecosystem that relies on HW_NCPU/hw.ncpu to measure CPU usage and the like. Such software in base includes top(1), systat(1), and snmpd(8), and perhaps others. We don't need additional locking to count the cardinality of a cpuset in this case because the only interfaces that can modify said cardinality are sysctl(2) and ioctl(2), both of which are under the KERNEL_LOCK. Software using HW_NCPU/hw.ncpu to determine optimal parallism will need to be updated to use HW_NCPUONLINE/hw.ncpuonline. Until then, such software may perform suboptimally. However, most changes will be similar to the change included here for libcxx's std::thread:hardware_concurrency(): using HW_NCPUONLINE in lieu of HW_NCPU should be sufficient for determining optimal parallelism for most software if the change to _SC_NPROCESSORS_ONLN is insufficient. Prompted by deraadt. Discussed at length with kettenis, deraadt, and sthen. Lots of patch tweaks from kettenis. ok kettenis, "proceed" deraadt
2018-07-11Sync commentkn
Makes it a tad easier to read through and compare with BN_swap_ct(). OK tb
2018-07-11Drop a const-bomb on regexec. It's probably not a good idea to remove aMartijn van Duren
const promise when processing it in the regex engine. Minor tweak and OK schwarze@
2018-07-11Document behavior change of EC_POINTs_mul(3) from EC constant time changes.Theo Buehler
ok beck on earlier version, markup help from Schwarze.
2018-07-11Turn yesterday's optimistic ! in an XXX comment into a more cautious ?Theo Buehler
2018-07-10Indent labels by a space so they don't obliterate function names in diffs.Theo Buehler
2018-07-10ECC constant time scalar multiplication support. First step in overhaulingTheo Buehler
the EC module. From Billy Brumley and his team, via https://github.com/libressl-portable/openbsd/pull/94 With tweaks from jsing and me. ok jsing
2018-07-10Provide BN_swap_ct(), a constant time function that conditionally swapsTheo Buehler
two bignums. It's saner and substantially less ugly than the existing public BN_constantime_swap() function and will be used in forthcoming work on constant time ECC code. From Billy Brumley and his team. Thanks! ok jsing
2018-07-10Factor out a bit of ugly code that truncates the digest to the order_bitsTheo Buehler
leftmost bits of a longer digest, according to FIPS 183-6, 6.4. Eliminate a microoptimization that only converts the relevant part of the digest to a bignum. ok beck, jsing
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-09Move a detail on tls_connect(3) to its documentation and be a bit moreTheo Buehler
explicit about the servername argument of tls_connect_servername(3). input & ok jsing, input & ok schwarze on earlier version
2018-07-09wording tweak for tls_init() from jsingTheo Buehler
ok jsing, schwarze
2018-07-09Delete the VM86 kernel option and i386_vm86(3) API: it's requiredPhilip Guenther
a custom kernel for over 20 years. testing mlarkin@ ok deraadt@ phessler@ jca@ matthieu@
2018-07-09sync with const changes in x509.h r1.68.Theo Buehler
2018-07-09sync with const changes in evp.h r1.64.Theo Buehler
2018-07-09sync with const changes in bio.h r1.44.Theo Buehler
2018-07-09sync with const changes in bio.h r1.45.Theo Buehler
2018-07-09Fix hid_usage_in_page(hid_parse_usage_in_page()) for the Buttons page.Martin Pieuchot
From David Bern.
2018-07-08import the relevant parts of a new ASN1_INTEGER_get(3) manual pageIngo Schwarze
from OpenSSL, fixing many bugs and polishing many details
2018-07-08Simplify and shorten the description of tls_init(3),Ingo Schwarze
fixing an awkward wording noticed by tb@. OK tb@
2018-07-08Add missing retguard checkmortimer
ok deraadt
2018-07-08mop up;Jason McIntyre
2018-07-08Add man page for fuse_destroy(3).helg
2018-07-08Create separate man pages for each library function.helg
2018-07-06Return EINVAL if pthread_barrier_init is called with count=0.Paul Irofti
OK kettenis@, guenther@
2018-07-05tweak previous;Jason McIntyre
2018-07-05fuse_set_signal_handlers(3) and fuse_remove_signal_handlers(3) shouldhelg
not replace any existing signal handlers. This makes it possible for FUSE file systems to install their own signal handlers. Bug reported by Bill Zissimopoulos. ok mpi@
2018-07-05Create new man page for fuse_set_signal_handlers(3) andhelg
fuse_remove_signal_handlers(3). ok mpi@
2018-07-03Remove residual debug statements.helg
2018-07-03Add retguard macros for libc.mortimer
ok deraadt
2018-07-03Add retguard macros to libm assembly.mortimer
ok deraadt
2018-06-28Do not cast (signed char) CANCELLED_BOOLEAN to (char) for comparisonTheo de Raadt
against (signed char) variable. Modern "genius" compilers simply delete the code on unsigned char architectures, amazed they feel lattitude to convert undefined local behaviour into much larger scope undefined behaviour (glad to have faster but incorrect libcurses..) ok millert
2018-06-25During open(2), release the fdp lock before calling vn_open(9).Visa Hankala
This lets other threads of the process modify the file descriptor table even if the vn_open(9) call blocks. The change has an effect on dup2(2) and dup3(2). If the new descriptor is the same as the one reserved by an unfinished open(2), the system call will fail with error EBUSY. The accept(2) system call already behaves like this. Issue pointed out by art@ via mpi@ Tested in a bulk build by ajacoutot@ OK mpi@
2018-06-22Save and restore the relevant FPU state on armv7.Mark Kettenis
ok deraadt@
2018-06-21sort SEE ALSO;Jason McIntyre
2018-06-21s/simultanious/simultaneous/Jason McIntyre
2018-06-21Document hw.smt.Mark Kettenis
2018-06-19use a full stop, as per the other items; from nan xiaoJason McIntyre
2018-06-19Changes the default mount behaviour so only the user that mounts thehelg
file system can access it unless the allow_other mount options is specified. The allow_other mount option makes the file system available to other users just like any other mounted file system. ok mpi@