Constify OSSL_FUNC_keymgmt_has()
authorNicola Tuveri <nic.tuv@gmail.com>
Tue, 20 Oct 2020 22:02:04 +0000 (01:02 +0300)
committerPauli <paul.dale@oracle.com>
Thu, 22 Oct 2020 02:27:39 +0000 (12:27 +1000)
The keydata argument of OSSL_FUNC_keymgmt_has() should be read-only.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/13200)

doc/man7/provider-keymgmt.pod
include/openssl/core_dispatch.h
providers/implementations/keymgmt/dh_kmgmt.c
providers/implementations/keymgmt/dsa_kmgmt.c
providers/implementations/keymgmt/ec_kmgmt.c
providers/implementations/keymgmt/ecx_kmgmt.c
providers/implementations/keymgmt/kdf_legacy_kmgmt.c
providers/implementations/keymgmt/mac_legacy_kmgmt.c
providers/implementations/keymgmt/rsa_kmgmt.c
test/tls-provider.c

index fdb1bf77942fbf39f720b8ffa73b43a299cb09af..ae3dd265a8b307b77ac2516d30bf79605fd88f94 100644 (file)
@@ -36,7 +36,7 @@ provider-keymgmt - The KEYMGMT library E<lt>-E<gt> provider functions
  const OSSL_PARAM *OSSL_FUNC_keymgmt_settable_params(void *provctx);
 
  /* Key object content checks */
- int OSSL_FUNC_keymgmt_has(void *keydata, int selection);
+ int OSSL_FUNC_keymgmt_has(const void *keydata, int selection);
  int OSSL_FUNC_keymgmt_match(const void *keydata1, const void *keydata2,
                              int selection);
 
index 249d5e250668f574b2c524e3b4cdb7e5bf79cb14..11eadd3334c29d560f214cca0dada3c1e9799722 100644 (file)
@@ -530,7 +530,7 @@ OSSL_CORE_MAKE_FUNC(const char *, keymgmt_query_operation_name,
 
 /* Key checks - key data content checks */
 # define OSSL_FUNC_KEYMGMT_HAS                        21
-OSSL_CORE_MAKE_FUNC(int, keymgmt_has, (void *keydata, int selection))
+OSSL_CORE_MAKE_FUNC(int, keymgmt_has, (const void *keydata, int selection))
 
 /* Key checks - validation */
 # define OSSL_FUNC_KEYMGMT_VALIDATE                   22
index 73164672f83075196a075e1cc97b8da05624d524..b944d3cd9989403099dda702f225575259de9b17 100644 (file)
@@ -143,9 +143,9 @@ static void dh_freedata(void *keydata)
     DH_free(keydata);
 }
 
-static int dh_has(void *keydata, int selection)
+static int dh_has(const void *keydata, int selection)
 {
-    DH *dh = keydata;
+    const DH *dh = keydata;
     int ok = 0;
 
     if (ossl_prov_is_running() && dh != NULL) {
index 0fe6760856088b898070472e4b15970560dac9c7..9ade336cdfdb546912024dd27031c0005fb7cc6f 100644 (file)
@@ -121,9 +121,9 @@ static void dsa_freedata(void *keydata)
     DSA_free(keydata);
 }
 
-static int dsa_has(void *keydata, int selection)
+static int dsa_has(const void *keydata, int selection)
 {
-    DSA *dsa = keydata;
+    const DSA *dsa = keydata;
     int ok = 0;
 
     if (ossl_prov_is_running() && dsa != NULL) {
index b96d0ea5386010a782207c2beed96419c122a94f..9d76e1ceed590c52aa8aa739caedbcd784042d33 100644 (file)
@@ -246,9 +246,9 @@ void ec_freedata(void *keydata)
 }
 
 static
-int ec_has(void *keydata, int selection)
+int ec_has(const void *keydata, int selection)
 {
-    EC_KEY *ec = keydata;
+    const EC_KEY *ec = keydata;
     int ok = 0;
 
     if (ossl_prov_is_running() && ec != NULL) {
index 16ffc3126c7cac28a628f578276d08fcfdf5fe00..3dccbaf88010f8dd43e8c4b44e561e5d8ce3f2b6 100644 (file)
@@ -113,9 +113,9 @@ static void *ed448_new_key(void *provctx)
                        NULL);
 }
 
-static int ecx_has(void *keydata, int selection)
+static int ecx_has(const void *keydata, int selection)
 {
-    ECX_KEY *key = keydata;
+    const ECX_KEY *key = keydata;
     int ok = 0;
 
     if (ossl_prov_is_running() && key != NULL) {
index f7f8f479af42e3ef97cd655bcd598295f72fefc0..7d788343fe1a3542752b8776b6e26dfbf0f38af0 100644 (file)
@@ -91,7 +91,7 @@ static void kdf_freedata(void *kdfdata)
     kdf_data_free(kdfdata);
 }
 
-static int kdf_has(void *keydata, int selection)
+static int kdf_has(const void *keydata, int selection)
 {
     return 0;
 }
index 969b266c683cad651554bc299b9db332bee51488..196d3516ed888f9167753c2224f8802cc3e7f3cf 100644 (file)
@@ -131,9 +131,9 @@ static void mac_free(void *mackey)
     mac_key_free(mackey);
 }
 
-static int mac_has(void *keydata, int selection)
+static int mac_has(const void *keydata, int selection)
 {
-    MAC_KEY *key = keydata;
+    const MAC_KEY *key = keydata;
     int ok = 0;
 
     if (ossl_prov_is_running() && key != NULL) {
index 8c45758ff72fd01a4dca4f8802323e0692c5f7d1..a37288a8b12d212227305aa3609d5b4a6c145606 100644 (file)
@@ -108,9 +108,9 @@ static void rsa_freedata(void *keydata)
     RSA_free(keydata);
 }
 
-static int rsa_has(void *keydata, int selection)
+static int rsa_has(const void *keydata, int selection)
 {
-    RSA *rsa = keydata;
+    const RSA *rsa = keydata;
     int ok = 0;
 
     if (rsa != NULL && ossl_prov_is_running()) {
index d3188d0c20d86ec060743b283fb6e6f59c95ea7a..184b926881121611d133a1df1683474e323e34ba 100644 (file)
@@ -418,9 +418,9 @@ static void xor_freedata(void *keydata)
     OPENSSL_free(keydata);
 }
 
-static int xor_has(void *vkey, int selection)
+static int xor_has(const void *vkey, int selection)
 {
-    XORKEY *key = vkey;
+    const XORKEY *key = vkey;
     int ok = 0;
 
     if (key != NULL) {