summaryrefslogtreecommitdiffstats
path: root/crypto/x509v3/v3_alt.c
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>1999-02-10 01:12:59 +0000
committerDr. Stephen Henson <steve@openssl.org>1999-02-10 01:12:59 +0000
commit175b0942ec7e82f86831916d325922817872e657 (patch)
tree44262b09075d8ca2b46b4819069f4a5df304ae89 /crypto/x509v3/v3_alt.c
parentc45beb91b3ddf18b29c65b64b9e0ee74497a7f27 (diff)
More extension code. Incomplete support for subject and issuer alt
name, issuer and authority key id. Change the i2v function parameters and add an extra 'crl' parameter in the X509V3_CTX structure: guess what that's for :-) Fix to ASN1 macro which messed up IMPLICIT tag and add f_enum.c which adds a2i, i2a for ENUMERATED.
Diffstat (limited to 'crypto/x509v3/v3_alt.c')
-rw-r--r--crypto/x509v3/v3_alt.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/crypto/x509v3/v3_alt.c b/crypto/x509v3/v3_alt.c
index 62d895de0d..4347c76c3d 100644
--- a/crypto/x509v3/v3_alt.c
+++ b/crypto/x509v3/v3_alt.c
@@ -65,11 +65,6 @@
#include <conf.h>
#include "x509v3.h"
-#ifndef NOPROTO
-static STACK *i2v_GENERAL_NAMES(X509V3_EXT_METHOD *method, STACK *gen);
-/*static STACK *v2i_GENERAL_NAMES(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, STACK *values);*/
-#endif
-
X509V3_EXT_METHOD v3_alt[] = {
{ NID_subject_alt_name, 0,
(X509V3_EXT_NEW)GENERAL_NAMES_new,
@@ -92,13 +87,14 @@ NULL, NULL},
EXT_END
};
-static STACK *i2v_GENERAL_NAMES(method, gens)
+STACK *i2v_GENERAL_NAMES(method, gens, ret)
X509V3_EXT_METHOD *method;
STACK *gens;
+STACK *ret;
{
int i;
- STACK *ret = NULL;
GENERAL_NAME *gen;
+ char oline[256];
for(i = 0; i < sk_num(gens); i++) {
gen = (GENERAL_NAME *)sk_value(gens, i);
switch (gen->type)
@@ -127,6 +123,11 @@ STACK *gens;
X509V3_add_value("URI",gen->d.ia5->data, &ret);
break;
+ case GEN_DIRNAME:
+ X509_NAME_oneline(gen->d.dirn, oline, 256);
+ X509V3_add_value("DirName",oline, &ret);
+ break;
+
case GEN_IPADD:
X509V3_add_value("IP Address","<unsupported>", &ret);
break;