~kris/9p

9hist

ef99ca9eda28619bd59ae919ae8229eaf978e64e — David du Colombier 31 years ago 9bff92e
Plan 9 from Bell Labs 1994-12-12
3 files changed, 10 insertions(+), 8 deletions(-)

M boot/boot.c
M port/chan.c
M port/devmnt.c
M boot/boot.c => boot/boot.c +3 -0
@@ 306,15 306,18 @@ reattach(int rec, Method *amp, char *buf)
	p = strrchr(buf, '/');
	if(p == 0)
		goto fail;

	*p = '\0';

	sprint(tmp, "%s/remote", buf);
	fd = open(tmp, OREAD);
	if(fd < 0)
		goto fail;

	n = read(fd, tmp, sizeof(tmp));
	if(n < 0)
		goto fail;

	close(fd);
	tmp[n-1] = '\0';


M port/chan.c => port/chan.c +4 -6
@@ 500,8 500,7 @@ mchan(char *id)
			for(t = f->mount; t; t = t->next) {
				c = t->to;
				if(c->type == mdev && c->mntptr->id == mountid) {
					c = c->mntptr->c;
					incref(c);
					c = clone(c, 0);
					runlock(&pg->ns);
					poperror();
					return c;


@@ 562,10 561,9 @@ namec(char *name, int amode, int omode, ulong perm)
		elem[n] = '\0';
		n = chartorune(&r, elem+1)+1;
		if(r == 'M') {
			if(amode != Aopen || omode != ORDWR)
				error(Eperm);
			skipslash(name);
			return mchan(elem+n);
			c = mchan(elem+n);
			name = skipslash(name);
			break;
		}
		t = devno(r, 1);
		if(t == -1)

M port/devmnt.c => port/devmnt.c +3 -2
@@ 221,7 221,7 @@ mattach(Mnt *m, Chan *c, char *spec)
	r = mntralloc(0);
	c->mntptr = m;

	if(waserror()){
	if(waserror()) {
		mntfree(r);
		nexterror();
	}


@@ 991,7 991,8 @@ mntrecover(Mnt *m, Mntrpc *r)

	r->done = 0;
	mntrecdel(m, r);
	recoverchan(m, r->c);
	if(r->c != 0)
		recoverchan(m, r->c);

	up->psstate = ps;
}