diff options
author | Andreas Steffen <andreas.steffen@strongswan.org> | 2011-11-21 23:32:39 +0100 |
---|---|---|
committer | Andreas Steffen <andreas.steffen@strongswan.org> | 2011-11-28 21:22:01 +0100 |
commit | 56fd3baa34191b86a876a7cf28d1c4a6f1c3e09a (patch) | |
tree | 5f1eab0282c381e5d0c00d7319d88bad0d6cc183 /src | |
parent | 893bf977c51e533b96b63a910e3349b192920e64 (diff) | |
download | strongswan-56fd3baa34191b86a876a7cf28d1c4a6f1c3e09a.tar.bz2 strongswan-56fd3baa34191b86a876a7cf28d1c4a6f1c3e09a.tar.xz |
fixed two memory leaks
Diffstat (limited to 'src')
-rw-r--r-- | src/libpts/pts/components/ita/ita_comp_tboot.c | 4 | ||||
-rw-r--r-- | src/libpts/pts/components/ita/ita_comp_tgrub.c | 3 | ||||
-rw-r--r-- | src/libpts/pts/components/pts_comp_evidence.c | 2 | ||||
-rw-r--r-- | src/libpts/tcg/tcg_pts_attr_req_func_comp_evid.c | 2 |
4 files changed, 6 insertions, 5 deletions
diff --git a/src/libpts/pts/components/ita/ita_comp_tboot.c b/src/libpts/pts/components/ita/ita_comp_tboot.c index 7d1e67a06..dc47e4b11 100644 --- a/src/libpts/pts/components/ita/ita_comp_tboot.c +++ b/src/libpts/pts/components/ita/ita_comp_tboot.c @@ -105,8 +105,8 @@ METHOD(pts_component_t, measure, status_t, pcr_after = chunk_from_hex( chunk_create(pcr_after_hex, strlen(pcr_after_hex)), NULL); - evid = *evidence = pts_comp_evidence_create(this->name, 0, - this->extended_pcr, + evid = *evidence = pts_comp_evidence_create(this->name->clone(this->name), + 0, this->extended_pcr, PTS_MEAS_ALGO_SHA1, PTS_PCR_TRANSFORM_NO, this->measurement_time, measurement); evid->set_pcr_info(evid, pcr_before, pcr_after); diff --git a/src/libpts/pts/components/ita/ita_comp_tgrub.c b/src/libpts/pts/components/ita/ita_comp_tgrub.c index aae3bf474..9a4da6d93 100644 --- a/src/libpts/pts/components/ita/ita_comp_tgrub.c +++ b/src/libpts/pts/components/ita/ita_comp_tgrub.c @@ -77,7 +77,8 @@ METHOD(pts_component_t, measure, status_t, pcr_before = chunk_alloc(PCR_LEN); memset(pcr_before.ptr, 0x00, pcr_before.len); - evid = *evidence = pts_comp_evidence_create(this->name, 0, extended_pcr, + evid = *evidence = pts_comp_evidence_create(this->name->clone(this->name), + 0, extended_pcr, PTS_MEAS_ALGO_SHA1, PTS_PCR_TRANSFORM_NO, measurement_time, measurement); evid->set_pcr_info(evid, pcr_before, pcr_after); diff --git a/src/libpts/pts/components/pts_comp_evidence.c b/src/libpts/pts/components/pts_comp_evidence.c index f6f40daa1..a1e590243 100644 --- a/src/libpts/pts/components/pts_comp_evidence.c +++ b/src/libpts/pts/components/pts_comp_evidence.c @@ -208,7 +208,7 @@ pts_comp_evidence_t *pts_comp_evidence_create(pts_comp_func_name_t *name, .set_validation = _set_validation, .destroy = _destroy, }, - .name = name->clone(name), + .name = name, .depth = depth, .extended_pcr = extended_pcr, .hash_algorithm = algo, diff --git a/src/libpts/tcg/tcg_pts_attr_req_func_comp_evid.c b/src/libpts/tcg/tcg_pts_attr_req_func_comp_evid.c index 58f8a0c6c..062989572 100644 --- a/src/libpts/tcg/tcg_pts_attr_req_func_comp_evid.c +++ b/src/libpts/tcg/tcg_pts_attr_req_func_comp_evid.c @@ -278,7 +278,7 @@ METHOD(tcg_pts_attr_req_func_comp_evid_t, add_component, void, entry = malloc_thing(entry_t); entry->flags = flags; entry->depth = depth; - entry->name = name->clone(name); + entry->name = name; this->list->insert_last(this->list, entry); } |