]> git.lizzy.rs Git - plan9front.git/log
plan9front.git
9 years agosgi: new approach for etherseeq
cinap_lenrek [Sat, 28 Mar 2015 13:11:17 +0000 (14:11 +0100)]
sgi: new approach for etherseeq

touching transmit descriptors while dma is running causes the
front to fall off. new approach keeps a counter of free
descriptors in the Ring structure that is incremented
by txintr() when transmit completed.

txintr() will clean descriptors once dma has stopped and
restart dma when there are more descrtors in the chain.

9 years agosgi: work in progress kernel for sgi mips machines (only tested with r5k indy)
cinap_lenrek [Sat, 28 Mar 2015 04:15:40 +0000 (05:15 +0100)]
sgi: work in progress kernel for sgi mips machines (only tested with r5k indy)

this provides basic console support using the ARC bios routines
theu uartarcs driver. and has native seeq ethernet driver which
was written by reading the 2ed devseq driver as i have no
documentation on the hardware. mmu and trap code is based on the
routerboard kernel.

9 years agomothra: remove unused confirmcurs; move confirmcursor up with the other cursors.
ethan [Fri, 27 Mar 2015 01:57:46 +0000 (01:57 +0000)]
mothra: remove unused confirmcurs; move confirmcursor up with the other cursors.

9 years agofortunes: TED, day 1: I want to believe -- WIRED magazine
stanley lieber [Fri, 27 Mar 2015 00:43:41 +0000 (20:43 -0400)]
fortunes: TED, day 1: I want to believe -- WIRED magazine

9 years agopc, pc64: state dependency to usbehci.h in mkfiles
cinap_lenrek [Wed, 25 Mar 2015 16:42:51 +0000 (17:42 +0100)]
pc, pc64: state dependency to usbehci.h in mkfiles

9 years agompdigdiv.s: aaaaand its gone!
cinap_lenrek [Wed, 25 Mar 2015 13:19:05 +0000 (14:19 +0100)]
mpdigdiv.s: aaaaand its gone!

9 years agoape: fix main9 for mips
cinap_lenrek [Wed, 25 Mar 2015 12:56:04 +0000 (13:56 +0100)]
ape: fix main9 for mips

9 years agolibmp: use portable mpdigdiv routines for mips (causes invalid instruction trap on...
cinap_lenrek [Wed, 25 Mar 2015 12:55:37 +0000 (13:55 +0100)]
libmp: use portable mpdigdiv routines for mips (causes invalid instruction trap on indy)

9 years agoape: fix lockinit() for mips
cinap_lenrek [Wed, 25 Mar 2015 07:33:11 +0000 (08:33 +0100)]
ape: fix lockinit() for mips

9 years agozynq: fix out of bounds access in etherprobe()
cinap_lenrek [Wed, 25 Mar 2015 02:03:24 +0000 (03:03 +0100)]
zynq: fix out of bounds access in etherprobe()

calling etherprobe() with -1 cardno will rereference
and call cards[-1].reset() which is wrong. don't do that!

9 years agoboot: allow alternative proto files per kernel and kernel config for bootfs.paq
cinap_lenrek [Tue, 24 Mar 2015 23:11:54 +0000 (00:11 +0100)]
boot: allow alternative proto files per kernel and kernel config for bootfs.paq

bootmkfile will now looks for the following proto files in order
and pick the first one it finds to build the bootfs.paq file:

1) $CONF.boofs.proto (config specific)
2) bootfs.proto (kernel specific)
3) $BOOTDIR/bootfs.proto (default generic)

9 years agovc: fix coffsect.lnno overflow into nreloc
cinap_lenrek [Tue, 24 Mar 2015 21:54:26 +0000 (22:54 +0100)]
vc: fix coffsect.lnno overflow into nreloc

the coffsect.lnno field is 16 bit and can overflow into
the nreloc field confusing arc firmware on load. just
mask it to prevent overflow.

9 years agoircrc: remove unused clonefile
ftrvxmtrx [Mon, 23 Mar 2015 13:28:28 +0000 (14:28 +0100)]
ircrc: remove unused clonefile

9 years agoboot: bind #c to /dev with MREPL instead of MBEFORE to avoid double entries
cinap_lenrek [Mon, 23 Mar 2015 02:15:58 +0000 (03:15 +0100)]
boot: bind #c to /dev with MREPL instead of MBEFORE to avoid double entries

