+
+void tid_req_cleanup_json( TID_REQ *req, json_t *ref)
+{
+ (void) json_array_append_new(req->json_references, ref);
+}
+
+void tid_req_free(TID_REQ *req)
+{
+ talloc_free(req);
+}
+
+int tid_req_add_path(TID_REQ *req,
+ const char *this_system, unsigned port)
+{
+ char *path_element = talloc_asprintf(req, "%s:%u",
+ this_system, port);
+ if (!req->path) {
+ req->path = json_array();
+ if (!req->path)
+ return -1;
+ tid_req_cleanup_json(req, req->path);
+ }
+ return json_array_append( req->path, json_string(path_element));
+}
+
+
+
+void tid_srvr_get_address(const TID_SRVR_BLK *blk,
+ const struct sockaddr **out_addr,
+ size_t *out_len)
+{
+ struct sockaddr_in *sa = NULL;
+ assert(blk);
+ sa = talloc_zero(blk, struct sockaddr_in);
+ sa->sin_family = AF_INET;
+ sa->sin_addr = blk->aaa_server_addr;
+ sa->sin_port = htons(2083);
+ *out_addr = (struct sockaddr *) sa;
+ *out_len = sizeof( struct sockaddr_in);
+}
+
+DH *tid_srvr_get_dh( TID_SRVR_BLK *blk)
+{
+ assert(blk);
+ return blk->aaa_server_dh;
+}
+
+const TR_NAME *tid_srvr_get_key_name(
+ const TID_SRVR_BLK *blk)
+{
+ assert(blk);
+ return blk->key_name;
+}