summaryrefslogtreecommitdiff
path: root/sys/src/9
diff options
context:
space:
mode:
authormischief <mischief@offblast.org>2015-08-25 02:07:46 -0700
committermischief <mischief@offblast.org>2015-08-25 02:07:46 -0700
commit6b402b83cffc97015345dab1c27c35afe64bb3db (patch)
treeb525f9443564682c46f8c36af6a4d238bd39a756 /sys/src/9
parentdbe0a995f03f26ea2b6859d21df3bd67856d672d (diff)
import E script from bell labs
Diffstat (limited to 'sys/src/9')
-rw-r--r--sys/src/9/boot/boot.h2
-rw-r--r--sys/src/9/boot/bootfs.proto3
-rwxr-xr-xsys/src/9/boot/bootrc2
-rwxr-xr-xsys/src/9/boot/net.rc10
-rw-r--r--sys/src/9/pc/etheriwl.c5
-rw-r--r--sys/src/9/port/chan.c4
-rw-r--r--sys/src/9/port/devssl.c2
-rw-r--r--sys/src/9/port/devtls.c2
-rw-r--r--sys/src/9/port/proc.c3
-rw-r--r--sys/src/9/port/syscallfmt.c2
10 files changed, 27 insertions, 8 deletions
diff --git a/sys/src/9/boot/boot.h b/sys/src/9/boot/boot.h
index c72622807..db7130922 100644
--- a/sys/src/9/boot/boot.h
+++ b/sys/src/9/boot/boot.h
@@ -1,5 +1,5 @@
enum {
- Debug = 0,
+ Debug = 1,
};
extern void fatal(char*);
diff --git a/sys/src/9/boot/bootfs.proto b/sys/src/9/boot/bootfs.proto
index 02ca92979..a9e973a73 100644
--- a/sys/src/9/boot/bootfs.proto
+++ b/sys/src/9/boot/bootfs.proto
@@ -30,12 +30,15 @@ $objtype
ndb
dnsgetip
hjfs
+ p
+ ps
rc
rm
sed
sleep
srv
test
+ tlsclient
unmount
nusb
usbd
diff --git a/sys/src/9/boot/bootrc b/sys/src/9/boot/bootrc
index 208122f72..eb451f2a4 100755
--- a/sys/src/9/boot/bootrc
+++ b/sys/src/9/boot/bootrc
@@ -66,7 +66,7 @@ fn main{
if(~ $#nobootprompt 0){
echo
showlocaldevs
- ask bootargs ' is (tcp, il, local!device)' $"bootargs
+ ask bootargs ' is (tcp, tcptls, il, local!device)' $"bootargs
}
if not bootargs=$nobootprompt
nobootprompt=()
diff --git a/sys/src/9/boot/net.rc b/sys/src/9/boot/net.rc
index fb399ef97..a3e673834 100755
--- a/sys/src/9/boot/net.rc
+++ b/sys/src/9/boot/net.rc
@@ -48,6 +48,12 @@ fn connecttcp{
fs=$fs(1)
}
+fn connecttcptls{
+ while(! ~ $#fs 0 && ! srv -qe 'tlsclient -t <{echo $fsthumb} tcp!'^$fs(1)^!5564 boot)
+ fs=$fs(2-);
+ fs=$fs(1)
+}
+
fn connectil{
while(! ~ $#fs 0 && ! srv -q il!$fs(1)^!17008 boot)
fs=$fs(2-);
@@ -55,5 +61,7 @@ fn connectil{
}
mtcp=(confignet connecttcp)
+mtcptls=(confignet connecttcptls)
mil=(confignet connectil)
-mt=(mtcp mil $mt)
+mt=(mtcp mtcptls mil $mt)
+
diff --git a/sys/src/9/pc/etheriwl.c b/sys/src/9/pc/etheriwl.c
index 0077061be..ad22fa879 100644
--- a/sys/src/9/pc/etheriwl.c
+++ b/sys/src/9/pc/etheriwl.c
@@ -2164,8 +2164,10 @@ iwlrecover(void *arg)
if(ctlr->power)
poweroff(ctlr);
- if((csr32r(ctlr, Gpc) & RfKill) == 0)
+ if((csr32r(ctlr, Gpc) & RfKill) == 0){
+ print("#l%d: rfkill on, not resetting\n", edev->ctlrno);
break;
+ }
if(reset(ctlr) != nil)
break;
@@ -2447,6 +2449,7 @@ iwlpci(void)
case 0x4238: /* Centrino Ultimate-N 6300 variant 2 */
case 0x08ae: /* Centrino Wireless-N 100 */
case 0x0083: /* Centrino Wireless-N 1000 */
+ case 0x0891: /* Centrino Wireless-N 2200 */
case 0x0887: /* Centrino Wireless-N 2230 */
case 0x0888: /* Centrino Wireless-N 2230 */
break;
diff --git a/sys/src/9/port/chan.c b/sys/src/9/port/chan.c
index 7e87b9110..add9ece90 100644
--- a/sys/src/9/port/chan.c
+++ b/sys/src/9/port/chan.c
@@ -152,8 +152,10 @@ chandevreset(void)
int i;
todinit(); /* avoid later reentry causing infinite recursion */
- for(i=0; devtab[i] != nil; i++)
+ for(i=0; devtab[i] != nil; i++){
+ //print("%c: %s: reset\n", devtab[i]->dc, devtab[i]->name);
devtab[i]->reset();
+ }
}
static void closeproc(void*);
diff --git a/sys/src/9/port/devssl.c b/sys/src/9/port/devssl.c
index 7e9133e8e..829dfe2e3 100644
--- a/sys/src/9/port/devssl.c
+++ b/sys/src/9/port/devssl.c
@@ -1439,7 +1439,7 @@ checkdigestb(Dstate *s, Block *bin)
*p = n;
(*s->hf)(msgid, 4, digest, &ss);
- if(memcmp(digest, bin->rp, s->diglen) != 0)
+ if(constcmp(digest, bin->rp, s->diglen) != 0)
error("bad digest");
}
diff --git a/sys/src/9/port/devtls.c b/sys/src/9/port/devtls.c
index 6b728dba5..ad6750a36 100644
--- a/sys/src/9/port/devtls.c
+++ b/sys/src/9/port/devtls.c
@@ -825,7 +825,7 @@ if(tr->debug) pdump(unpad_len, p, "decrypted:");
(*tr->packMac)(in->sec, in->sec->mackey, seq, header, p, len, hmac);
if(unpad_len < in->sec->maclen)
rcvError(tr, EBadRecordMac, "short record mac");
- if(memcmp(hmac, p+len, in->sec->maclen) != 0)
+ if(constcmp(hmac, p+len, in->sec->maclen) != 0)
rcvError(tr, EBadRecordMac, "record mac mismatch");
b->rp = p;
b->wp = p+len;
diff --git a/sys/src/9/port/proc.c b/sys/src/9/port/proc.c
index eadca93ec..03eb69da4 100644
--- a/sys/src/9/port/proc.c
+++ b/sys/src/9/port/proc.c
@@ -173,6 +173,9 @@ sched(void)
up->state = Running;
up->mach = MACHP(m->machno);
m->proc = up;
+ //print("poolcheck sched %s\n", p->text);
+ //#include <pool.h>
+ //poolcheck(mainmem);
mmuswitch(up);
gotolabel(&up->sched);
}
diff --git a/sys/src/9/port/syscallfmt.c b/sys/src/9/port/syscallfmt.c
index 5ae5b31ab..26f2fd245 100644
--- a/sys/src/9/port/syscallfmt.c
+++ b/sys/src/9/port/syscallfmt.c
@@ -114,7 +114,7 @@ syscallfmt(ulong syscallno, uintptr pc, va_list list)
a = va_arg(list, char*);
fmtuserstring(&fmt, a, "");
argv = va_arg(list, char**);
- evenaddr(PTR2UINT(argv));
+ evenaddr((uintptr)argv);
for(;;){
validaddr((uintptr)argv, sizeof(char**), 0);
a = *(char **)argv;