diff options
Diffstat (limited to 'src/lib/libcrypto/asn1/a_octet.c')
| -rw-r--r-- | src/lib/libcrypto/asn1/a_octet.c | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/src/lib/libcrypto/asn1/a_octet.c b/src/lib/libcrypto/asn1/a_octet.c index d998675d3f..c1a25202c0 100644 --- a/src/lib/libcrypto/asn1/a_octet.c +++ b/src/lib/libcrypto/asn1/a_octet.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: a_octet.c,v 1.10 2015/07/29 14:58:34 jsing Exp $ */ | 1 | /* $OpenBSD: a_octet.c,v 1.11 2021/12/25 08:52:44 jsing Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -59,6 +59,26 @@ | |||
| 59 | #include <stdio.h> | 59 | #include <stdio.h> |
| 60 | 60 | ||
| 61 | #include <openssl/asn1.h> | 61 | #include <openssl/asn1.h> |
| 62 | #include <openssl/asn1t.h> | ||
| 63 | |||
| 64 | const ASN1_ITEM ASN1_OCTET_STRING_it = { | ||
| 65 | .itype = ASN1_ITYPE_PRIMITIVE, | ||
| 66 | .utype = V_ASN1_OCTET_STRING, | ||
| 67 | .sname = "ASN1_OCTET_STRING", | ||
| 68 | }; | ||
| 69 | |||
| 70 | ASN1_OCTET_STRING * | ||
| 71 | ASN1_OCTET_STRING_new(void) | ||
| 72 | { | ||
| 73 | return (ASN1_OCTET_STRING *)ASN1_item_new(&ASN1_OCTET_STRING_it); | ||
| 74 | } | ||
| 75 | |||
| 76 | void | ||
| 77 | ASN1_OCTET_STRING_free(ASN1_OCTET_STRING *a) | ||
| 78 | { | ||
| 79 | ASN1_item_free((ASN1_VALUE *)a, &ASN1_OCTET_STRING_it); | ||
| 80 | } | ||
| 81 | |||
| 62 | 82 | ||
| 63 | ASN1_OCTET_STRING * | 83 | ASN1_OCTET_STRING * |
| 64 | ASN1_OCTET_STRING_dup(const ASN1_OCTET_STRING *x) | 84 | ASN1_OCTET_STRING_dup(const ASN1_OCTET_STRING *x) |
| @@ -77,3 +97,16 @@ ASN1_OCTET_STRING_set(ASN1_OCTET_STRING *x, const unsigned char *d, int len) | |||
| 77 | { | 97 | { |
| 78 | return ASN1_STRING_set(x, d, len); | 98 | return ASN1_STRING_set(x, d, len); |
| 79 | } | 99 | } |
| 100 | |||
| 101 | int | ||
| 102 | i2d_ASN1_OCTET_STRING(ASN1_OCTET_STRING *a, unsigned char **out) | ||
| 103 | { | ||
| 104 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &ASN1_OCTET_STRING_it); | ||
| 105 | } | ||
| 106 | |||
| 107 | ASN1_OCTET_STRING * | ||
| 108 | d2i_ASN1_OCTET_STRING(ASN1_OCTET_STRING **a, const unsigned char **in, long len) | ||
| 109 | { | ||
| 110 | return (ASN1_OCTET_STRING *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, | ||
| 111 | &ASN1_OCTET_STRING_it); | ||
| 112 | } | ||
