| plan 9 kernel history: overview | file list | diff list |
2001/0510/port/devenv.c (diff list | history)
| 2001/0510/sys/src/9/port/devenv.c:12,24 – 2001/0527/sys/src/9/port/devenv.c:12,24 (short | long | prev | next) | ||
| 1990/0227 | }; | |
| 1997/0327 | static int | |
| 1995/0804 |
| |
| 2001/0527 | envgen(Chan *c, char*, Dirtab*, int, int s, Dir *dp) | |
| 1990/0227 | { | |
| 1991/0705 | Egrp *eg; | |
| 1992/0623 | Evalue *e; | |
| 1990/0227 | ||
| 1999/1230 | if(s == DEVDOTDOT){ | |
| 2001/0527 | devdir(c, c->qid, "#e", 0, eve, DMDIR|0775, dp); | |
| 1999/1230 | return 1; } | |
| 2001/0510/sys/src/9/port/devenv.c:33,39 – 2001/0527/sys/src/9/port/devenv.c:33,41 | ||
| 1992/0623 | return -1; | |
| 1990/0227 | } | |
| 1992/0623 | ||
| 1999/0122 |
| |
| 2001/0527 | /* make sure name string continues to exist after we release lock */ kstrcpy(up->genbuf, e->name, sizeof up->genbuf); devdir(c, e->qid, up->genbuf, e->len, eve, 0666, dp); | |
| 1992/0623 | qunlock(eg); return 1; | |
| 1990/0227 | } | |
| 2001/0510/sys/src/9/port/devenv.c:54,87 – 2001/0527/sys/src/9/port/devenv.c:56,73 | ||
| 1990/0227 | return devattach('e', spec); } | |
| 1997/0327 |
| |
| 1990/0227 |
| |
| 2001/0527 | static Walkqid* envwalk(Chan *c, Chan *nc, char **name, int nname) | |
| 1990/0227 | { | |
| 2001/0510 |
| |
| 2001/0527 | return devwalk(c, nc, name, nname, 0, 0, envgen); | |
| 1990/0227 | } | |
| 1997/0327 |
| |
| 1990/0227 |
| |
| 2001/0527 | static int envstat(Chan *c, uchar *db, int n) | |
| 1990/0227 | { | |
| 1999/0122 |
| |
| 2001/0527 | if(c->qid.type & QTDIR) | |
| 1999/0122 | c->qid.vers = up->egrp->vers; | |
| 1990/0227 |
| |
| 2001/0527 | return devstat(c, db, n, 0, 0, envgen); | |
| 1990/0227 | } | |
| 1997/0327 | static Chan* | |
| 2001/0510/sys/src/9/port/devenv.c:91,97 – 2001/0527/sys/src/9/port/devenv.c:77,83 | ||
| 1992/0623 | Evalue *e; | |
| 1998/0512 | ||
| 1993/0501 | eg = up->egrp; | |
| 1992/0625 |
| |
| 2001/0527 | if(c->qid.type & QTDIR) { | |
| 1991/1018 | if(omode != OREAD) | |
| 1990/11211 | error(Eperm); | |
| 1992/0623 | } | |
| 2001/0510/sys/src/9/port/devenv.c:122,128 – 2001/0527/sys/src/9/port/devenv.c:108,114 | ||
| 1991/0705 | Egrp *eg; | |
| 1992/0623 | Evalue *e; | |
| 1990/0227 | ||
| 1990/11211 |
| |
| 2001/0527 | if(c->qid.type != QTDIR) | |
| 1990/11211 | error(Eperm); | |
| 1992/0623 | ||
| 1991/1018 | omode = openmode(omode); | |
| 2001/0510/sys/src/9/port/devenv.c:162,168 – 2001/0527/sys/src/9/port/devenv.c:148,154 | ||
| 1991/0705 | Egrp *eg; | |
| 1992/0623 | Evalue *e, **l; | |
| 1990/0227 | ||
| 1990/11211 |
| |
| 2001/0527 | if(c->qid.type & QTDIR) | |
| 1990/11211 | error(Eperm); | |
| 1992/0623 | ||
| 1993/0501 | eg = up->egrp; | |
| 2001/0510/sys/src/9/port/devenv.c:207,213 – 2001/0527/sys/src/9/port/devenv.c:193,199 | ||
| 1992/0623 | Evalue *e; | |
| 1998/0319 | ulong offset = off; | |
| 1990/0227 | ||
| 1990/11211 |
| |
| 2001/0527 | if(c->qid.type & QTDIR) | |
| 1990/0227 | return devdirread(c, a, n, 0, 0, envgen); | |
| 1992/0623 | ||
| 1993/0501 | eg = up->egrp; | |
| 2001/0510/sys/src/9/port/devenv.c:275,281 – 2001/0527/sys/src/9/port/devenv.c:261,266 | ||
| 1997/0327 | devreset, devinit, envattach, | |
| 2001/0510/sys/src/9/port/devenv.c:336,342 – 2001/0527/sys/src/9/port/devenv.c:321,327 | ||
| 1991/0927 | ksetenv(char *ename, char *eval) { Chan *c; | |
| 2001/0527 | char buf[2*KNAMELEN]; | |
| 1991/0927 | sprint(buf, "#e/%s", ename); c = namec(buf, Acreate, OWRITE, 0600); | |