Age | Commit message (Collapse) | Author | |
---|---|---|---|
2016-09-08 | authsrv(2): update Nvrsafe structure to include aesmachkey | cinap_lenrek | |
2016-09-08 | kernel: fix type for utime/stime in pexit(), fix debug format strings | cinap_lenrek | |
2016-09-08 | kernel: make sure procalarm() remaining time doesnt become negative | cinap_lenrek | |
2016-09-08 | kernel: always do unsigned subtractions for m->ticks delta for updatecpu() ↵ | cinap_lenrek | |
and rebalance(), handle ticks wrap arround in hzsched() | |||
2016-09-07 | kernel: use tk2ms() instead of TK2MS macro for process time conversion | cinap_lenrek | |
this code isnt time critical and process TReal delta can become very long, so use tk2ms() which is less prone to overflow. | |||
2016-09-07 | kernel: tsemacquire() use MACHP(0)->ticks for time delta | cinap_lenrek | |
we might wake up on a different cpu after the sleep so delta from machX->ticks - machY->ticks can become negative giving spurious timeouts. to avoid this always use the same mach 0 tick counter for the delta. | |||
2016-09-07 | devcap: timeout capabilities after a minute, fix memory leak, paranoia | cinap_lenrek | |
the manpage states that capabilities time out after a minute, so we add ticks field into the Caphash struct and record the time when the capability was inserted. freeing old capabilities is handled in trimcaps(), which makes room for one extra cap and frees timed out ones. we also limit the capuse write size to less than 1024 bytes to prevent denial of service as we have to copy the user buffer. (memory exhaustion). we have to check the from user *before* attempting to remove the capability! the wrong user shouldnt be able to change any state. this fixes the memory leak of the caphash. do the hash comparsion with tsmemcmp(), avoiding timing side channels. allocate the capabilities in secret memory pool to prevent debugger access. | |||
2016-09-06 | merge | cinap_lenrek | |
2016-09-06 | devproc: do unsigned subtraction to get MACHP(0)->ticks - up->times[TReal] delta | cinap_lenrek | |
2016-09-05 | pc(1): bugfix: allow setting output base to 0 (thanks, deuteron) | aiju | |
2016-09-03 | 5c: do shift propagation for rotate right (ROR) | cinap_lenrek | |
2016-09-03 | 5c: format assembly constant right shift encoding 0 as >>32 | cinap_lenrek | |
2016-09-03 | 5a: assemble constant >>0 right shifts as <<0 (no shift), allow >>32 | cinap_lenrek | |
previously, right shift >>0 resulted in >>32 being emited. this is especially problematic when the shift count comes from a macro expansion. we now handle constant shift >>0 as <<0 (no shift) and allow shift by 32 be specified. this applies to logical right shift (>>) arithmetic right shift (->) and right rotate (@>). | |||
2016-09-03 | 5l: format assembly constant right shift encoding 0 as >>32 | cinap_lenrek | |
2016-09-03 | libmach: fix RORREG, right shift with shift count 0 means >>32 | cinap_lenrek | |
2016-09-01 | pc(1): manpage: restore previous size rather than set to 10 | aiju | |
2016-09-01 | pc(1): manpage formatting | aiju | |
2016-09-01 | pc: add cat() function | aiju | |
2016-09-01 | mptrunc: don't write to r->p[r->top] | aiju | |
2016-08-31 | pc: add rev function | aiju | |
2016-08-29 | pc: add gcd, rand and minv; set base of logical operation results to 0 | aiju | |
2016-08-29 | libmp: remove unused mpeuclid.c | cinap_lenrek | |
2016-08-29 | libmp: allow passing nil to v,x,y results of mpextendedgcd(), simplify ↵ | cinap_lenrek | |
mpinvert() | |||
2016-08-29 | libmp: mpnrand(), what was i *THINKING* | cinap_lenrek | |
the prior implementation was unneccesarily complicated for no good reason due to me misunderstanding how libc's nrand() works. in contrast to libc, we already generate the *closest* power-of-2 random number with mprand() in the sampling loop. | |||
2016-08-28 | python: remove automatic compiled module loading (.pyc files) | cinap_lenrek | |
2016-08-28 | libmp: mpdiv(): fix divisor==quotient case (again) | cinap_lenrek | |
2016-08-28 | libmp: timingsafe sign flip for small power-of-two negative divisor for mpdiv() | cinap_lenrek | |
2016-08-28 | mp.h: add mpasr | aiju | |
2016-08-28 | pc(1): SYNOPSIS... | aiju | |
2016-08-28 | pc(1): document -n option in manpage | aiju | |
2016-08-28 | add pc(1) | aiju | |
2016-08-28 | mpdiv: negative divisor has to flip sign of quotient | aiju | |
2016-08-28 | mp: fix mptov and mptouv | aiju | |
2016-08-28 | mp: fix mpnot and add mpasr | aiju | |
2016-08-28 | mercurial: use new d_stat from dirent structure in osutil.listdir | cinap_lenrek | |
2016-08-28 | ape: add d_stat struct in dirent struct allowing the avoidance of stats | cinap_lenrek | |
2016-08-28 | timmy: manpage | aiju | |
2016-08-28 | strtomp: update the returned char* even if there were no characters parsed | aiju | |
2016-08-28 | strtomp: fix mpbits() call in octal code | aiju | |
2016-08-27 | fix wrong manpage section index generation for rc-httpd(8) | cinap_lenrek | |
2016-08-27 | rio(4): document text truncation | cinap_lenrek | |
2016-08-27 | rand(2), cons(3): clarify /dev/random behaviour | cinap_lenrek | |
2016-08-27 | merge | cinap_lenrek | |
2016-08-27 | kernel: switch to fast portable chacha based seed-once random number generator | cinap_lenrek | |
2016-08-27 | devsdp: keep cipher states in secret memory | cinap_lenrek | |
2016-08-27 | ip/esp: allocate cipher states in secret memory | cinap_lenrek | |
2016-08-27 | devtls: allocate cipher states in secret memory | cinap_lenrek | |
2016-08-27 | devssl: allocate cipher states in secret memory | cinap_lenrek | |
2016-08-27 | wifi: update wifi.h header | cinap_lenrek | |
2016-08-27 | wifi: allocate cipher states in secret memory, do AESstate key setup once | cinap_lenrek | |