#
d82e6535 |
| 06-Jul-2020 |
pirofti <pirofti@openbsd.org> |
Add support for timeconting in userland.
This diff exposes parts of clock_gettime(2) and gettimeofday(2) to userland via libc eliberating processes from the need for a context switch everytime they
Add support for timeconting in userland.
This diff exposes parts of clock_gettime(2) and gettimeofday(2) to userland via libc eliberating processes from the need for a context switch everytime they want to count the passage of time.
If a timecounter clock can be exposed to userland than it needs to set its tc_user member to a non-zero value. Tested with one or multiple counters per architecture.
The timing data is shared through a pointer found in the new ELF auxiliary vector AUX_openbsd_timekeep containing timehands information that is frequently updated by the kernel.
Timing differences between the last kernel update and the current time are adjusted in userland by the tc_get_timecount() function inside the MD usertc.c file.
This permits a much more responsive environment, quite visible in browsers, office programs and gaming (apparently one is are able to fly in Minecraft now).
Tested by robert@, sthen@, naddy@, kmos@, phessler@, and many others!
OK from at least kettenis@, cheloha@, naddy@, sthen@
show more ...
|
#
0ccb1e69 |
| 26-Aug-2016 |
guenther <guenther@openbsd.org> |
Pull in <time.h> for clock_gettime()
ok deraadt@
|
#
0d28cf8d |
| 26-Jun-2016 |
tedu <tedu@openbsd.org> |
increase the minimum for auto rounds to 6. that was the previous low bound for login.conf, and we don't want to go lower.
|
#
f3415991 |
| 13-Sep-2015 |
guenther <guenther@openbsd.org> |
Wrap <pwd.h> so that calls go direct and the symbols are all weak. Hide bcrypt_autorounds(), prefixing with an underbar for static builds.
|
#
df22808a |
| 13-Sep-2015 |
millert <millert@openbsd.org> |
The number of rounds is just two digits in the salt. We've already verified that they are there via isdigit() so we can convert from ASCII to an int without using atoi(). OK guenther@ deraadt@
|
#
8d29ece6 |
| 18-Jul-2015 |
tedu <tedu@openbsd.org> |
standards compliant error return (null). will make ruby happier, at least. ok deraadt jeremy
|
#
6c34c853 |
| 28-Jan-2015 |
tedu <tedu@openbsd.org> |
dial the time back to about 0.1s, closer to the original targets and friendlier for users. requested by deraadt
|
#
c6555c4f |
| 12-Jan-2015 |
tedu <tedu@openbsd.org> |
rename blocks to words. bcrypt "blocks" are unrelated to blowfish blocks, nor are they the same size.
|
#
77fd6317 |
| 07-Jan-2015 |
tedu <tedu@openbsd.org> |
stupid me. need errno.h
|
#
2ae21647 |
| 07-Jan-2015 |
tedu <tedu@openbsd.org> |
set errno = EINVAL for invalid salts and hashes in most functions. remember to set EACCES in bcrypt_checkpass for hash differences. the higher level crypt_checkpass function will reset errno to EACCE
set errno = EINVAL for invalid salts and hashes in most functions. remember to set EACCES in bcrypt_checkpass for hash differences. the higher level crypt_checkpass function will reset errno to EACCES in all cases, which is probably the right behavior, but this change gives code working with the lower level functions the correct errno if they care.
show more ...
|
#
87c89173 |
| 05-Jan-2015 |
tedu <tedu@openbsd.org> |
convert clock() to clock_gettime() for improved precision (and accuracy?) guenther suggested using thread time, which actually may improve accuracy if somebody puts this in a threaded program.
|
#
e08a42f8 |
| 30-Dec-2014 |
tedu <tedu@openbsd.org> |
copy bcrypt autotune from encrypt(1) and expose via crypt_newhash ok deraadt miod
|
#
5105d936 |
| 24-Nov-2014 |
tedu <tedu@openbsd.org> |
introduce a hashspace define and check that there's enough space to write out a hash. also simplify writing out the hash.
|
#
1a0ab620 |
| 20-Jul-2014 |
guenther <guenther@openbsd.org> |
From ISO/IEC 9899:1999 and 9899:201x, 6.11.5 - Storage-class specifiers: The placement of a storage-class specifier other than at the beginning of the declaration specifiers in a declaration
From ISO/IEC 9899:1999 and 9899:201x, 6.11.5 - Storage-class specifiers: The placement of a storage-class specifier other than at the beginning of the declaration specifiers in a declaration is an obsolescent feature.
Diff from Jean-Philippe Ouellet (jean-philippe (at) ouellet.biz)
show more ...
|
#
d0288240 |
| 17-May-2014 |
chl <chl@openbsd.org> |
Add missing header needed by isdigit(). While there, sort headers.
ok tedu@
|
#
2d36deba |
| 06-May-2014 |
tedu <tedu@openbsd.org> |
fix stupid commit
|
#
ecf9b0bc |
| 06-May-2014 |
tedu <tedu@openbsd.org> |
use explicit_bzero
|
#
6b630d86 |
| 03-May-2014 |
tedu <tedu@openbsd.org> |
now that 5.5 has been released with compatibility for 2b hashes, switch to generating them by default. prodded by deraadt and sthen
|
#
2c4c53c9 |
| 03-May-2014 |
tedu <tedu@openbsd.org> |
1. Drop support for no minor. This variant doesn't exist anymore. 2. Pull up the actual minor processing code into the switch that parses it. 3. atoi is actually simpler than strtonum in this case, b
1. Drop support for no minor. This variant doesn't exist anymore. 2. Pull up the actual minor processing code into the switch that parses it. 3. atoi is actually simpler than strtonum in this case, but check the input beforehand so we don't get unexpected results. 4. Slightly more consistent style between various parse and check and increment operations on salt. ok deraadt
show more ...
|
#
7b5a7360 |
| 19-Apr-2014 |
tedu <tedu@openbsd.org> |
one small tweak to avoid ever going off the end of a string.
|
#
7708e05b |
| 19-Apr-2014 |
tedu <tedu@openbsd.org> |
improved checking for invalid hashes. from solar designer
|
#
ad45bbcf |
| 08-Apr-2014 |
tedu <tedu@openbsd.org> |
use char * for strings, saving casts. add return codes to base64 functions
|
#
58406b89 |
| 24-Mar-2014 |
tedu <tedu@openbsd.org> |
oops, merge error
|
#
90e74185 |
| 23-Mar-2014 |
tedu <tedu@openbsd.org> |
clear stack variables, suggested by djm
|
#
8391e028 |
| 23-Mar-2014 |
tedu <tedu@openbsd.org> |
some improvements suggested by djm. use better constant for salt size. always copy ":" to gerror, in case somebody is dumb enough to overwrite it timingsafe_bcmp before somebody whines about strcmp
|