9 years agovl, libmach, kernel: mips has 16K alignment for segments (for bigpages)
cinap_lenrek [Sun, 22 Mar 2015 16:49:28 +0000 (17:49 +0100)]
vl, libmach, kernel: mips has 16K alignment for segments (for bigpages)

9 years agomerge
cinap_lenrek [Sun, 22 Mar 2015 16:42:31 +0000 (17:42 +0100)]
merge

9 years agousbohci: ensure Ed and Td alignment, fix for amd64
cinap_lenrek [Sun, 22 Mar 2015 16:41:35 +0000 (17:41 +0100)]
usbohci: ensure Ed and Td alignment, fix for amd64

9 years agomerge
cinap_lenrek [Thu, 19 Mar 2015 10:45:50 +0000 (11:45 +0100)]
merge

9 years agodb: fix unicode support (thanks giacomo)
cinap_lenrek [Thu, 19 Mar 2015 10:44:26 +0000 (11:44 +0100)]
db: fix unicode support (thanks giacomo)

from the unicode-db patch readme:

command() receives a char* that is assigned to lp, which is a Rune*,
and lp is incremented later in readchar(), so each read consumed 4 bytes.
The only time command() is called is in runpcs() with bkpt->comm,
which is a char* built in subpcs through a char*, so the string stored in
bkpt->comm was not a Rune string. A way to test the bug is:

db program
main:b argv/X
:r

9 years agopushtls(2): tls.h -> libsec.h (thanks, pr)
stanley lieber [Wed, 18 Mar 2015 22:33:34 +0000 (18:33 -0400)]
pushtls(2): tls.h -> libsec.h (thanks, pr)

9 years agodhcpd: ignore ";" filename from sgi arcs bootp(); command
cinap_lenrek [Wed, 18 Mar 2015 18:52:31 +0000 (19:52 +0100)]
dhcpd: ignore ";" filename from sgi arcs bootp(); command

9 years agolibmach: use #pragma pack to force 4 byte alignment of bootexec.h structures for...
cinap_lenrek [Wed, 18 Mar 2015 18:31:51 +0000 (19:31 +0100)]
libmach: use #pragma pack to force 4 byte alignment of bootexec.h structures for amd64

9 years agoape: silence compiler "no return at end of function" for mips lock.c
cinap_lenrek [Wed, 18 Mar 2015 18:30:12 +0000 (19:30 +0100)]
ape: silence compiler "no return at end of function" for mips lock.c

9 years agomerge
cinap_lenrek [Tue, 17 Mar 2015 15:13:25 +0000 (16:13 +0100)]
merge

9 years ago6c: MOVL xxx, r; MOVLQZX r, r -> MOVL xxx, r
cinap_lenrek [Tue, 17 Mar 2015 15:12:01 +0000 (16:12 +0100)]
6c: MOVL xxx, r; MOVLQZX r, r -> MOVL xxx, r

eleminate MOVLQXZ instructions after MOVL as MOVL implicitely
zero extends the result.

9 years agossam: fix typo
stanley lieber [Tue, 17 Mar 2015 03:44:04 +0000 (23:44 -0400)]
ssam: fix typo

9 years agossam: don't pollute the environment.
stanley lieber [Tue, 17 Mar 2015 03:42:58 +0000 (23:42 -0400)]
ssam: don't pollute the environment.

9 years agomp(2) man page: mpinvert, not mpinverse (thanks, pr)
stanley lieber [Tue, 17 Mar 2015 03:34:37 +0000 (23:34 -0400)]
mp(2) man page: mpinvert, not mpinverse (thanks, pr)

9 years agokernel: get rid of auxpage() and preserve cache index bits in Page.va in mount cache
cinap_lenrek [Mon, 16 Mar 2015 04:46:08 +0000 (05:46 +0100)]
kernel: get rid of auxpage() and preserve cache index bits in Page.va in mount cache

the mount cache uses Page.va to store cached range offset and
limit, but mips kernel uses cache index bits from Page.va to
maintain page coloring. Page.va was not initialized by auxpage().

this change removes auxpage() which was primarily used only
by the mount cache and use newpage() with cache file offset
page as va so we will get a page of the right color.

