summaryrefslogtreecommitdiffstats
path: root/include/crypto/x509v3.h
diff options
context:
space:
mode:
authorNikolay Morozov <nmorozoff77@yandex.ru>2020-02-14 13:14:30 +0300
committerDmitry Belyavskiy <beldmit@gmail.com>2020-02-28 18:01:16 +0300
commit6103f39c0d79e86b58ae9437bc4c55a513a5e1dd (patch)
tree550729c8f67964c225ef70160df18b9e1c3d941e /include/crypto/x509v3.h
parent1dfdbd5bf65bc9e7dec728e502f9c7cd9352bb42 (diff)
x509v3 subjectSignTool extention support
Subject Sign Tool (1.2.643.100.111) The name of the tool used to signs the subject (UTF8String) This extention is required to obtain the status of a qualified certificate at Russian Federation. RFC-style description is available here: https://tools.ietf.org/html/draft-deremin-rfc4491-bis-04#section-5 Russian Federal Law 63 "Digital Sign" is available here: http://www.consultant.ru/document/cons_doc_LAW_112701/ Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com> (Merged from https://github.com/openssl/openssl/pull/11093)
Diffstat (limited to 'include/crypto/x509v3.h')
-rw-r--r--include/crypto/x509v3.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/include/crypto/x509v3.h b/include/crypto/x509v3.h
new file mode 100644
index 0000000000..4ca85e9a2e
--- /dev/null
+++ b/include/crypto/x509v3.h
@@ -0,0 +1,23 @@
+/*
+ * Copyright 2020 The OpenSSL Project Authors. All Rights Reserved.
+ *
+ * Licensed under the Apache License 2.0 (the "License"). You may not use
+ * this file except in compliance with the License. You can obtain a copy
+ * in the file LICENSE in the source distribution or at
+ * https://www.openssl.org/source/license.html
+ */
+#ifndef OSSL_CRYPTO_X509V3_H
+# define OSSL_CRYPTO_X509V3_H
+
+#define EXT_UTF8STRING(nid) { nid, 0, ASN1_ITEM_ref(ASN1_UTF8STRING), \
+ 0,0,0,0, \
+ (X509V3_EXT_I2S)i2s_ASN1_UTF8STRING, \
+ (X509V3_EXT_S2I)s2i_ASN1_UTF8STRING, \
+ 0,0,0,0, \
+ NULL}
+
+char *i2s_ASN1_UTF8STRING(X509V3_EXT_METHOD *method, ASN1_UTF8STRING *utf8);
+ASN1_UTF8STRING *s2i_ASN1_UTF8STRING(X509V3_EXT_METHOD *method,
+ X509V3_CTX *ctx, const char *str);
+
+#endif