summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-12-19fortunes: What an amazing year for the Web.stanley lieber
2013-12-19json(2): fix spelling errorstanley lieber
2013-12-19add medium to low quality json(2) manual pagecinap_lenrek
2013-12-19rio: dont consider shell characters as part of the filename for auto completioncinap_lenrek
rio looks backwards in the line for the beginning of a filename that needs to be completed with ^F. this change makes the characters: =, ^, ( and { stoppers, so filename completion will work in all these cases: foobar=/foo/ba^F; for(i in (fo^F ba^F)){/bin/baz^F this means completion will not work for prefixes having these special characters in them. thanks to burnzez for bringing it up.
2013-12-17acid leak: handle ALIGN_MAGIC padding of skip area for mallocalign()cinap_lenrek
the alloc and realloc tag words do not start at the beginning of a block created by mallocalign(). instead, the block is padded with ALIGN_MAGIC.
2013-12-17pool: update debug log format string for poolallocalign()cinap_lenrek
2013-12-17devether: fix spelling mistypecinap_lenrek
2013-12-16ether82598, ether82563: remove packblock() avoidance hackcinap_lenrek
2013-12-16etheryuk: fix problems with yukon2 ep+ rev0, deoptimizecinap_lenrek
2013-12-16devether: remove qfull prints and fix loopback packet handling of etheroq()cinap_lenrek
dont spam the console with qfull warnings. this makes things worse. handle loopback packets as stated in the comment. we call etheriq() with fromwire=1 for loopback packets so etheriq() can pass the packet on (without copying) or free it. dont inhibit interrupts while calling etheriq(). etheriq() can safely be called from process and interrupt context. it is unclear what this was supposed to fix and testing didnt seem to have any odd effects.
2013-12-16devssl: use parsecmd() to process control message to get rid of 128 byte ↵cinap_lenrek
stack buffer limit (11:02:29 PM) me: why is buf in /sys/src/9/port/devssl.c:/^sslwrite only 128 bytes? (11:02:58 PM) me: it makes it so you can't use a 128 bytes secret as negotiated by infauth in a secretin or secretout ctl message (11:03:30 PM) me: which in turn means you can't use such a secret with pushssl(2) (11:06:15 PM) me: inferno's sslwrite is limited to 32 bytes, but its ssl library writes to the secret files instead of to the ctl file (11:08:50 PM) mischief: what should it be instead of 128 bytes (11:08:58 PM) me: larger (11:09:16 PM) mischief: how about 129 bytes? (11:09:59 PM) me: also broken in 9front, by the way (11:15:14 PM) me: i guess it should be replaced with parsecmd
2013-12-15exportfs: get rid of limits, cleanupcinap_lenrek
get rid of the service buffer limit. keep service buffers on a global freelist protected by lock. dont fatal when we hit the process limit. instead, just abort the rpc with an error. handle rendezvous() interrupts.
2013-12-13god damn it forgot fucking fns.h from my last commitMatthew Veety
2013-12-13Added in /dev/cputemp for bcm kernel (Thanks Krystian!)Matthew Veety
2013-12-11cifs(4): fix documentation for -d flagcinap_lenrek
2013-12-11factotum: add ntlmv2 (mschap2) client auth for cifscinap_lenrek
2013-12-09draw: fix drawing of replicated source image on memlayer with a clip rectanglecinap_lenrek
when a replicated source image with a clipr with clipr.min > Pt(0, 0), drawclip() would properly translate the src->clipr on the dstr but then clamp the source rectangle back on src->r. while traversing down multiple layers, this would cause the translation to be applied multiple times to the dst rectangle giving the wrong image result. this change adds a new drawclipnorepl() function that avoids the clamping of source and mask rectangles to src->r and mask->r. this is then used in libmemlayer. the final memimagedraw() call will call drawclip() which will do the final claming. a testcase is provided: #include <u.h> #include <libc.h> #include <draw.h> Image *blue; Image *red; void main(int, char *argv[]) { Image *i; if(initdraw(nil, nil, argv[0]) < 0) sysfatal("initdraw: %r"); i = allocimage(display, screen->r, screen->chan, 1, DWhite); red = allocimage(display, Rect(0,0,1,1), screen->chan, 1, DRed); blue = allocimage(display, Rect(0,0,1,1), screen->chan, 1, DPaleblue); replclipr(red, 1, Rect(10, 10, 110, 110)); replclipr(blue, 1, Rect(11, 11, 111, 111)); /* draw on non-layer, works correctly */ draw(i, i->r, red, nil, ZP); draw(i, i->r, blue, nil, ZP); draw(screen, screen->r, i, nil, i->r.min); flushimage(display, 1); /* draw on (screen) layer is too far to the right */ draw(screen, screen->r, red, nil, ZP); draw(screen, screen->r, blue, nil, ZP); flushimage(display, 1); for(;;){ sleep(1000); } }
2013-12-08cifs: fix compiler warningcinap_lenrek
2013-12-08handle NIL user domain, and Z(4) at end of nt blob for ntlmv2cinap_lenrek
the nt blob ends with 4 zero bytes, this is not the same as the EOL av-pair terminator! this makes ntlmv2 work with windows xp with LmCompatibityLevel = 3
2013-12-08experimental ntlmv2 server authenticaion support for cifsdcinap_lenrek
extending factotums and the auth servers mschap implementation to handle variable length NT response for NTLMv2. fix some minor bugs. only tested with cifs so far.
2013-12-07kernel: simplify pexit(), avoid making wait record for RFNOWAIT (parentless) ↵cinap_lenrek
procs replaced the p->pid != 0 check with up->parentpid != 0 so p->pid == up->parentpid is never true for p->pid == 0. avoid allocating the wait records when up->parentpid == 0.
2013-12-07devproc: make sure /proc/n/wait waits for the right process childrencinap_lenrek
theres a race when we wait for a process children and that process exits before we sleep().
2013-12-07kernel: fix pexit() Waitmsg memory leak.cinap_lenrek
when a process got forked with RFNOWAIT, its p->parent will still point to the parent process, but its p->parentpid == 0. this causes the "parent still alive" check in pexit to get confused as it only checked p->pid == up->parentpid. this condition is *TRUE* in the case of RFNOWAIT when the parent process is actually dead (p->pid == 0) so we attached the wait structure to the dead parent leaking the memory.
2013-12-07gif: remove warning when animated gif is rendered to bitmapcinap_lenrek
2013-12-07mothra: remove debug code, dont create $home/lib/mothra/mothra.err filecinap_lenrek
2013-12-06etheriwl.c: add did 4232 for intel wifi link 5100 (thanks, hmr)stanley lieber
2013-12-06libthread: avoid calling thread waiting for fork/execed process to finish if ↵cinap_lenrek
we dont have to we do not need to wait for fork/execed program to finish when not collecting waitmsg. this reduces the number of rio processes hanging arround for each window shell just waiting for it to terminate and then dumping the waitmsg.
2013-12-05telnet: simplify previous change by moving the notkbd check into consctlcmd()cinap_lenrek
2013-12-05cpu: add -n flag for the remote site to allow "none" authentification method ↵cinap_lenrek
(inspired from sources cpu-noauth patch)
2013-12-05telnet: disable changing raw mode when a pipe was being used (from sources ↵cinap_lenrek
telnet-notkbd patch) This patch corrects a minor problem with telnet when using the notkbd option (-n).
2013-11-28ndb/dns: check bad name length in convM2DNS.c:^gname()cinap_lenrek
2013-11-28u9fs: fix misuse of Fcall.afid in p9any authentication module. (from sources ↵cinap_lenrek
patch/u9fs-afid) U9fs(4) misuses Fcall.afid in its p9any authentication module. The afid field of Fcall structure is only valid with Tauth or Tattach. Tread, Twrite, Tclunk should use rx->fid instead. It's been lucky so far to get the job done because rx->afid survives from previous Tauth/Tattach. The issue pops up when several authentications happen concurrently. Test case: u9fs = 'host with u9fs on tcp!*!564' 9fs $u9fs; for(i in 1 2 3 4 5 6 7 8){ 9fs $u9fs & }; wait Should: no errors Should not: mount failed: authentication failed
2013-11-26ndb/dns: do dnresolve() loopcheck only on hosts that we havnt already triedcinap_lenrek
we might get a unreachable nameserver ip from a parent nameserver. if the remaining set of nameservers does not loop, we should try to resolve them. so skip the loopcheck for nameservers already tried.
2013-11-24theo: Don't like it? Then walk away.stanley lieber
2013-11-25faces: use 9front icon for googlecode.com/plan9frontcinap_lenrek
2013-11-25abaco: make validurl() accept internationalized domain namescinap_lenrek
validurl() is just used to check if the string is a full absolute url with a protocol scheme. we do not have to match the host part *exactly*, only if there is *something* in the hostpart.
2013-11-24webfs: preserve unicode hostname, only convert to ascii when sending over ↵cinap_lenrek
the wire we'd like to keep Url.host in unicode for factotum key lookup. only when we send the url in a request, we have to convert it to ascii.
2013-11-24webfs: support for internationalized domain name urlscinap_lenrek
2013-11-24ndb/dns: add support for internationalized domain namescinap_lenrek
2013-11-24kbdfs: fix ctlr+alt+del with new escape pagescinap_lenrek
2013-11-23faces: add 9front.org/unknown (thanks qrstuv)cinap_lenrek
2013-11-23ndb/dns: ignore refused (5) error repliescinap_lenrek
2013-11-23removing (outdated) drawtermcinap_lenrek
drawterm is much better maintained by russ cox, so removing this outdated copy. for a more recent version, go to: http://swtch.com/drawterm/
2013-11-23kbdfs: add esc1+shift and esc1+ctrl pages (see sources kbmap-uk-weird patch)cinap_lenrek
Add pages for esc1+shift and esc1+ctrl - some UK USB keyboards (Dell) and it seems some German ones: https://groups.google.com/forum/#!topic/comp.os.plan9/ycok6NTCWCg seem to generate an esc1 + code scancode combination for the pipe/backslash key. Seems like overkill to add two whole pages for just two keys, but there again RAM is cheap these days. Probably should take the changes across to omap/kbd.c (and by extension bcm/kbd.c) but the changes are trivial.
2013-11-22kernel: more kproc pexit() and sleep error handlingcinap_lenrek
2013-11-22pc kernel: kproc error and exitcinap_lenrek
catch the error() that can be thrown by sleep() and tsleep() in kprocs. add missing pexit() calls. always set the freemem argument to pexit() from kproc otherwise the process gets added to the broken list.
2013-11-22kernel: kproc error and exitcinap_lenrek
catch the error() that can be thrown by sleep() and tsleep() in kprocs. add missing pexit() calls. always set the freemem argument to pexit() from kproc otherwise the process gets added to the broken list.
2013-11-22acme: fix arrow key oddity (thanks mark van atten and erik)cinap_lenrek
from 9atom/acmearrowfun patch: reported by mark van atten In Plan 9 acme, if you type {} then go back and type text between the brackets {Curiouser and curiouser!} the right arrow is blocked when you want to go over the closing bracket to continue typing to its right. (If you first go to the left, and then back to the right, it works.) Same for the other brackets: [ ], ( ), < >. noted that brackets are not necessary. same behavior with any character. fix is to textcommit before moving.
2013-11-20rio -b: make lighttitlecol darkerstanley lieber
2013-11-20fortunes: That's the process.stanley lieber