mount cache keeps the index bits intact by only using the top
and buttom PGSHIFT bits of Page.va for the range offset/limit.

9 years agokernel: avoid repeated calls to reclaim(), dont miss last page in Pte
cinap_lenrek [Mon, 16 Mar 2015 04:23:38 +0000 (05:23 +0100)]
kernel: avoid repeated calls to reclaim(), dont miss last page in Pte

when we are skipping a process because we could not acquire
its segment lock, dont call reclaim() again (which is pointless
as we didnt pageout any pages), instead try the next process.

the Pte.last pointer is inclusive, so don't miss the last page
in pageout().

9 years agorsa(8): recommend secstore(1) for Plan 9 RSA private key storage
cinap_lenrek [Sun, 15 Mar 2015 20:24:03 +0000 (21:24 +0100)]
rsa(8): recommend secstore(1) for Plan 9 RSA private key storage

9 years agomothra: <del>, <ins>, <wbr>
cinap_lenrek [Sun, 15 Mar 2015 17:01:06 +0000 (18:01 +0100)]
mothra: <del>, <ins>, <wbr>

9 years agomothra: add <strike> support
cinap_lenrek [Sun, 15 Mar 2015 16:05:24 +0000 (17:05 +0100)]
mothra: add <strike> support

9 years agoboot: disable group/other permission checking in bootfs paqfs
cinap_lenrek [Sun, 15 Mar 2015 14:27:56 +0000 (15:27 +0100)]
boot: disable group/other permission checking in bootfs paqfs

when building bootfs in d770 mode directory, the other permissions
in bootfs paq are masked off which results in boot to fail. theres
no point in checking group/other permissions on boot, so just disable
permissin checking in paqfs with the -a flag.

9 years agodoom: print correct version number on mismatch (thanks qu7uux)
cinap_lenrek [Sat, 14 Mar 2015 21:23:39 +0000 (22:23 +0100)]
doom: print correct version number on mismatch (thanks qu7uux)

9 years agowebfs: do not send credentials in automatic referer url
cinap_lenrek [Sat, 14 Mar 2015 00:09:37 +0000 (01:09 +0100)]
webfs: do not send credentials in automatic referer url

9 years agorc-httpd: support for http basic authentication, fix cgi support to work with hgweb.cgi
cinap_lenrek [Sat, 14 Mar 2015 00:02:43 +0000 (01:02 +0100)]
rc-httpd: support for http basic authentication, fix cgi support to work with hgweb.cgi

9 years agohttpauth: little helper for rc-httpd to do http basic authentication with plan9 auth...
cinap_lenrek [Sat, 14 Mar 2015 00:00:26 +0000 (01:00 +0100)]
httpauth: little helper for rc-httpd to do http basic authentication with plan9 auth server

9 years agohg, python: remove proto files
cinap_lenrek [Fri, 13 Mar 2015 17:45:58 +0000 (18:45 +0100)]
hg, python: remove proto files

9 years agohg: install hgweb templates
cinap_lenrek [Fri, 13 Mar 2015 17:30:59 +0000 (18:30 +0100)]
hg: install hgweb templates

9 years agopemencode: handle base64 input length < 3, fix bogus zero termination
cinap_lenrek [Thu, 12 Mar 2015 16:44:33 +0000 (17:44 +0100)]
pemencode: handle base64 input length < 3, fix bogus zero termination

9 years agoimap4d: simplify auth code using encodefmt(), use readn() to get multiple of 3*18...
cinap_lenrek [Thu, 12 Mar 2015 16:29:17 +0000 (17:29 +0100)]
imap4d: simplify auth code using encodefmt(), use readn() to get multiple of 3*18 in base64 input buffer

9 years agowebfs: simplify http basic auth code by using encodefmt()
cinap_lenrek [Thu, 12 Mar 2015 16:26:49 +0000 (17:26 +0100)]
webfs: simplify http basic auth code by using encodefmt()

9 years agoupas/marshal: deduplicate cistrcmp()/cistrncmp()/enc64()
cinap_lenrek [Thu, 12 Mar 2015 16:23:56 +0000 (17:23 +0100)]
upas/marshal: deduplicate cistrcmp()/cistrncmp()/enc64()

use the libc versions of these routines avoiding
code duplication.

