Use common define for properties, engine, cipher and digest params
authorPauli <paul.dale@oracle.com>
Sat, 7 Sep 2019 00:48:07 +0000 (10:48 +1000)
committerPauli <paul.dale@oracle.com>
Sat, 7 Sep 2019 06:01:53 +0000 (16:01 +1000)
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/9770)

include/openssl/core_names.h

index 1d8857295cce19afd5b88da01b0877a1c0c7cae4..b78a0978fde0c06fabf690b501c8c70009de7db2 100644 (file)
@@ -40,6 +40,16 @@ extern "C" {
  */
 #define OSSL_PROV_PARAM_MODULE_FILENAME "module-filename"
 
+/*
+ * Algorithm parameters
+ * If "engine" or "properties" are specified, they should always be paired
+ * with the algorithm type.
+ */
+#define OSSL_ALG_PARAM_DIGEST       "digest"    /* utf8_string */
+#define OSSL_ALG_PARAM_CIPHER       "cipher"    /* utf8_string */
+#define OSSL_ALG_PARAM_ENGINE       "engine"    /* utf8_string */
+#define OSSL_ALG_PARAM_PROPERTIES   "properties"/* utf8_string */
+
 /* cipher parameters */
 #define OSSL_CIPHER_PARAM_PADDING   "padding"    /* uint */
 #define OSSL_CIPHER_PARAM_MODE      "mode"       /* uint */
@@ -80,10 +90,10 @@ extern "C" {
  * If "engine" or "properties" are specified, they should always be paired
  * with "cipher" or "digest".
  */
-#define OSSL_MAC_PARAM_CIPHER       "cipher"     /* utf8 string */
-#define OSSL_MAC_PARAM_DIGEST       "digest"     /* utf8 string */
-#define OSSL_MAC_PARAM_ENGINE       "engine"     /* utf8 string */
-#define OSSL_MAC_PARAM_PROPERTIES   "properties" /* utf8 string */
+#define OSSL_MAC_PARAM_CIPHER       OSSL_ALG_PARAM_CIPHER     /* utf8 string */
+#define OSSL_MAC_PARAM_DIGEST       OSSL_ALG_PARAM_DIGEST     /* utf8 string */
+#define OSSL_MAC_PARAM_ENGINE       OSSL_ALG_PARAM_ENGINE     /* utf8 string */
+#define OSSL_MAC_PARAM_PROPERTIES   OSSL_ALG_PARAM_PROPERTIES /* utf8 string */
 #define OSSL_MAC_PARAM_SIZE         "size"       /* size_t */
 
 /* Known MAC names (not a complete list) */
@@ -97,10 +107,11 @@ extern "C" {
 #define OSSL_KDF_PARAM_KEY          "key"       /* octet string */
 #define OSSL_KDF_PARAM_SALT         "salt"      /* octet string */
 #define OSSL_KDF_PARAM_PASSWORD     "pass"      /* octet string */
-#define OSSL_KDF_PARAM_DIGEST       "digest"    /* utf8 string */
+#define OSSL_KDF_PARAM_DIGEST       OSSL_ALG_PARAM_DIGEST    /* utf8 string */
 #define OSSL_KDF_PARAM_MAC          "mac"       /* utf8 string */
 #define OSSL_KDF_PARAM_MAC_SIZE     "maclen"    /* size_t */
-#define OSSL_KDF_PARAM_PROPERTIES   "properties" /* utf8 string */
+#define OSSL_KDF_PARAM_ENGINE       OSSL_ALG_PARAM_ENGINE     /* utf8 string */
+#define OSSL_KDF_PARAM_PROPERTIES   OSSL_ALG_PARAM_PROPERTIES /* utf8 string */
 #define OSSL_KDF_PARAM_ITER         "iter"      /* unsigned int */
 #define OSSL_KDF_PARAM_MODE         "mode"      /* utf8 string or int */
 #define OSSL_KDF_PARAM_PKCS5        "pkcs5"     /* int */