diff options
| author | forsyth <forsyth@vitanuova.com> | 2011-02-24 23:08:03 +0000 |
|---|---|---|
| committer | forsyth <forsyth@vitanuova.com> | 2011-02-24 23:08:03 +0000 |
| commit | cb6deecc455ddb2a6a83cedaafc576838587d217 (patch) | |
| tree | b1ef6ea611515c18da988ee2a368939d2eb8f1be /os | |
| parent | 39f1a17d6a1f530b723b42717a2c14db6a25cf16 (diff) | |
20110224-2305
Diffstat (limited to 'os')
| -rw-r--r-- | os/port/devprog.c | 8 | ||||
| -rw-r--r-- | os/port/portdat.h | 1 |
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; |
