Peer organizations now parsed and added to peer table.
[trust_router.git] / include / tr_rp.h
index ed74344..9db8c15 100644 (file)
 #ifndef TR_RP_H
 #define TR_RP_H
 
-#include <tr_filter.h>
+#include <talloc.h>
 
-#define TR_MAX_GSS_NAMES 5
+#include <tr_gss.h>
+#include <tr_filter.h>
 
 typedef struct tr_rp_client {
   struct tr_rp_client *next;
   struct tr_rp_client *comm_next;
-  TR_NAME *gss_names[TR_MAX_GSS_NAMES];
+  TR_GSS_NAMES *gss_names;
   TR_FILTER *filter;
 } TR_RP_CLIENT;
 
@@ -53,6 +54,12 @@ typedef struct tr_rp_realm {
 } TR_RP_REALM;
 
 /* prototypes */
+TR_RP_CLIENT *tr_rp_client_new(TALLOC_CTX *mem_ctx);
+void tr_rp_client_free(TR_RP_CLIENT *client);
+TR_RP_CLIENT *tr_rp_client_add(TR_RP_CLIENT *clients, TR_RP_CLIENT *new);
+int tr_rp_client_add_gss_name(TR_RP_CLIENT *client, TR_NAME *name);
+int tr_rp_client_set_filter(TR_RP_CLIENT *client, TR_FILTER *filt);
+
 TR_RP_CLIENT *tr_rp_client_lookup(TR_RP_CLIENT *rp_clients, TR_NAME *gss_name);
 TR_RP_REALM *tr_rp_realm_add(TR_RP_REALM *head, TR_RP_REALM *new);
 #endif