diff options
| author | Charles.Forsyth <devnull@localhost> | 2007-02-17 19:28:30 +0000 |
|---|---|---|
| committer | Charles.Forsyth <devnull@localhost> | 2007-02-17 19:28:30 +0000 |
| commit | d89e7d75962bf912662d530143f721964cdeabc6 (patch) | |
| tree | 11829f023cdf28ec1f8f16278dccd16bf235bd29 | |
| parent | 7c0f99b8db39711e75277f51fce3f61e245a0e4e (diff) | |
/emu/port/devip.c allow reopen of ctl
| -rw-r--r-- | CHANGES | 1 | ||||
| -rw-r--r-- | emu/port/devip.c | 3 |
2 files changed, 4 insertions, 0 deletions
@@ -1,5 +1,6 @@ 20070217 repair /appl/lib/libc.b and /appl/lib/libc0.b strncmp implementations (used only by c2l output) [inferno-os issue 9] + /emu/port/devip.c, get socket fd on reopen of ctl 20070216 add /module/lists.m, /appl/lib/lists.b, and lists(2) 20070209 diff --git a/emu/port/devip.c b/emu/port/devip.c index 8572a184..45ea39fa 100644 --- a/emu/port/devip.c +++ b/emu/port/devip.c @@ -443,6 +443,8 @@ ipopen(Chan *c, int omode) if(cv->inuse == 1) { kstrdup(&cv->owner, up->env->user); cv->perm = 0660; + if(cv->sfd < 0) + cv->sfd = so_socket(p->stype); } poperror(); qunlock(&cv->l); @@ -510,6 +512,7 @@ closeconv(Conv *cv) cv->perm = 0660; /* cv->p->close(cv); */ cv->state = Idle; + cv->restricted = 0; fd = cv->sfd; cv->sfd = -1; if(fd >= 0) |