9 years agondb/dns: reduce sencodefmt() to not link in enc32()/enc64() encoders
cinap_lenrek [Wed, 11 Mar 2015 17:09:48 +0000 (18:09 +0100)]
ndb/dns: reduce sencodefmt() to not link in enc32()/enc64() encoders

the special sencodefmt() in ndb/dn.c is only used with %H format for
hexadecimal printing for binary strings. removing the unused
calls to enc32() and enc64() reduces the code size by arround 4K.
(this is usefull for ndb/getip which gets linked into the kernel).

9 years agoencode(2): clarify lim argument to enc*(), add SOURCE reference for encodefmt()
cinap_lenrek [Wed, 11 Mar 2015 16:48:24 +0000 (17:48 +0100)]
encode(2): clarify lim argument to enc*(), add SOURCE reference for encodefmt()

9 years agomerge
cinap_lenrek [Wed, 11 Mar 2015 16:28:19 +0000 (17:28 +0100)]
merge

9 years agosmtp, smtpd: fix use of enc64(), fix memory leaks in doauth()
cinap_lenrek [Wed, 11 Mar 2015 16:14:56 +0000 (17:14 +0100)]
smtp, smtpd: fix use of enc64(), fix memory leaks in doauth()

the approximation of n*2 to calculate the number of output bytes
for enc64() fails for inputs of size < 3. this is fixed by using
encodefmt() which gets the calculation right and also simplifies
the code avoiding the allocation and freeing of intermediate string
buffers.

9 years agonetaudit: comment file server auth test (unreliable on cwfs)
aiju [Wed, 11 Mar 2015 15:13:42 +0000 (16:13 +0100)]
netaudit: comment file server auth test (unreliable on cwfs)

9 years agogif: fix color table clipping (for cb5.gif)
cinap_lenrek [Wed, 11 Mar 2015 11:59:19 +0000 (12:59 +0100)]
gif: fix color table clipping (for cb5.gif)

9 years agofactotum: remove unused extern declarations of invoker and authdom from header
cinap_lenrek [Wed, 11 Mar 2015 10:56:02 +0000 (11:56 +0100)]
factotum: remove unused extern declarations of invoker and authdom from header

9 years agokernel: fix integer overflow in syssegflush(), segment code cleanup
cinap_lenrek [Tue, 10 Mar 2015 17:16:08 +0000 (18:16 +0100)]
kernel: fix integer overflow in syssegflush(), segment code cleanup

mcountseg(), mfreeseg():
use Pte.first/last pointers when possible and avoid constructs
like s->map[i]->pages[j].

freepte():
do not zero entries in freepte(), the segment is going away and
here is no point in zeroing page pointers. hoist common code at
the top avoiding duplication.

segpage(), fixfault():
avoid load after store for Pte** pointer.

fixfault():
return -1 in default case to avoid the "used but not set" warning
for mmuphys and get rid of the useless initialization.

syssegflush():
due to len being unsigned, the pe = PGROUND(pe) can make "chunk"
bigger than len causing a overflow. rewrite the function and deal
with page alignment and errors at the beginning.

syssegflush(), segpage(), fixfault(), putseg(), relocateseg(),
mcountseg(), mfreeseg():
keep naming consistent.

9 years agowpa(8): the -p flag will also prompt for user/password on wpa enterprise
cinap_lenrek [Mon, 9 Mar 2015 23:44:17 +0000 (00:44 +0100)]
wpa(8): the -p flag will also prompt for user/password on wpa enterprise

9 years agopushtls(2): fix signature to TLSconn.trace()
cinap_lenrek [Mon, 9 Mar 2015 23:41:46 +0000 (00:41 +0100)]
pushtls(2): fix signature to TLSconn.trace()

9 years agowebfs: implement CONNECT method for https connections over proxy
cinap_lenrek [Mon, 9 Mar 2015 19:26:20 +0000 (20:26 +0100)]
webfs: implement CONNECT method for https connections over proxy

when using a http proxy, establish secure tls connection to the
other end with the CONNECT method so the proxy.

9 years agotheo: OpenBSD is not generally known as an exposed democracy.
stanley lieber [Mon, 9 Mar 2015 01:52:34 +0000 (21:52 -0400)]
theo: OpenBSD is not generally known as an exposed democracy.

