summaryrefslogtreecommitdiff
path: root/source4/heimdal/lib/asn1/der_copy.c
diff options
context:
space:
mode:
Diffstat (limited to 'source4/heimdal/lib/asn1/der_copy.c')
-rw-r--r--source4/heimdal/lib/asn1/der_copy.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/source4/heimdal/lib/asn1/der_copy.c b/source4/heimdal/lib/asn1/der_copy.c
index a80c851f96..3a0a8c5ffa 100644
--- a/source4/heimdal/lib/asn1/der_copy.c
+++ b/source4/heimdal/lib/asn1/der_copy.c
@@ -85,14 +85,20 @@ int
der_copy_printable_string (const heim_printable_string *from,
heim_printable_string *to)
{
- return der_copy_general_string(from, to);
+ to->length = from->length;
+ to->data = malloc(to->length + 1);
+ if(to->data == NULL)
+ return ENOMEM;
+ memcpy(to->data, from->data, to->length);
+ ((char *)to->data)[to->length] = '\0';
+ return 0;
}
int
-der_copy_ia5_string (const heim_printable_string *from,
- heim_printable_string *to)
+der_copy_ia5_string (const heim_ia5_string *from,
+ heim_ia5_string *to)
{
- return der_copy_general_string(from, to);
+ return der_copy_printable_string(from, to);
}
int