aboutsummaryrefslogtreecommitdiffstats
path: root/Source/charon/payloads/nonce_payload.c
diff options
context:
space:
mode:
authorMartin Willi <martin@strongswan.org>2005-11-16 16:14:00 +0000
committerMartin Willi <martin@strongswan.org>2005-11-16 16:14:00 +0000
commitb722736c2f0b456fdd1e4d64d6d8b40b3fd916b4 (patch)
treee834831409fd14d33f701163eacc8d3934a976a6 /Source/charon/payloads/nonce_payload.c
parent14e635db50f576f298a3617e8336c1601045593a (diff)
downloadstrongswan-b722736c2f0b456fdd1e4d64d6d8b40b3fd916b4.tar.bz2
strongswan-b722736c2f0b456fdd1e4d64d6d8b40b3fd916b4.tar.xz
- change cloning behavior, does not clone anymore
Diffstat (limited to 'Source/charon/payloads/nonce_payload.c')
-rw-r--r--Source/charon/payloads/nonce_payload.c14
1 files changed, 3 insertions, 11 deletions
diff --git a/Source/charon/payloads/nonce_payload.c b/Source/charon/payloads/nonce_payload.c
index e515f6fff..c1842d8ae 100644
--- a/Source/charon/payloads/nonce_payload.c
+++ b/Source/charon/payloads/nonce_payload.c
@@ -106,7 +106,7 @@ encoding_rule_t nonce_payload_encodings[] = {
*/
static status_t destroy(private_nonce_payload_t *this)
{
- if (this->nonce.ptr)
+ if (this->nonce.ptr != NULL)
{
allocator_free(this->nonce.ptr);
}
@@ -124,11 +124,7 @@ static status_t set_nonce(private_nonce_payload_t *this, chunk_t nonce)
if (nonce.len >= 16 && nonce.len <= 256)
{
this->nonce.len = nonce.len;
- this->nonce.ptr = allocator_clone_bytes(nonce.ptr, nonce.len);
- if (this->nonce.ptr == NULL)
- {
- return OUT_OF_RES;
- }
+ this->nonce.ptr = nonce.ptr;
this->payload_length = NONCE_PAYLOAD_HEADER_LENGTH + nonce.len;
return SUCCESS;
}
@@ -142,11 +138,7 @@ static status_t set_nonce(private_nonce_payload_t *this, chunk_t nonce)
static status_t get_nonce(private_nonce_payload_t *this, chunk_t *nonce)
{
nonce->len = this->nonce.len;
- nonce->ptr = allocator_clone_bytes(this->nonce.ptr, this->nonce.len);
- if (nonce->ptr == NULL)
- {
- return OUT_OF_RES;
- }
+ nonce->ptr = this->nonce.ptr;
return SUCCESS;
}