]> git.lizzy.rs Git - plan9front.git/blob - sys/src/libauthsrv/_asgetresp.c
libauthsrv: add missing files (thanks mischief)
[plan9front.git] / sys / src / libauthsrv / _asgetresp.c
1 #include <u.h>
2 #include <libc.h>
3 #include <authsrv.h>
4
5 int
6 _asgetresp(int fd, Ticket *t, Authenticator *a, Authkey *k)
7 {
8         char tbuf[TICKETLEN+AUTHENTLEN];
9         int n, m;
10
11         memset(t, 0, sizeof(Ticket));
12         if(a != nil)
13                 memset(a, 0, sizeof(Authenticator));
14
15         n = _asrdresp(fd, tbuf, sizeof(tbuf));
16         if(n <= 0)
17                 return -1;
18
19         m = convM2T(tbuf, n, t, k);
20         if(m <= 0)
21                 return -1;
22
23         if(a != nil){
24                 if(convM2A(tbuf+m, n-m, a, t) <= 0)
25                         return -1;
26         }
27
28         return 0;
29 }