Forgot to check in a couple of files.
[trust_router.git] / include / tr_gss.h
1 #ifndef __TR_GSS_H__
2 #define __TR_GSS_H__
3
4 #include <talloc.h>
5 #include <trust_router/tr_name.h>
6
7 #define TR_MAX_GSS_NAMES 5
8
9 typedef struct tr_gss_names {
10   TR_NAME *names[TR_MAX_GSS_NAMES];
11 } TR_GSS_NAMES;
12
13 typedef struct tr_gss_names_iter {
14   TR_GSS_NAMES *gn;
15   int ii; /* which entry did we last output? */
16 } TR_GSS_NAMES_ITER;
17
18 TR_GSS_NAMES *tr_gss_names_new(TALLOC_CTX *mem_ctx);
19 void tr_gss_names_free(TR_GSS_NAMES *gn);
20 int tr_gss_names_add(TR_GSS_NAMES *gn, TR_NAME *new);
21 int tr_gss_names_matches(TR_GSS_NAMES *gn, TR_NAME *name);
22
23 TR_GSS_NAMES_ITER *tr_gss_names_iter_new(TALLOC_CTX *mem_ctx);
24 TR_NAME *tr_gss_names_iter_first(TR_GSS_NAMES_ITER *iter, TR_GSS_NAMES *gn);
25 TR_NAME *tr_gss_names_iter_next(TR_GSS_NAMES_ITER *iter);
26 void tr_gss_names_iter_free(TR_GSS_NAMES_ITER *iter);
27
28 #endif /* __TR_GSS_H__ */