diff options
Diffstat (limited to 'source4/heimdal/lib/asn1/der_free.c')
-rw-r--r-- | source4/heimdal/lib/asn1/der_free.c | 58 |
1 files changed, 56 insertions, 2 deletions
diff --git a/source4/heimdal/lib/asn1/der_free.c b/source4/heimdal/lib/asn1/der_free.c index bec41b1ee1..8959c3b1c3 100644 --- a/source4/heimdal/lib/asn1/der_free.c +++ b/source4/heimdal/lib/asn1/der_free.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997 - 2003 Kungliga Tekniska Högskolan + * Copyright (c) 1997 - 2005 Kungliga Tekniska Högskolan * (Royal Institute of Technology, Stockholm, Sweden). * All rights reserved. * @@ -33,7 +33,7 @@ #include "der_locl.h" -RCSID("$Id: der_free.c,v 1.10 2003/08/20 16:18:49 joda Exp $"); +RCSID("$Id: der_free.c,v 1.11 2005/07/12 06:27:21 lha Exp $"); void free_general_string (heim_general_string *str) @@ -43,10 +43,55 @@ free_general_string (heim_general_string *str) } void +free_utf8string (heim_utf8_string *str) +{ + free(*str); + *str = NULL; +} + +void +free_printable_string (heim_printable_string *str) +{ + free(*str); + *str = NULL; +} + +void +free_ia5_string (heim_ia5_string *str) +{ + free_general_string(str); +} + +void +free_bmp_string (heim_bmp_string *k) +{ + free(k->data); + k->data = NULL; + k->length = 0; +} + +void +free_universal_string (heim_universal_string *k) +{ + free(k->data); + k->data = NULL; + k->length = 0; +} + +void free_octet_string (heim_octet_string *k) { free(k->data); k->data = NULL; + k->length = 0; +} + +void +free_heim_integer (heim_integer *k) +{ + free(k->data); + k->data = NULL; + k->length = 0; } void @@ -54,4 +99,13 @@ free_oid (heim_oid *k) { free(k->components); k->components = NULL; + k->length = 0; +} + +void +free_bit_string (heim_bit_string *k) +{ + free(k->data); + k->data = NULL; + k->length = 0; } |