~kris/9p

9hist

6bef71f8edb55c1c60630fc00a21001f59b9fb35 — David du Colombier 33 years ago 336df1d
Plan 9 from Bell Labs 1993-03-23
4 files changed, 10 insertions(+), 2 deletions(-)

M port/dev.c
M port/devmnt.c
M port/net.c
M port/portdat.h
M port/dev.c => port/dev.c +4 -0
@@ 41,6 41,8 @@ devdir(Chan *c, Qid qid, char *n, long length, char *user, long perm, Dir *db)
		db->mode = CHDIR|perm;
	else
		db->mode = perm;
	if(c->flag&CMSG)
		db->mode |= CHMOUNT;
	db->atime = seconds();
	db->mtime = kerndate;
	db->hlength = 0;


@@ 144,6 146,8 @@ devstat(Chan *c, char *db, Dirtab *tab, int ntab, Devgen *gen)
			error(Enonexist);
		case 1:
			if(eqqid(c->qid, dir.qid)) {
				if(c->flag&CMSG)
					dir.mode |= CHMOUNT;
				convD2M(&dir, db);
				return;
			}

M port/devmnt.c => port/devmnt.c +3 -2
@@ 160,9 160,10 @@ mntattach(char *muxattach)
	c = mattach(m, bogus.spec, bogus.serv);

	mc = m->c;
	if(mc->type == devno('M', 0)) {
	if(mc->type == devno('M', 0) && (c->qid.path&CHDIR) == 0) {
		c->qid.path |= CHDIR;
		c->mntptr = mc->mntptr;
		c->mchan = c->mntptr->c;
		c->mchan = mc->mntptr->c;
		c->mqid = c->qid;
		incref(c->mntptr);
		mclose(m);

M port/net.c => port/net.c +2 -0
@@ 157,6 157,8 @@ netstat(Chan *c, char *db, Network *np)
			break;
		case 1:
			if(eqqid(c->qid, dir.qid)){
				if(c->flag&CMSG)
					dir.mode |= CHMOUNT;
				convD2M(&dir, db);
				return;
			}

M port/portdat.h => port/portdat.h +1 -0
@@ 766,6 766,7 @@ enum
	CHDIR =		0x80000000L,
	CHAPPEND = 	0x40000000L,
	CHEXCL =	0x20000000L,
	CHMOUNT	=	0x10000000L,
};

/*