X-Git-Url: http://www.project-moonshot.org/gitweb/?p=trust_router.git;a=blobdiff_plain;f=tid%2Ftid_req.c;fp=tid%2Ftid_req.c;h=1bfce701cb30c01956ffe75bcadf04ab20b13240;hp=db87adfb5f39a8aac7eab36d56889830405651e5;hb=6f65c9cce86719147d0b4dcc9823b25443c2d185;hpb=eaa1a8ceed54fbfadc2638cf383aaa12ab446a57 diff --git a/tid/tid_req.c b/tid/tid_req.c index db87adf..1bfce70 100644 --- a/tid/tid_req.c +++ b/tid/tid_req.c @@ -63,6 +63,8 @@ static int destroy_tid_req(TID_REQ *req) tr_free_name(req->comm); if (req->orig_coi!=NULL) tr_free_name(req->orig_coi); + if (req->request_id!=NULL) + tr_free_name(req->request_id); return 0; } @@ -76,6 +78,7 @@ TID_REQ *tid_req_new() assert(req->json_references); req->conn = -1; req->free_conn = 1; + req->request_id = NULL; return req; } @@ -164,11 +167,21 @@ TR_NAME *tid_req_get_orig_coi(TID_REQ *req) return(req->orig_coi); } -void tid_req_set_rp_orig_coi(TID_REQ *req, TR_NAME *orig_coi) +void tid_req_set_orig_coi(TID_REQ *req, TR_NAME *orig_coi) { req->orig_coi = orig_coi; } +void tid_req_set_request_id(TID_REQ *req, TR_NAME *request_id) +{ + req->request_id = request_id; +} + +TR_NAME *tid_req_get_request_id(TID_REQ *req) +{ + return(req->request_id); +} + TIDC_RESP_FUNC *tid_req_get_resp_func(TID_REQ *req) { return(req->resp_func); @@ -215,7 +228,13 @@ TID_REQ *tid_dup_req (TID_REQ *orig_req) tr_crit("tid_dup_req: Can't duplicate request (orig_coi)."); } } - + + if (orig_req->request_id) { + if (NULL == (new_req->request_id = tr_dup_name(orig_req->request_id))) { + tr_crit("tid_dup_req: Can't duplicate request (request_id)."); + } + } + return new_req; } @@ -234,7 +253,7 @@ void tid_req_free(TID_REQ *req) } int tid_req_add_path(TID_REQ *req, - const char *this_system, unsigned port) + const char *this_system, int port) { char *path_element = talloc_asprintf(req, "%s:%u", this_system, port);