summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2020-10-17 07:58:32 +0200
committerRichard Levitte <levitte@openssl.org>2020-11-11 12:43:27 +0100
commit45da4a0fc54bce2c5fd99ce4a3fbe8e5456092ea (patch)
treea6f0f949cff2781a16e818fa31dc5e6ed89e1411
parent6debc6ab7499745baf7123e69936a9997dbbe6cb (diff)
CORE: Add support for specifying the outermost object structure
Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/13167)
-rw-r--r--doc/man7/provider-object.pod5
-rw-r--r--include/openssl/core_names.h11
2 files changed, 11 insertions, 5 deletions
diff --git a/doc/man7/provider-object.pod b/doc/man7/provider-object.pod
index 63332b4f9b..2380dd4b17 100644
--- a/doc/man7/provider-object.pod
+++ b/doc/man7/provider-object.pod
@@ -153,6 +153,11 @@ data.
is either missing or has the value OSSL_OBJECT_UNKNOWN), libcrypto
interprets the object data type as the input type for a decoder.
+=item "data-structure" (B<OSSL_OBJECT_PARAM_DATA_STRUCTURE>) <utf8 string>
+
+The outermost structure of the object content. Legitimate values depend on
+the object type.
+
=item "desc" (B<OSSL_OBJECT_PARAM_DESC>) <utf8 string>
A human readable text that describes extra details on the object.
diff --git a/include/openssl/core_names.h b/include/openssl/core_names.h
index 11a4168cc1..850351bd30 100644
--- a/include/openssl/core_names.h
+++ b/include/openssl/core_names.h
@@ -42,11 +42,12 @@ extern "C" {
* This set of parameter names is explained in detail in provider-object(7)
* (doc/man7/provider-object.pod)
*/
-#define OSSL_OBJECT_PARAM_TYPE "type" /* INTEGER */
-#define OSSL_OBJECT_PARAM_DATA_TYPE "data-type" /* UTF8_STRING */
-#define OSSL_OBJECT_PARAM_REFERENCE "reference" /* OCTET_STRING */
-#define OSSL_OBJECT_PARAM_DATA "data" /* OCTET_STRING or UTF8_STRING */
-#define OSSL_OBJECT_PARAM_DESC "desc" /* UTF8_STRING */
+#define OSSL_OBJECT_PARAM_TYPE "type" /* INTEGER */
+#define OSSL_OBJECT_PARAM_DATA_TYPE "data-type" /* UTF8_STRING */
+#define OSSL_OBJECT_PARAM_DATA_STRUCTURE "data-structure" /* UTF8_STRING */
+#define OSSL_OBJECT_PARAM_REFERENCE "reference" /* OCTET_STRING */
+#define OSSL_OBJECT_PARAM_DATA "data" /* OCTET_STRING or UTF8_STRING */
+#define OSSL_OBJECT_PARAM_DESC "desc" /* UTF8_STRING */
/*
* Algorithm parameters