summaryrefslogtreecommitdiff
path: root/os
diff options
context:
space:
mode:
authorforsyth <forsyth@vitanuova.com>2011-02-24 23:08:03 +0000
committerforsyth <forsyth@vitanuova.com>2011-02-24 23:08:03 +0000
commitcb6deecc455ddb2a6a83cedaafc576838587d217 (patch)
treeb1ef6ea611515c18da988ee2a368939d2eb8f1be /os
parent39f1a17d6a1f530b723b42717a2c14db6a25cf16 (diff)
20110224-2305
Diffstat (limited to 'os')
-rw-r--r--os/port/devprog.c8
-rw-r--r--os/port/portdat.h1
2 files changed, 3 insertions, 6 deletions
diff --git a/os/port/devprog.c b/os/port/devprog.c
index c6c97efc..4289841d 100644
--- a/os/port/devprog.c
+++ b/os/port/devprog.c
@@ -295,14 +295,14 @@ progopen(Chan *c, int omode)
error(Enomem);
break;
case Qheap:
- if(SECURE || o->pgrp->privatemem || omode != ORDWR)
+ if(SECURE || p->group->flags&Pprivatemem || omode != ORDWR)
error(Eperm);
c->aux = malloc(sizeof(Heapqry));
if(c->aux == nil)
error(Enomem);
break;
case Qdbgctl:
- if(SECURE || o->pgrp->privatemem || omode != ORDWR)
+ if(SECURE || p->group->flags&Pprivatemem || omode != ORDWR)
error(Eperm);
ctl = malloc(sizeof(Progctl));
if(ctl == nil)
@@ -1028,7 +1028,6 @@ progwrite(Chan *c, void *va, long n, vlong offset)
int i, pc;
Cmdbuf *cb;
Cmdtab *ct;
- Osenv *o;
USED(offset);
USED(va);
@@ -1074,8 +1073,7 @@ progwrite(Chan *c, void *va, long n, vlong offset)
error(Ebadctl);
break;
case CMprivate:
- o = p->osenv;
- o->pgrp->privatemem = 1;
+ p->group->flags |= Pprivatemem;
break;
}
poperror();
diff --git a/os/port/portdat.h b/os/port/portdat.h
index 81e92012..e20ba770 100644
--- a/os/port/portdat.h
+++ b/os/port/portdat.h
@@ -340,7 +340,6 @@ struct Pgrp
QLock nsh;
Mhead* mnthash[MNTHASH];
int progmode;
- int privatemem; /* deny access to /prog by debuggers */
Chan* dot;
Chan* slash;
int nodevs;