summaryrefslogtreecommitdiff
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)
downloadopenssl-new-175b0942ec7e82f86831916d325922817872e657.tar.gz
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;