diff options
Diffstat (limited to 'src/lib/libcrypto/asn1/x_sig.c')
| -rw-r--r-- | src/lib/libcrypto/asn1/x_sig.c | 64 |
1 files changed, 7 insertions, 57 deletions
diff --git a/src/lib/libcrypto/asn1/x_sig.c b/src/lib/libcrypto/asn1/x_sig.c index f0a2e4c27a..42efa86c1c 100644 --- a/src/lib/libcrypto/asn1/x_sig.c +++ b/src/lib/libcrypto/asn1/x_sig.c | |||
| @@ -58,62 +58,12 @@ | |||
| 58 | 58 | ||
| 59 | #include <stdio.h> | 59 | #include <stdio.h> |
| 60 | #include "cryptlib.h" | 60 | #include "cryptlib.h" |
| 61 | #include "asn1_mac.h" | 61 | #include <openssl/asn1t.h> |
| 62 | 62 | #include <openssl/x509.h> | |
| 63 | /* | ||
| 64 | * ASN1err(ASN1_F_D2I_X509_SIG,ASN1_R_LENGTH_MISMATCH); | ||
| 65 | * ASN1err(ASN1_F_X509_SIG_NEW,ASN1_R_LENGTH_MISMATCH); | ||
| 66 | */ | ||
| 67 | |||
| 68 | int i2d_X509_SIG(a,pp) | ||
| 69 | X509_SIG *a; | ||
| 70 | unsigned char **pp; | ||
| 71 | { | ||
| 72 | M_ASN1_I2D_vars(a); | ||
| 73 | |||
| 74 | M_ASN1_I2D_len(a->algor, i2d_X509_ALGOR); | ||
| 75 | M_ASN1_I2D_len(a->digest, i2d_ASN1_OCTET_STRING); | ||
| 76 | |||
| 77 | M_ASN1_I2D_seq_total(); | ||
| 78 | |||
| 79 | M_ASN1_I2D_put(a->algor, i2d_X509_ALGOR); | ||
| 80 | M_ASN1_I2D_put(a->digest, i2d_ASN1_OCTET_STRING); | ||
| 81 | |||
| 82 | M_ASN1_I2D_finish(); | ||
| 83 | } | ||
| 84 | |||
| 85 | X509_SIG *d2i_X509_SIG(a,pp,length) | ||
| 86 | X509_SIG **a; | ||
| 87 | unsigned char **pp; | ||
| 88 | long length; | ||
| 89 | { | ||
| 90 | M_ASN1_D2I_vars(a,X509_SIG *,X509_SIG_new); | ||
| 91 | |||
| 92 | M_ASN1_D2I_Init(); | ||
| 93 | M_ASN1_D2I_start_sequence(); | ||
| 94 | M_ASN1_D2I_get(ret->algor,d2i_X509_ALGOR); | ||
| 95 | M_ASN1_D2I_get(ret->digest,d2i_ASN1_OCTET_STRING); | ||
| 96 | M_ASN1_D2I_Finish(a,X509_SIG_free,ASN1_F_D2I_X509_SIG); | ||
| 97 | } | ||
| 98 | |||
| 99 | X509_SIG *X509_SIG_new() | ||
| 100 | { | ||
| 101 | X509_SIG *ret=NULL; | ||
| 102 | |||
| 103 | M_ASN1_New_Malloc(ret,X509_SIG); | ||
| 104 | M_ASN1_New(ret->algor,X509_ALGOR_new); | ||
| 105 | M_ASN1_New(ret->digest,ASN1_OCTET_STRING_new); | ||
| 106 | return(ret); | ||
| 107 | M_ASN1_New_Error(ASN1_F_X509_SIG_NEW); | ||
| 108 | } | ||
| 109 | |||
| 110 | void X509_SIG_free(a) | ||
| 111 | X509_SIG *a; | ||
| 112 | { | ||
| 113 | if (a == NULL) return; | ||
| 114 | X509_ALGOR_free(a->algor); | ||
| 115 | ASN1_OCTET_STRING_free(a->digest); | ||
| 116 | Free((char *)a); | ||
| 117 | } | ||
| 118 | 63 | ||
| 64 | ASN1_SEQUENCE(X509_SIG) = { | ||
| 65 | ASN1_SIMPLE(X509_SIG, algor, X509_ALGOR), | ||
| 66 | ASN1_SIMPLE(X509_SIG, digest, ASN1_OCTET_STRING) | ||
| 67 | } ASN1_SEQUENCE_END(X509_SIG) | ||
| 119 | 68 | ||
| 69 | IMPLEMENT_ASN1_FUNCTIONS(X509_SIG) | ||