9 years agog: search .awk and .rc files
stanley lieber [Mon, 9 Mar 2015 01:46:00 +0000 (21:46 -0400)]
g: search .awk and .rc files

9 years agogs: fix bug 694539. Reading off the end of the cbuf when dash pattern len is max
cinap_lenrek [Sun, 8 Mar 2015 04:27:24 +0000 (05:27 +0100)]
gs: fix bug 694539. Reading off the end of the cbuf when dash pattern len is max

9 years agokernel: catch address overflow in syssegfree()
cinap_lenrek [Sat, 7 Mar 2015 17:59:06 +0000 (18:59 +0100)]
kernel: catch address overflow in syssegfree()

the "to" address can overflow in syssegfree() causing wrong
number of pages to be passed to mfreeseg(). with the current
implementation of mfreeseg() however, this doesnt cause any
data corruption but was just freeing an unexpected number of
pages.

this change checks for this condition in syssegfree() and
errors out instead. also mfreeseg() was changed to take
ulong argument for number of pages instead of int to keep
it consistent with other routines that work with page counts.

9 years agosnap: fix readseg() to cope with > 2gb segments
cinap_lenrek [Sat, 7 Mar 2015 14:21:01 +0000 (15:21 +0100)]
snap: fix readseg() to cope with > 2gb segments

9 years agomerge
cinap_lenrek [Fri, 6 Mar 2015 17:30:25 +0000 (18:30 +0100)]
merge

9 years agozynq: sdio support
cinap_lenrek [Fri, 6 Mar 2015 17:29:39 +0000 (18:29 +0100)]
zynq: sdio support

9 years agodevsd: always page align sd buffers
cinap_lenrek [Fri, 6 Mar 2015 15:16:45 +0000 (16:16 +0100)]
devsd: always page align sd buffers

sdbio() tests if it can pass the buffer pointer directly to
the driver when it is already in kernel memory. we also need
to check if the buffer is properly aligned but alignment
requirement is handled in system specific sdmalloc() and
was not known to devsd.

to solve this, we *always* page align sd buffers and get rid
of the system specific sdmalloc() macro (was only used in bcm
kernel).

9 years agozynq: do mpinit() early so cpu1 debug prints do not intermix
cinap_lenrek [Fri, 6 Mar 2015 13:31:51 +0000 (14:31 +0100)]
zynq: do mpinit() early so cpu1 debug prints do not intermix

9 years agomerge
cinap_lenrek [Thu, 5 Mar 2015 09:17:23 +0000 (10:17 +0100)]
merge

9 years agoset /mail/tmp permissions world writable in cdproto
cinap_lenrek [Thu, 5 Mar 2015 09:16:17 +0000 (10:16 +0100)]
set /mail/tmp permissions world writable in cdproto

9 years agozynq: fix usb by implementing delay() and give proper port speed in portstatus
cinap_lenrek [Thu, 5 Mar 2015 22:48:23 +0000 (23:48 +0100)]
zynq: fix usb by implementing delay() and give proper port speed in portstatus

9 years agocol(1): add SOURCE (thanks, qrstuv)
stanley lieber [Thu, 5 Mar 2015 00:23:34 +0000 (19:23 -0500)]
col(1): add SOURCE (thanks, qrstuv)

9 years agolibthread: get rid of chaninit() (thanks qrstuv)
cinap_lenrek [Wed, 4 Mar 2015 09:20:31 +0000 (10:20 +0100)]
libthread: get rid of chaninit() (thanks qrstuv)

chaninit() does not initialize Chan.qentry and Chan.nentry
and there is no way to get rid of such a channel. nobody is
using it, so removing the function to avoid confusion.

9 years agokernel: fix physical segment handling
cinap_lenrek [Tue, 3 Mar 2015 12:08:29 +0000 (13:08 +0100)]
kernel: fix physical segment handling

ignore physical segments in mcountseg() and mfreeseg(). physical
segments are not backed by user pages, and doing putpage() on
physical segment pages in mfreeseg() is an error.

do now allow physical segemnts to be resized. the segment size
is only checked in segattach() to be within the physical segment!

ignore physical segments in portcountpagerefs() as pagenumber()
does not work on the malloced page structures of a physical segment.

get rid of Physseg.pgalloc() and Physseg.pgfree() indirection as
this was never used and if theres a need to do more efficient
allocation, it should be done in a portable way.

