diff options
author | rsc <devnull@localhost> | 2003-11-23 18:19:58 +0000 |
---|---|---|
committer | rsc <devnull@localhost> | 2003-11-23 18:19:58 +0000 |
commit | 056fe1ba7fa0b70f871dfb9005b24eb8e4cc230b (patch) | |
tree | 9ad42f31c3bc124cf6617cf9eb41dd525eccce83 /src/libventi/hangup.c | |
parent | 9df487d720a59bf8cb0dc4ccffc30ad8eb48256a (diff) | |
download | plan9port-056fe1ba7fa0b70f871dfb9005b24eb8e4cc230b.tar.gz plan9port-056fe1ba7fa0b70f871dfb9005b24eb8e4cc230b.tar.bz2 plan9port-056fe1ba7fa0b70f871dfb9005b24eb8e4cc230b.zip |
new venti library.
Diffstat (limited to 'src/libventi/hangup.c')
-rw-r--r-- | src/libventi/hangup.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/libventi/hangup.c b/src/libventi/hangup.c new file mode 100644 index 00000000..5a992e73 --- /dev/null +++ b/src/libventi/hangup.c @@ -0,0 +1,22 @@ +#include <u.h> +#include <libc.h> +#include <venti.h> +#include "queue.h" + +void +vthangup(VtConn *z) +{ + qlock(&z->lk); + z->state = VtStateClosed; + if(z->infd >= 0) + close(z->infd); + if(z->outfd >= 0 && z->outfd != z->infd) + close(z->outfd); + z->infd = -1; + z->outfd = -1; + if(z->writeq) + _vtqhangup(z->writeq); + if(z->readq) + _vtqhangup(z->readq); + qunlock(&z->lk); +} |