cinap_lenrek
4fe7daeca4
exportfs: retry execing ourselfs as "/bin/exportfs" (argv0 might be relative path)
2016-02-14 04:49:48 +01:00
cinap_lenrek
232a064f3a
exportfs: properly reply to chdir() error when we speak 9p
...
when we got a bad root tree, we should speak the right language
and return a Rerror response instead of crapping ascii into
the 9p conversation.
2016-02-14 04:48:48 +01:00
cinap_lenrek
a9b1e990b8
tlsclient: add -o option to establish connection over a file, free the AuthInfo structure to avoid leaking secrets
2016-02-14 02:06:08 +01:00
cinap_lenrek
9ec9a47789
newuser: /n/other now handled in /lib/namespace
2016-02-14 01:52:51 +01:00
cinap_lenrek
ecebba779f
provide /n and /mnt early in bootrc to allow consistent use in /lib/namespace
...
theres a bootstrap problem:
when /bin/init is run, it processes /lib/namespace where we might want to
mount or bind resources to /n or /mnt. but mntgen was run later in
cpurc/termrc so these mounts would be ignored.
we already have mntgen in bootfs, so we can provide these mountpoints early.
i keep the termrc/cpurc mntgens where they are, but ignore the error
prints. this way old kernels will continue to work.
2016-02-14 01:42:32 +01:00
cinap_lenrek
24150b1171
tlssrv: add -A flag to skip changing user after authentication (usefull for aan)
2016-02-13 17:24:59 +01:00
cinap_lenrek
3b835a1d23
merge
2016-02-13 16:43:15 +01:00
cinap_lenrek
c3867623ae
rio: fix wrong frame colors when moving non-current window
...
When a window is moved or reshaped, that implicitely tops
the window and makes it current. The conseqence of this
is that we always have to redraw the window as if it where
a current window in any case. This was handled for Reshaped
windows, but not when the window was just moved. We now
handle both cases the exact same way, getting rid of the
Moved wctl message.
2016-02-13 16:36:24 +01:00
ftrvxmtrx
668318b2e6
ip/chandial: fail with Ebadarg instead of printing memory contents
2016-02-12 23:52:50 +02:00
cinap_lenrek
eeb96dca21
libsec: simplify pkcs1_decrypt()
2016-02-11 22:59:25 +01:00
cinap_lenrek
fac5be2d2e
merge
2016-02-11 22:43:50 +01:00
cinap_lenrek
6033931b02
libsec: fix double free in pkcs1_decrypt(), handle bad epm length in tlsSecRSAs(), cleanup
2016-02-11 22:42:28 +01:00
cinap_lenrek
2ca8e31066
removing libgio, this is not golang mveery >:-(
2016-02-10 05:11:11 +01:00
Matthew Veety
9b2bed733c
fixed a typo
2016-02-09 17:02:18 -05:00
Matthew Veety
a54782d69b
Imported ngfs libgio. This is a library to create virtual file descriptors, similar to common lisp grey-streams or golang's io.Reader/io.Writer. Now 95% bug-free.
2016-02-09 16:24:41 -05:00
stanley lieber
9c3de0c87a
fortunes: ./configure CFLAGS="-I$HOME/source/harvey/ape/amd64/include -I$HOME/source/harvey/ape/include -mno-red-zone -ffreestanding -fno-builtin -nostdlib -trigraphs -D_SUSV2_SOURCE -D_POSIX_SOURCE -D_LIMITS_EXTENSION -D_BSD_SOURCE -D_BSD_EXTENSION -DHAVE_SOCK_OPTS -DHARVEY -DPlan9" LDFLAGS="-static $HOME/source/harvey/ape/amd64/lib/crt1.o $HOME/source/harvey/ape/amd64/lib/crti.o $HOME/source/harvey/ape/amd64/lib/crtn.o -L$HOME/source/harvey/ape/amd64/lib -L$HOME/source/harvey/amd64/lib" LIBS="-lbsd -lap -lc" LIBM="" --prefix=$HOME/source/harvey/ape/ports *--host=x86_64-linux-gnu --build=x86_64-harvey *--enable-shared=no
2016-02-08 20:07:56 -05:00
cinap_lenrek
3d20565a78
webfs: faster shutdown using postnote()
...
when the 9p end is closed, post a note to our private note
group to shoot down http procs. this results in quicker
release of namespace resources.
2016-02-08 19:35:26 +01:00
cinap_lenrek
b63a6bf626
libsec: fix missing error case unlock() in tlshands initCiphers()
2016-02-07 00:31:30 +01:00
cinap_lenrek
faecd86ee6
factotum: fix nil pointer crash on p9skclosekey(), thanks k0ga
...
oversight, closekey is called again even if addkey failed, which
will have Key.priv nil.
stack trace:
memset(data=0x0,n=0x1f8)+0x58 /sys/src/libc/arm/memset.s:40
p9skclosekey(k=0x55358)+0x18 /sys/src/cmd/auth/factotum/p9sk1.c:493
closekey(k=0x55358)+0x7c /sys/src/cmd/auth/factotum/util.c:247
ctlwrite(a=0x552f8,atzero=0x0)+0x320 /sys/src/cmd/auth/factotum/rpc.c:503
fswrite(r=0x53b78)+0x1b0 /sys/src/cmd/auth/factotum/fs.c:574
swrite(r=0x53b78,srv=0x423e8)+0x134 /sys/src/lib9p/srv.c:559
srvwork()+0x2a4 /sys/src/lib9p/srv.c:746
srv(srv=0x423e8)+0xcc /sys/src/lib9p/srv.c:825
postproc()+0x3c /sys/src/lib9p/post.c:120
rforker(flag=0x1,fn=0x39f98,arg=0x423e8)+0x34 /sys/src/lib9p/rfork.c:16
_postmountsrv(s=0x423e8,name=0x0,mtpt=0x46f70,flag=0x1)+0xb8 /sys/src/lib9p/post.c:27
postmountsrv(name=0x0,mtpt=0x46f70,flag=0x1)+0x20 /sys/src/lib9p/rfork.c:32
main(argv=0x1fffff9c,argc=0x0)+0x23c /sys/src/cmd/auth/factotum/fs.c:157
_main+0x28 /sys/src/libc/arm/main9.s:19
acid: /sys/src/cmd/auth/factotum/p9sk1.c:493
2016-02-06 22:26:29 +01:00
cinap_lenrek
b7f2aed0f2
libsec: mpconv -> mpfmt
2016-02-06 07:19:31 +01:00
mischief
ad637845a8
libmp: remove include of libsec.h
2016-02-05 19:29:55 -08:00
cinap_lenrek
f1254da64d
libmp: handle out of memory case in gmfield()
2016-02-04 03:11:46 +01:00
cinap_lenrek
78808ca314
libsec: refactor asn1 encoding of digest for rsa signatures, fix memory leak in ecverify
2016-02-03 04:18:54 +01:00
cinap_lenrek
cc8e8c978c
tlssrv: p9any authentication support using TLS-PSK cipher suits
2016-02-01 22:49:20 +01:00
cinap_lenrek
a291bbdedd
libsec: ecdsa client support for tlshand, cleanups
2016-02-01 21:34:49 +01:00
cinap_lenrek
0bfac109a4
mpc: constant expression folding
2016-02-01 19:27:57 +01:00
cinap_lenrek
340d83d49d
games/doom: fix white window issue on exit
...
make kbdproc() and mouseproc() share fd table with the main proc
and not explicitely close the file descriptors. so /dev/mouse gets
closed *after* /dev/draw/new to avoid the white window refresh issue.
2016-01-30 19:11:33 +01:00
cinap_lenrek
7cfe4aef3c
salsa(2): fix source reference
2016-01-19 13:06:22 +01:00
cinap_lenrek
876e19c652
salsa(2): some formating fixes
2016-01-19 13:02:12 +01:00
cinap_lenrek
7cf11db685
libsec: add salsa20 stream cipher
2016-01-19 12:50:33 +01:00
cinap_lenrek
7b31d5e494
authsrv(6): fix arrows
2016-01-19 11:08:29 +01:00
cinap_lenrek
4a47b264ac
wifi: check tkip/ccmp mac and crc in constant time avoiding timing side channels
2016-01-14 23:39:29 +01:00
cinap_lenrek
a57a6e511f
pc64: move idle() routine after CALL main(SB) as the comment suggests
2016-01-14 01:08:36 +01:00
cinap_lenrek
ed4c812765
pc/pc64: backing out new mp startup code (caused issues with ramnode)
...
apparently, this causes some quadcore ramnode vm to hang on boot,
even tho all cores successfully started up and are operational.
i suspect some side effect from timersinit()... this would also
mean *notsc= would break it (syncclock() would continue)...
its unclear.
i'm reverting this for now until the problem is better understood.
2016-01-13 23:18:25 +01:00
cinap_lenrek
21b70c782a
devssl: use tsmemcmp() to compare mac to close timing side channel
2016-01-13 21:48:09 +01:00
cinap_lenrek
5243969ba2
ndb/dnstcp: -x specifies the mountmoint
2016-01-12 08:53:06 +01:00
cinap_lenrek
36d2092a33
fix manpage references
2016-01-12 08:43:36 +01:00
mischief
af42c4f481
libauthsrv: fix ed448 goldilocks prime comment
2016-01-11 19:30:41 -08:00
cinap_lenrek
63f9a4fda3
pc/pc64: bring up ap's one after another, use idlehands() while waiting for thunderbirdsarego
...
when testing in qemu, launching each ap became slower and slower
because all the ap's where spinning in syncclock() waiting for
cpu0 to update its mach0->tscticks, which happens only much later
after all cpu's have been started up.
now we wait for each cpu to do its timer callibration and
manually update our tscticks while we wait and each cpu will
not spin but halt while waiting for active.thunderbirdsarego.
this reduces the system load and noise for timer callibration
and makes the mp startup linear with regard to the number of
cores.
2016-01-11 06:47:52 +01:00
aiju
dacaf31eb0
libauthsrv: add D in mkfile
2016-01-10 22:03:27 +01:00
cinap_lenrek
ad87473109
pc/pc64: remove mpshutdown print
2016-01-07 19:37:47 +01:00
cinap_lenrek
5afa5f5c0b
kernel: remove todfix overflow iprint() spam
2016-01-07 19:37:05 +01:00
cinap_lenrek
6a651b42ac
ape/stdio: %z format is VLONG on amd64
2016-01-07 19:20:30 +01:00
cinap_lenrek
4308f6e7e6
ape/fmt: %p and %z format for amd64
2016-01-07 19:04:12 +01:00
cinap_lenrek
772afbe98c
format pointer subtraction results with %zd instead of %ld (for long -> intptr on amd64)
2016-01-07 04:44:13 +01:00
cinap_lenrek
9c99d0c8d3
6c: return vlong result for pointer subtraction
2016-01-07 04:40:47 +01:00
cinap_lenrek
3e38194d72
introduce signed intptr and %z format modifier for formating uintptr and intptr
2016-01-07 04:39:09 +01:00
cinap_lenrek
59245c73f0
venti/fixarenas: more %z -> %Z
2016-01-07 03:38:07 +01:00
cinap_lenrek
9a337f8dfc
venti/fixarenas: replace %z fmt with %Z
2016-01-07 02:27:00 +01:00
cinap_lenrek
094f0c9601
rx: theres no p9sk2 anymore
2016-01-06 06:00:22 +01:00
cinap_lenrek
dc96f164a2
merge
2016-01-06 05:31:55 +01:00
cinap_lenrek
5e24adafef
libsec: make sure theres no garbage after the asn.1 decode, cleanup
2016-01-06 05:30:44 +01:00
cinap_lenrek
cd74719101
merge
2016-01-06 03:59:40 +01:00
cinap_lenrek
4cf801b853
add missing /sys/src/cmd/auth/lib/private.c
2016-01-06 03:58:04 +01:00
stanley lieber
3735cc9bc3
authsrv(6): english
2016-01-05 21:34:15 -05:00
cinap_lenrek
2dae1ed53a
auth: release dp9ik implementation and reentrant factotum
2016-01-06 03:09:00 +01:00
cinap_lenrek
e064752dd4
libmp: silence compiler warning for strtomp
2016-01-06 01:19:05 +01:00
cinap_lenrek
32c11e2871
pc/pc64: import i210 support from erik quanstrom's 9atom
2016-01-05 07:53:39 +01:00
cinap_lenrek
41383ad012
kernel: change active.machs from bitmap to char array to support up to 64 cpus on pc64
2016-01-05 05:32:40 +01:00
cinap_lenrek
dd8908cff0
fdisk: properly convert byte units K,M,G and T to cylinders/sectors
...
the shared command language assumed 512 byte sectors, which is
not the case for fdisk as it uses cylinders for the block unit.
so we introduce an extra argument in the Edit structure and
parseexpr() function so byte sizes are properly converted to
the block unit when the K,M,G and T postfixes are used.
2016-01-05 03:57:50 +01:00
cinap_lenrek
5aeddd6788
libmp: check nil return value of strtomp() in test program
2016-01-04 19:09:25 +01:00
cinap_lenrek
263b0e34b2
mpc: use new strtomp() c-style prefixes to parse integer constants
2016-01-04 18:35:04 +01:00
cinap_lenrek
f5fcf6688b
libmp: mistake in strtomp()
2016-01-04 18:33:06 +01:00
cinap_lenrek
d30b160fe3
libmp: support for c-style base prefixes for strtomp(), octal support
2016-01-03 22:43:44 +01:00
cinap_lenrek
39f18c9d88
libsec: implement TLS-PSK for tlsClient()/tlsServer()
2015-12-25 17:05:05 +01:00
cinap_lenrek
4a6ab355c1
file: recognize bootable disk images (by 0x55AA boot sector signature)
2015-12-23 02:31:47 +01:00
cinap_lenrek
76e5cda11a
file: recognize tcpdump pcap files
2015-12-23 02:11:29 +01:00
cinap_lenrek
46bbeea040
snoopy: fix timestamps for pcap files (thanks BurnZeZ)
...
the pcap files produced by snoopy had the wrong timestamps because it expected:
/* magic=0xa1b2c3d4 */
ulong ts_sec; /* seconds*/
ulong ts_usec; /* microseconds */
but we wrote:
uvlong ts; /* nanoseconds */
now, we write:
/* magic=0xa1b23c4d */
ulong ts_sec; /* seconds */
ulong ts_nsec; /* nanoseconds */
2015-12-23 02:00:09 +01:00
cinap_lenrek
a53ae2782a
libjson: added printing support (thanks spew)
2015-12-22 18:12:56 +01:00
cinap_lenrek
f6e8b115d4
libjson: fix memory leak setjmp/longjmp problem (thanks spew)
...
spew → I fixed the memory leak setjmp/longjmp problem with libjson
spew → http://www.spew.club/json.patch
spew → full file: http://www.spew.club/json.c
spew → going to bed, I'll annoy cinap_lenrek tomorrow to try to get this committed
2015-12-22 17:00:00 +01:00
cinap_lenrek
9b0de7f9d6
tls: implement chacha20/poly1305 aead cipher suits
2015-12-21 04:55:54 +01:00
cinap_lenrek
d19144155e
kernel: missing changes for ibrk() prototype
2015-12-21 04:49:29 +01:00
aiju
bdc2b75568
mpfmt: handle base 2, 4
2015-12-20 13:45:28 +01:00
cinap_lenrek
a8f8de1cde
import/expoerfs: dont assert() fault when ai->secret is > 8 bytes, just use the first 8 bytes
2015-12-16 21:30:56 +01:00
cinap_lenrek
e83c9b3e61
auth/httpauth: use auth_userpasswd() instead of AuthHttp request to AS
...
the /sys/lib/httppasswords will be removed soon from authsrv,
so we use auth_userpasswd() to verify a username/password pair
instead.
2015-12-16 21:27:44 +01:00
cinap_lenrek
8a60d9e2a8
libsec: use tsmemcmp() when comparing hashes, use mpfield() for ecc, use mptober() when right adjusting mpint to bytes
2015-12-16 21:23:40 +01:00
cinap_lenrek
efd3ac8a23
libmp: add mpfield() function for fast field arithmetic
...
instead of testing for special field primes each time in mpmod(),
make it explicit with a mpfiled() function that tests a modulus N
to be of some special form that can be reduced more efficiently with
some precalculation, and replaces N with a Mfield* when it can. the
Mfield*'s are recognized by mpmod() as they have the MPfield flag
set and provide a function pointer that executes the fast reduction.
2015-12-16 21:18:20 +01:00
cinap_lenrek
b6f04b77e3
devprov: remove unused extern int unfair
2015-12-16 21:07:24 +01:00
cinap_lenrek
7be7d0681f
kernel: use uintptr for ibrk() return value (for base >2GB) and clarify segbrk(2)
2015-12-16 21:06:51 +01:00
stanley lieber
afe450d381
/sys/lib/dist/ndb/common: update for sl's auth servers
2015-12-11 14:18:06 -05:00
stanley lieber
55f6484f85
/lib/ndb/common: add auth=cb.inri.net authdom=nyc
2015-12-09 01:17:41 -05:00
aiju
15c6cd7555
mp: strtomp support for bases 2,4,8
2015-12-08 20:26:17 +01:00
aiju
609a9922ad
mp: fix bug in mplogic.c; update mkfile
2015-12-08 19:43:22 +01:00
aiju
87abbc649f
mp: add logic operations; mpfmt: include 0x with #
2015-12-08 18:29:22 +01:00
Matthew Veety
5f15532260
fixed spelling error in 2c(1) for the axp entry.
2015-12-07 18:55:26 -05:00
Matthew Veety
1c0ba2019e
made sure that rcmain.local runs independent of the existence of $home/lib/profile. Documented /rc/lib/rcmain, /rc/lib/rcmain.local, $home/lib/profile in rc(1) and the first two in namespace(4)
2015-12-07 17:59:53 -05:00
cinap_lenrek
9e09742e9b
yacc: attempt to keep line numbers right for yyparse()
...
as the generated parser intermixes lines from .y source
and the parser text, the line source/lineno for yyparse()
shows up wrong in the debugger. to make stack traces a
bit less crazy, put a #line 1 "/sys/lib/yaccpar" before
copying in the parser text.
2015-12-07 17:00:41 +01:00
cinap_lenrek
d928a6f239
merge
2015-12-06 20:55:27 +01:00
cinap_lenrek
01afe9328b
libmp: fix assert() for mpexp() with nil modulus
2015-12-06 20:53:54 +01:00
cinap_lenrek
1a5c8430d2
libmp: fix wrong move instruction for arm vector operations
2015-12-06 20:52:15 +01:00
aiju
eccb144a71
winwatch: l allows label changes
2015-12-06 20:37:18 +01:00
cinap_lenrek
8d16e980c2
libmp: mpmod() fix typo
2015-12-01 11:25:08 +01:00
cinap_lenrek
ffdfc17cee
libmp: with mpmod() m = 2^a - c ensure that digits(c) < digits(m)
2015-12-01 11:13:52 +01:00
cinap_lenrek
fbd825890e
merge
2015-12-01 09:41:49 +01:00
cinap_lenrek
3a40210df8
libsec: fix genprime() to produce normalized result
...
this fixed bug "assert_failed_m-flags__mpnorm_since_283cc2200e34".
2015-12-01 09:40:24 +01:00
aiju
4770f60b18
mkone: yacc wants the D
2015-11-30 23:36:39 +01:00
cinap_lenrek
bdaa002255
webcookies: strdup() file argument to avoid crash (thanks mischief)
...
mischief reports:
acid: lstk()
abort()+0x0 /sys/src/libc/9sys/abort.c:6
ppanic(p=0x1bff4,fmt=0x1d749)+0x146 /sys/src/libc/port/malloc.c:166
pv=0x1dad8
msg=0x1e4a8
v=0x3ffffe7c
n=0x2f
D2B(p=0x1bff4,v=0x3fffffae)+0x57 /sys/src/libc/port/pool.c:926
a=0x3fffffa4
poolfreel(v=0x3fffffae,p=0x1bff4)+0x20 /sys/src/libc/port/pool.c:1152
ab=0x1dad8
poolfree(p=0x1bff4,v=0x3fffffae)+0x3b /sys/src/libc/port/pool.c:1287
free(v=0x3fffffb6)+0x23 /sys/src/libc/port/malloc.c:250
readjar(file=0x3fffffb6)+0xce /sys/src/cmd/webcookies.c:473
jar=0x1ea28
lock=0x1ea68
p=0x1ea6d
main(argv=0x3fffffa0,argc=0x0)+0x10f /sys/src/cmd/webcookies.c:1295
file=0x3fffffb6
srv=0x0
mtpt=0x1cfd0
_argc=0x66
_args=0x1cfe0
home=0x0
_main+0x31 /sys/src/libc/386/main9.s:16
acid:
2015-11-30 20:08:22 +01:00
cinap_lenrek
1d8f2ac050
merge
2015-11-30 14:57:16 +01:00
cinap_lenrek
7f3659e78f
kernel: cleanup exit()/shutdown()/reboot() code
...
introduce cpushutdown() function that does the common
operation of initiating shutdown, returning once all
cpu's got the message and are about to shutdown. this
avoids duplicated code which isnt really machine specific.
automatic reboot on panic only when *debug= is not set
and the machine is a cpu server or has no display,
otherwise just hang.
2015-11-30 14:56:00 +01:00
BurnZeZ
4badf9974f
fplot(1): fix typo
2015-11-29 18:06:55 -05:00