Age | Commit message (Collapse) | Author | |
---|---|---|---|
2015-08-08 | fix library mkfiles for objtype=spim | cinap_lenrek | |
2015-08-05 | libmach: remove redundant check for big endian | mischief | |
2015-08-05 | libmach: remove useless error check from previous commit | mischief | |
2015-08-05 | libmach: set correct endianness with little endian ELF32 mips binaries | mischief | |
2015-08-06 | kernel: remove unused MAXCRYPT constant from portdat.h | cinap_lenrek | |
2015-08-06 | vgaigfx: remove #define MB, theres a MB enum in portdat.h | cinap_lenrek | |
2015-08-06 | kernel: have to validate argv[] again when copying to the new stack | cinap_lenrek | |
we have to validaddr() and vmemchr() all argv[] elements a second time when we copy to the new stack to deal with the fact that another process can come in and modify the memory of the process doing the exec. so the argv[] strings could have changed and increased in length. we just make sure the data being copied will fit into the new stack and error when we would overflow. also make sure to free the ESEG in case the copy pass errors. | |||
2015-08-06 | kernel: limit argv[] strings to the USTKSIZE to avoid overflow | cinap_lenrek | |
argv[] strings get copied to the new processes stack segment, which has a maximum size of USTKSIZE, so limit the size of the strings to that and check early for overflow. | |||
2015-08-06 | kernel: validnamedup() the name argument for segattach() | cinap_lenrek | |
this moves the name validation out of segattach() to syssegattach() to make sure the segment name cannot be changed by the user while segattach looks at it. | |||
2015-08-06 | kernel: fix indention in validname0() | cinap_lenrek | |
2015-08-06 | kernel: limit syscallfmt user strings to 64K (as in validname) | cinap_lenrek | |
2015-08-06 | kernel: change vmemchr() length argument to ulong and simplify | cinap_lenrek | |
2015-08-06 | kernel: use Etoolong[] constant instead of string literal in validname0() | cinap_lenrek | |
2015-08-06 | kernel: make shargs() function static in sysproc.c | cinap_lenrek | |
2015-08-06 | kernel: reject empty argv (argv[0] == nil) in sysexec() | cinap_lenrek | |
when executing a script, we did advance argp0 unconditionally to replace argv[0] with the script name. this fails when argv[] is empty, then we'd advance argp0 past the nil terminator. the alternative would be to *not* advance if *argp0 == nil, but that would require another validaddr() check for a case that is unlikely to have been anticipated in most programs being invoked as libc's ARGBEGIN macro assumes argv[0] being non-nil as it also unconditionally advances the argv pointer. to keep us sane, we now reject an empty argv[]. on entry, we verify that argv[] is valid for at least two elements: - the program name argv[0], has to be non-nil - the first potential nil terminator in argv[1] when argv[0] == nil, we throw Ebadarg "bad arg in system call" | |||
2015-08-05 | init: do not run $home/lib/profile when cd $home failed | cinap_lenrek | |
avoiding follow up error messages, which is annoying and quite common when running a terminal as "none" for testing. | |||
2015-08-05 | kfs: set permission of / to 0775 on ream | cinap_lenrek | |
this allows members of the -1 group to create new directories in / without having to fiddle with the fileserver console. this also makes it consistent to hjfs and cwfs. | |||
2015-08-05 | cwfs: set permission of / to 0775 on ream | cinap_lenrek | |
this allows members of the -1 group to create new directories in / without having to fiddle with the fileserver console. this also makes it consistent to hjfs. | |||
2015-08-05 | pc, pc64: remove unused psaux driver, cleanup devkbd | cinap_lenrek | |
the psaux driver is not used in any kernel configuration and theres no userspace mouse daemon. i8042auxcmds() is wrong as access to the user buffer can fault and we are holding an ilocks. little cleanups in devkbd. | |||
2015-08-05 | devkbd: disable mosue/keyboard on shutdown, disable ps2 mouse on init, ↵ | cinap_lenrek | |
remove kbdenable()/kbdinit() on vmware, loading a new kernel sometimes reboots when wiggling the mouse. disabling keyboard and mouse on shutdown fixes the issue. make sure ps2 mouse is disabled on init, will get re-enabled in i8042auxenable(). keyboard isnt special anymore, we can just use the devreset entry point in the device to do the keyboard initialization, so kbdinit()/kbdenable() are not needed anymore. | |||
2015-08-04 | kernel: remove unused qstate() function | cinap_lenrek | |
2015-08-04 | devkbd: poll pc keyboard before blocking on kbd.q | cinap_lenrek | |
the keyboard stops sending interrupts when its fifo gets full, which can happen on boot when keys get mashed while interrupts are still disabled. to work arround this, call the keyboard interrupt handler when kbd.q is starved before blocking. | |||
2015-08-04 | python: use altzone | cinap_lenrek | |
2015-08-04 | ape: implement altzone for tzset() | cinap_lenrek | |
2015-08-04 | ape: fix mktime() again | cinap_lenrek | |
2015-08-03 | resample: simplify getint() | cinap_lenrek | |
2015-08-03 | libc: make atoi() not parse c-style octal and hex numbers | cinap_lenrek | |
interpreting octal breaks parsing of decimal numbers with leading zeros. the manpage listed this in the BUGS section, so we'r going to fix it as this just causes confusion as most callers of atoi() do not expect it. | |||
2015-08-03 | crop: use strtol() instead of atoi() | cinap_lenrek | |
2015-08-03 | bitsy: replace atoi() calls with strtol() when hex can be expcted | cinap_lenrek | |
2015-08-03 | pc, pc64: replace atoi() calls with strtol() when hex can be expcte | cinap_lenrek | |
2015-08-03 | kernel: dont rely on atoi() parsing hex for netif/devbridge | cinap_lenrek | |
2015-08-03 | webcookies: fix typo | cinap_lenrek | |
2015-08-03 | 9pcon: use strtol() to parse integers | cinap_lenrek | |
2015-08-03 | libcontrol: use strtol() to parse integer arguments | cinap_lenrek | |
2015-08-03 | libhttpd: use strtol to parse decimal character references in httpunesc() | cinap_lenrek | |
2015-08-03 | snoopy: dont rely on atoi() being able to parse hex | cinap_lenrek | |
2015-08-03 | bitsy/keyboard: do not rely on atoi() being able to parse hex | cinap_lenrek | |
2015-08-03 | libauthsrv: readnvram() use vlong for nvroff, parse $nvlen/$nvoff with ↵ | cinap_lenrek | |
strtol() instead of atoi() | |||
2015-08-03 | webcookies: use strtol() to parse HH:MM:SS | cinap_lenrek | |
atoi() currently interprets leading zeros as octal (BUG!), so use strtol with explicit base 10 avoiding the issue. | |||
2015-08-03 | aux/vga: dont rely on atoi() being able to parse hex | cinap_lenrek | |
2015-08-03 | devenv: simplify envremove(), cleanup | cinap_lenrek | |
2015-08-02 | devenv: avoid indirection, keep Evalue's allocated in an array | cinap_lenrek | |
avoid the indirection for envlookup() by allocating Evalue structs together in an array. remove unused link field in Evalue. | |||
2015-08-02 | 1c,2c,7c,kc,vc: honor suppress condition for outstring() in swt.c | cinap_lenrek | |
2015-08-02 | ipv6on: fix search for ip attribute (thanks kenji arisawa) | cinap_lenrek | |
2015-08-02 | pc, pc64: set *bootscreen= when framebuffer changes | cinap_lenrek | |
add bootscreenconf(VGAscr *) function, that is called whenever the framebuffer configuration is changed by devvga. that way, we can pass the current setting of the framebuffer to the new kernel when using /dev/reboot. | |||
2015-08-02 | kernel: cleanup qlock.c to use nil instead of 0 for pointers | cinap_lenrek | |
2015-08-01 | mothra: show <source> tag within <video>/<audio> tags | cinap_lenrek | |
2015-08-01 | mothra: fix nil crash on missing name/src attributes for ↵ | cinap_lenrek | |
source/video/audio/embed/frame/iframe | |||
2015-08-01 | mothra: enable compiler warnings and type checking, cleanup | cinap_lenrek | |
2015-08-01 | mothra: fix double button hit | cinap_lenrek | |
dolink() was hitting the button a second time! |