aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/factotum/xio.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/factotum/xio.c')
-rw-r--r--src/cmd/factotum/xio.c165
1 files changed, 0 insertions, 165 deletions
diff --git a/src/cmd/factotum/xio.c b/src/cmd/factotum/xio.c
deleted file mode 100644
index 2e6b141b..00000000
--- a/src/cmd/factotum/xio.c
+++ /dev/null
@@ -1,165 +0,0 @@
-#include "std.h"
-#include "dat.h"
-
-static Ioproc *cache[5];
-static int ncache;
-
-static Ioproc*
-xioproc(void)
-{
- Ioproc *c;
- int i;
-
- for(i=0; i<ncache; i++){
- if(c = cache[i]){
- cache[i] = nil;
- return c;
- }
- }
-
- return ioproc();
-}
-
-static void
-closexioproc(Ioproc *io)
-{
- int i;
-
- for(i=0; i<ncache; i++)
- if(cache[i] == nil){
- cache[i] = io;
- return;
- }
-
- closeioproc(io);
-}
-
-int
-xiodial(char *ds, char *local, char *dir, int *cfdp)
-{
- int fd;
- Ioproc *io;
-
- if((io = xioproc()) == nil)
- return -1;
- fd = iodial(io, ds, local, dir, cfdp);
- closexioproc(io);
- return fd;
-}
-
-void
-xioclose(int fd)
-{
- Ioproc *io;
-
- if((io = xioproc()) == nil){
- close(fd);
- return;
- }
-
- ioclose(io, fd);
- closexioproc(io);
-}
-
-int
-xiowrite(int fd, void *v, int n)
-{
- int m;
- Ioproc *io;
-
- if((io = xioproc()) == nil)
- return -1;
- m = iowrite(io, fd, v, n);
- closexioproc(io);
- if(m != n)
- return -1;
- return n;
-}
-
-static long
-_ioauthdial(va_list *arg)
-{
- char *net;
- char *dom;
- int fd;
-
- net = va_arg(*arg, char*);
- dom = va_arg(*arg, char*);
- fd = _authdial(net, dom);
- if(fd < 0)
- fprint(2, "authdial: %r\n");
- return fd;
-}
-
-int
-xioauthdial(char *net, char *dom)
-{
- int fd;
- Ioproc *io;
-
- if((io = xioproc()) == nil)
- return -1;
- fd = iocall(io, _ioauthdial, net, dom);
- closexioproc(io);
- return fd;
-}
-
-static long
-_ioasrdresp(va_list *arg)
-{
- int fd;
- void *a;
- int n;
-
- fd = va_arg(*arg, int);
- a = va_arg(*arg, void*);
- n = va_arg(*arg, int);
-
- return _asrdresp(fd, a, n);
-}
-
-int
-xioasrdresp(int fd, void *a, int n)
-{
- Ioproc *io;
-
- if((io = xioproc()) == nil)
- return -1;
-
- n = iocall(io, _ioasrdresp, fd, a, n);
- closexioproc(io);
- return n;
-}
-
-static long
-_ioasgetticket(va_list *arg)
-{
- int asfd;
- char *trbuf;
- char *tbuf;
-
- asfd = va_arg(*arg, int);
- trbuf = va_arg(*arg, char*);
- tbuf = va_arg(*arg, char*);
-
- return _asgetticket(asfd, trbuf, tbuf);
-}
-
-int
-xioasgetticket(int fd, char *trbuf, char *tbuf)
-{
- int n;
- Ioproc *io;
-
- if((io = xioproc()) == nil)
- return -1;
-
- n = iocall(io, _ioasgetticket, fd, trbuf, tbuf);
- closexioproc(io);
- if(n != 2*TICKETLEN)
- n = -1;
- else
- n = 0;
- return n;
-}
-