218a5264b40fd9ba25edd921c55f5e876aa15446
[yaz-moved-to-github.git] / include / yaz / z-acckrb1.h
1 /* YC 0.2: Tue Feb 29 16:45:07 CET 2000 */
2 /* Module-H AccessControlFormat-krb-1 */
3
4 #ifndef z_acckrb1_H
5 #define z_acckrb1_H
6
7 #include <yaz/odr.h>
8 #include <yaz/z-core.h>
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12
13 typedef struct Z_KRBObject Z_KRBObject;
14 YAZ_EXPORT int z_KRBObject (ODR o, Z_KRBObject **p, int opt, const char *name);
15
16 typedef struct Z_KRBRequest Z_KRBRequest;
17 YAZ_EXPORT int z_KRBRequest (ODR o, Z_KRBRequest **p, int opt, const char *name);
18
19 typedef struct Z_KRBResponse Z_KRBResponse;
20 YAZ_EXPORT int z_KRBResponse (ODR o, Z_KRBResponse **p, int opt, const char *name);
21 #ifdef __cplusplus
22 }
23 #endif
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 struct Z_KRBObject {
28         int which;
29         union {
30                 Z_KRBRequest *challenge;
31                 Z_KRBResponse *response;
32 #define Z_KRBObject_challenge 1
33 #define Z_KRBObject_response 2
34         } u;
35 };
36
37 struct Z_KRBRequest {
38         Z_InternationalString *service;
39         Z_InternationalString *instance; /* OPT */
40         Z_InternationalString *realm; /* OPT */
41 };
42
43 struct Z_KRBResponse {
44         Z_InternationalString *userid; /* OPT */
45         Odr_oct *ticket;
46 };
47
48 #ifdef __cplusplus
49 }
50 #endif
51 #endif