9 years agolibdraw: font->display->defaultsubfont vs. display->defaultsubfont, dead code, malloc...
cinap_lenrek [Mon, 2 Mar 2015 10:01:12 +0000 (11:01 +0100)]
libdraw: font->display->defaultsubfont vs. display->defaultsubfont, dead code, malloc erros

it is possible to have fonts belong to different or no display, so the
check for defaultsubfont has to be against font->display, not the global
display variable.

remove unused freeup() routine.

handle strdup() error in allocsubfont() and realloc() error in buildfont().

9 years agodevmnt: remove unused mntstats fields from Mntrpc
cinap_lenrek [Sun, 1 Mar 2015 17:56:45 +0000 (18:56 +0100)]
devmnt: remove unused mntstats fields from Mntrpc

9 years agofactotum: cleanup getnvramkey()
cinap_lenrek [Sun, 1 Mar 2015 10:17:21 +0000 (11:17 +0100)]
factotum: cleanup getnvramkey()

- remove secstore password code, it is not used anymore.
- zero the Nvrsafe structure on the stack before returning.
- use smprint(), can't overflow.

9 years agolibdraw: use multiple read() calls in openfont() to read .font file
cinap_lenrek [Sun, 1 Mar 2015 04:45:22 +0000 (05:45 +0100)]
libdraw: use multiple read() calls in openfont() to read .font file

font files might be bigger than the i/o unit, so do multiple reads
until eof to read it.

9 years agolibdraw: use readn() to read headers and Fontchar array
cinap_lenrek [Sun, 1 Mar 2015 04:39:45 +0000 (05:39 +0100)]
libdraw: use readn() to read headers and Fontchar array

the Fontchar array might be bigger than the i/o unit,
so we have to use readn() to properly read it.

9 years ago6c: fix missing memset in Bconv()
cinap_lenrek [Sun, 1 Mar 2015 04:33:41 +0000 (05:33 +0100)]
6c: fix missing memset in Bconv()

9 years agothread(2): remove another instance of /mnt/temp
cinap_lenrek [Sat, 28 Feb 2015 12:27:00 +0000 (13:27 +0100)]
thread(2): remove another instance of /mnt/temp

9 years agolibthread: remove unused internal functions and old xinc assembler files
cinap_lenrek [Sat, 28 Feb 2015 12:26:38 +0000 (13:26 +0100)]
libthread: remove unused internal functions and old xinc assembler files

9 years agolibthread: use devdup instead of mounting pipe to /mnt/temp for close-on-exec in...
cinap_lenrek [Sat, 28 Feb 2015 11:50:17 +0000 (12:50 +0100)]
libthread: use devdup instead of mounting pipe to /mnt/temp for close-on-exec in procexec()

the namespace might be shared by other processes. instead, we
create a anonymous pipe with pipe() and use devdup to open one
end close-on-exec. this is shorter and avoids the race condition.

do not touch Execargs after writing the error message as the
process might be gone after the write. this was to manually
close the fd which isnt neccesary as the kernel will do it
for us on the following exit.

9 years agoleak: report alloc size mismatch
cinap_lenrek [Thu, 26 Feb 2015 21:33:03 +0000 (22:33 +0100)]
leak: report alloc size mismatch

9 years agopool: maintain Pool.curalloc for poolallocalign() and blockgrow()
cinap_lenrek [Thu, 26 Feb 2015 21:22:07 +0000 (22:22 +0100)]
pool: maintain Pool.curalloc for poolallocalign() and blockgrow()

blockgrow() and poolallocalign() change the size of
allocated blocks which needs to be accounted for
in Pool.curalloc.

9 years agofortunes: My recent incompetence is humbling. I should quit the industry.
stanley lieber [Thu, 26 Feb 2015 00:22:47 +0000 (19:22 -0500)]
fortunes: My recent incompetence is humbling.  I should quit the industry.

9 years agoaux/vga: dont error when vesa setscale fails after modeset (thanks rx9p for reporting)
cinap_lenrek [Wed, 25 Feb 2015 23:54:23 +0000 (00:54 +0100)]
aux/vga: dont error when vesa setscale fails after modeset (thanks rx9p for reporting)

