From 94fffa29014c8055212849d1d098ab7729a135b1 Mon Sep 17 00:00:00 2001 From: Sam Hartman Date: Mon, 9 Mar 2015 20:32:02 -0400 Subject: [PATCH] Add key expiration to output message --- common/tr_msg.c | 8 +++++++- include/tid_internal.h | 3 ++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/common/tr_msg.c b/common/tr_msg.c index 85221f5..85be430 100644 --- a/common/tr_msg.c +++ b/common/tr_msg.c @@ -224,6 +224,7 @@ static json_t *tr_msg_encode_one_server(TID_SRVR_BLK *srvr) { json_t *jsrvr = NULL; json_t *jstr = NULL; + gchar *time_str = g_time_val_to_iso8601(&srvr->key_expiration); fprintf(stderr, "Encoding one server.\n"); @@ -233,11 +234,16 @@ static json_t *tr_msg_encode_one_server(TID_SRVR_BLK *srvr) jstr = json_string(inet_ntoa(srvr->aaa_server_addr)); json_object_set_new(jsrvr, "server_addr", jstr); + json_object_set_new(jsrvr, + "key_expiration", json_string(time_str)); + g_free(time_str); /* Server DH Block */ jstr = json_string(srvr->key_name->buf); json_object_set_new(jsrvr, "key_name", jstr); json_object_set_new(jsrvr, "server_dh", tr_msg_encode_dh(srvr->aaa_server_dh)); - + if (srvr->path) + /* The path is owned by the srvr, so grab an extra ref*/ + json_object_set(jsrvr, "path", srvr->path); // fprintf(stderr,"tr_msg_encode_one_server(): jsrvr contains:\n"); // fprintf(stderr,"%s\n", json_dumps(jsrvr, 0)); return jsrvr; diff --git a/include/tid_internal.h b/include/tid_internal.h index 882b3fa..94faa23 100644 --- a/include/tid_internal.h +++ b/include/tid_internal.h @@ -34,6 +34,7 @@ #ifndef TID_INTERNAL_H #define TID_INTERNAL_H +#include #include #include @@ -42,7 +43,7 @@ struct tid_srvr_blk { struct in_addr aaa_server_addr; TR_NAME *key_name; DH *aaa_server_dh; /* AAA server's public dh information */ - char *expiration_time; /**< absolute time at which key expires*/ + GTimeVal key_expiration; /**< absolute time at which key expires*/ json_t *path;/**< Path of trust routers that the request traversed*/ }; -- 2.1.4