Rudiments

gsscontext.h
1 // Copyright (c) 1999-2018 David Muse
2 // See the COPYING file for more information.
3
4 void *getContext();
5 void setTokenFormat(gsstokenformat_t tokenformat);
6
7 private:
8 bool getMaxMessageSize(const char *mechname);
9 bool inquire();
10 bool initiate(const char *name,
11 size_t namelen,
12 const void *nametype);
13
14 ssize_t receiveToken(uint32_t *tokenflags,
15 void **tokendata,
16 size_t *tokensize);
17 ssize_t receiveKrbToken(uint32_t *tokenflags,
18 void **tokendata,
19 size_t *tokensize);
20 ssize_t receiveTlsToken(uint32_t *tokenflags,
21 void **tokendata,
22 size_t *tokensize);
23
24 ssize_t sendToken(uint32_t tokenflags,
25 const void *tokendata,
26 size_t tokensize);
27 ssize_t sendKrbToken(uint32_t tokenflags,
28 const void *tokendata,
29 size_t tokensize);
30 ssize_t sendTlsToken(uint32_t tokenflags,
31 const void *tokendata,
32 size_t tokensize);
33
34 ssize_t fullRead(void *data, ssize_t count);
35 ssize_t fullWrite(const void *data, ssize_t count);
36
37 bool checkFlags(uint32_t actualflags,
38 uint32_t desiredflags);
39
40 void setStatus(uint32_t status, int32_t type);
41
42 gsscontextprivate *pvt;