projects
/
openssl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Rewrite the extension code to use an ASN1_ITEM structure
[openssl.git]
/
crypto
/
x509v3
/
v3_skey.c
diff --git
a/crypto/x509v3/v3_skey.c
b/crypto/x509v3/v3_skey.c
index 932cd8b26ce758240aaafff091e300e2da5a5b3e..58da456cb566d79036ab9f6590e12a7983a0d74d 100644
(file)
--- a/
crypto/x509v3/v3_skey.c
+++ b/
crypto/x509v3/v3_skey.c
@@
-59,53
+59,36
@@
#include <stdio.h>
#include "cryptlib.h"
#include <stdio.h>
#include "cryptlib.h"
-#include
"x509v3.h"
+#include
<openssl/x509v3.h>
-#ifndef NOPROTO
-static ASN1_OCTET_STRING *octet_string_new(void);
static ASN1_OCTET_STRING *s2i_skey_id(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, char *str);
static ASN1_OCTET_STRING *s2i_skey_id(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, char *str);
-#else
-static ASN1_OCTET_STRING *s2i_skey_id();
-static ASN1_OCTET_STRING *octet_string_new();
-#endif
-
X509V3_EXT_METHOD v3_skey_id = {
X509V3_EXT_METHOD v3_skey_id = {
-NID_subject_key_identifier, 0,
-(X509V3_EXT_NEW)octet_string_new, ASN1_STRING_free,
-(X509V3_EXT_D2I)d2i_ASN1_OCTET_STRING,
-i2d_ASN1_OCTET_STRING,
+NID_subject_key_identifier, 0, &ASN1_OCTET_STRING_it,
+0,0,0,0,
(X509V3_EXT_I2S)i2s_ASN1_OCTET_STRING,
(X509V3_EXT_S2I)s2i_skey_id,
(X509V3_EXT_I2S)i2s_ASN1_OCTET_STRING,
(X509V3_EXT_S2I)s2i_skey_id,
-NULL, NULL, NULL, NULL, NULL};
-
-
-static ASN1_OCTET_STRING *octet_string_new(void)
-{
- return ASN1_OCTET_STRING_new();
-}
+0,0,0,0,
+NULL};
-char *i2s_ASN1_OCTET_STRING(method, oct)
-X509V3_EXT_METHOD *method;
-ASN1_OCTET_STRING *oct;
+char *i2s_ASN1_OCTET_STRING(X509V3_EXT_METHOD *method,
+ ASN1_OCTET_STRING *oct)
{
return hex_to_string(oct->data, oct->length);
}
{
return hex_to_string(oct->data, oct->length);
}
-ASN1_OCTET_STRING *s2i_ASN1_OCTET_STRING(method, ctx, str)
-X509V3_EXT_METHOD *method;
-X509V3_CTX *ctx;
-char *str;
+ASN1_OCTET_STRING *s2i_ASN1_OCTET_STRING(X509V3_EXT_METHOD *method,
+ X509V3_CTX *ctx, char *str)
{
ASN1_OCTET_STRING *oct;
long length;
{
ASN1_OCTET_STRING *oct;
long length;
- if(!(oct = ASN1_OCTET_STRING_new())) {
+ if(!(oct =
M_
ASN1_OCTET_STRING_new())) {
X509V3err(X509V3_F_S2I_ASN1_OCTET_STRING,ERR_R_MALLOC_FAILURE);
return NULL;
}
if(!(oct->data = string_to_hex(str, &length))) {
X509V3err(X509V3_F_S2I_ASN1_OCTET_STRING,ERR_R_MALLOC_FAILURE);
return NULL;
}
if(!(oct->data = string_to_hex(str, &length))) {
- ASN1_OCTET_STRING_free(oct);
+
M_
ASN1_OCTET_STRING_free(oct);
return NULL;
}
return NULL;
}
@@
-115,10
+98,8
@@
char *str;
}
}
-static ASN1_OCTET_STRING *s2i_skey_id(method, ctx, str)
-X509V3_EXT_METHOD *method;
-X509V3_CTX *ctx;
-char *str;
+static ASN1_OCTET_STRING *s2i_skey_id(X509V3_EXT_METHOD *method,
+ X509V3_CTX *ctx, char *str)
{
ASN1_OCTET_STRING *oct;
ASN1_BIT_STRING *pk;
{
ASN1_OCTET_STRING *oct;
ASN1_BIT_STRING *pk;
@@
-128,7
+109,7
@@
char *str;
if(strcmp(str, "hash")) return s2i_ASN1_OCTET_STRING(method, ctx, str);
if(strcmp(str, "hash")) return s2i_ASN1_OCTET_STRING(method, ctx, str);
- if(!(oct = ASN1_OCTET_STRING_new())) {
+ if(!(oct =
M_
ASN1_OCTET_STRING_new())) {
X509V3err(X509V3_F_S2I_S2I_SKEY_ID,ERR_R_MALLOC_FAILURE);
return NULL;
}
X509V3err(X509V3_F_S2I_S2I_SKEY_ID,ERR_R_MALLOC_FAILURE);
return NULL;
}
@@
-153,7
+134,7
@@
char *str;
EVP_DigestUpdate(&md, pk->data, pk->length);
EVP_DigestFinal(&md, pkey_dig, &diglen);
EVP_DigestUpdate(&md, pk->data, pk->length);
EVP_DigestFinal(&md, pkey_dig, &diglen);
- if(!ASN1_OCTET_STRING_set(oct, pkey_dig, diglen)) {
+ if(!
M_
ASN1_OCTET_STRING_set(oct, pkey_dig, diglen)) {
X509V3err(X509V3_F_S2I_S2I_SKEY_ID,ERR_R_MALLOC_FAILURE);
goto err;
}
X509V3err(X509V3_F_S2I_S2I_SKEY_ID,ERR_R_MALLOC_FAILURE);
goto err;
}
@@
-161,6
+142,6
@@
char *str;
return oct;
err:
return oct;
err:
- ASN1_OCTET_STRING_free(oct);
+
M_
ASN1_OCTET_STRING_free(oct);
return NULL;
}
return NULL;
}