From 8db1cabfecae3d51de8eded52106733a97d1d25c Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Wed, 22 Apr 1998 00:00:00 +0000 Subject: [PATCH] Plan 9 from Bell Labs 1998-04-22 --- pc/vgamga2164w.c | 3 ++- port/auth.c | 8 ++++---- port/devcons.c | 3 +++ 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/pc/vgamga2164w.c b/pc/vgamga2164w.c index 6b20f9d75c942471eb8a6300bf781ceecabc5484..1353049c4b889225f39b3a7d028ec1807df5b68b 100644 --- a/pc/vgamga2164w.c +++ b/pc/vgamga2164w.c @@ -30,7 +30,8 @@ mga2164wenable(VGAscr* scr) if(scr->storage) return; - if((p = pcimatch(nil, 0x102B, 0x051B)) == nil) + p = pcimatch(nil, 0x102B, 0x051B); + if(p == nil) return; scr->storage = upamalloc(p->mem[1].bar & ~0x0F, p->mem[1].size, 0); diff --git a/port/auth.c b/port/auth.c index 9fab8c2361b37af6387b70fa51c7965bbcc36e7a..bf89ede6460c193e2c83ab4d0e4a95f6007a10d3 100644 --- a/port/auth.c +++ b/port/auth.c @@ -395,7 +395,7 @@ authread(Chan *c, char *a, int n) /* * subsequent read returns an authenticator */ - if(n != AUTHENTLEN) + if(n < AUTHENTLEN) error(Ebadarg); cp = c->aux; @@ -405,6 +405,9 @@ authread(Chan *c, char *a, int n) convA2M(&cp->a, cp->tbuf, cp->t.key); memmove(a, cp->tbuf, AUTHENTLEN); + if(n >= AUTHENTLEN + TICKETLEN) + convT2M(&cp->t, a+AUTHENTLEN, nil); + freecrypt(cp); c->aux = 0; } @@ -547,9 +550,6 @@ authentread(Chan *c, char *a, int n) if(n >= AUTHENTLEN) memmove(a, cp->tbuf, AUTHENTLEN); - if(n >= AUTHENTLEN + TICKETLEN) - convT2M(&cp->t, a+AUTHENTLEN, nil); - return n; } diff --git a/port/devcons.c b/port/devcons.c index 6160a5690c781ea83e2971eb5c9b15f04c6da66c..2e3f921f6c4184e3a82412c8a29885d73b93de45 100644 --- a/port/devcons.c +++ b/port/devcons.c @@ -608,6 +608,9 @@ consread(Chan *c, void *buf, long n, vlong off) case Qauth: return authread(c, cbuf, n); + case Qauthcheck: + return authcheckread(c, cbuf, n); + case Qauthent: return authentread(c, cbuf, n);