9 years agokbdfs: work arround qemu
cinap_lenrek [Tue, 24 Feb 2015 13:21:47 +0000 (14:21 +0100)]
kbdfs: work arround qemu

qemu does not send e0 escape for gray (arrow) keys, no matter
the numlock state. as a work arround, we assume gray key when
numlock is not active.

9 years agolibdraw: check fontchar count in openmemsubfont() and readsubfont()
cinap_lenrek [Tue, 24 Feb 2015 02:30:21 +0000 (03:30 +0100)]
libdraw: check fontchar count in openmemsubfont() and readsubfont()

9 years agolibdraw: cleanup getsubfont()
cinap_lenrek [Tue, 24 Feb 2015 02:25:26 +0000 (03:25 +0100)]
libdraw: cleanup getsubfont()

9 years agowebfs: check $httpproxy and error when its bogus
cinap_lenrek [Mon, 23 Feb 2015 06:27:19 +0000 (07:27 +0100)]
webfs: check $httpproxy and error when its bogus

the httpproxy environment variable needs to be a url as stated
in the manpage, so give an error when it isnt.

9 years agomerge
cinap_lenrek [Mon, 23 Feb 2015 00:23:31 +0000 (01:23 +0100)]
merge

9 years agojpg: handle progressive non-interleaved mode
cinap_lenrek [Mon, 23 Feb 2015 00:20:42 +0000 (01:20 +0100)]
jpg: handle progressive non-interleaved mode

9 years agomerge
cinap_lenrek [Sat, 21 Feb 2015 09:56:32 +0000 (10:56 +0100)]
merge

9 years agogs: backport 16MB string support
cinap_lenrek [Sat, 21 Feb 2015 09:55:09 +0000 (10:55 +0100)]
gs: backport 16MB string support

9 years agorestore balance to reality
khm [Fri, 20 Feb 2015 20:09:25 +0000 (15:09 -0500)]
restore balance to reality

9 years agoio(1), seg(1): add HISTORY section to man pages (thanks, jpm_)
stanley lieber [Fri, 20 Feb 2015 19:28:56 +0000 (14:28 -0500)]
io(1), seg(1): add HISTORY section to man pages (thanks, jpm_)

9 years agodevusb: check for nil hp->dump and hp->seprintep
cinap_lenrek [Fri, 20 Feb 2015 17:56:22 +0000 (18:56 +0100)]
devusb: check for nil hp->dump and hp->seprintep

9 years agopc, pc64: simplify intrdisable()
cinap_lenrek [Fri, 20 Feb 2015 17:43:32 +0000 (18:43 +0100)]
pc, pc64: simplify intrdisable()

9 years agodevusb: fix debug ctl nil crash
cinap_lenrek [Fri, 20 Feb 2015 17:42:24 +0000 (18:42 +0100)]
devusb: fix debug ctl nil crash

9 years agogs: backport aes support for pdf-1.6
cinap_lenrek [Thu, 19 Feb 2015 23:21:45 +0000 (00:21 +0100)]
gs: backport aes support for pdf-1.6

9 years agogs: work arround broken xref table pdfs
cinap_lenrek [Thu, 19 Feb 2015 10:44:16 +0000 (11:44 +0100)]
gs: work arround broken xref table pdfs

rebuilding the xref table does not work for pdfs with
compressed object streams. as a work arround, we skip
xref table verification and ignore wrong xref gen #
for gen 0 objects.

9 years agopc, pc64: fix intrdisable() MaxIrqLAPIC -> MaxVectorAPIC (thanks mischief)
cinap_lenrek [Wed, 18 Feb 2015 05:30:01 +0000 (06:30 +0100)]
pc, pc64: fix intrdisable() MaxIrqLAPIC -> MaxVectorAPIC (thanks mischief)

9 years ago6c: eleminate more MOV instructions
cinap_lenrek [Wed, 18 Feb 2015 22:34:33 +0000 (23:34 +0100)]
6c: eleminate more MOV instructions

convert:

x = B || W
MOVxLZX a, r; MOVxQZX r, b -> MOVxQZX a, r; MOVQ r, b
MOVxLSX a, r; MOVxQSX r, r -> MOVxQSX a, r; MOVQ r, r

the MOVQ can then be eleminated by copy propagation.

improve subprop() by accepting other mov and lea
instructions as the source op.