]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
params: OSSL_PARAM_utf8_ptr: don't automatically reference `address`
authorDaiki Ueno <dueno@redhat.com>
Sun, 24 Jan 2021 16:45:57 +0000 (17:45 +0100)
committerRichard Levitte <levitte@openssl.org>
Tue, 26 Jan 2021 14:57:24 +0000 (15:57 +0100)
Since the pointer can be later be modified, the caller should have the
responsibility to supply the address of that.

Signed-off-by: Daiki Ueno <dueno@redhat.com>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/13951)

doc/man3/OSSL_PARAM_int.pod
include/openssl/params.h
providers/fips/fipsprov.c

index ebb5e8ecb822f62bfc5f1ff9ac2b84d55af739cd..2bc2cc0dfc46daf4c402c0d460f71cadf219d6a1 100644 (file)
@@ -337,7 +337,7 @@ This example is for setting parameters on some object:
     size_t foo_l = strlen(foo) + 1;
     const char bar[] = "some other string";
     const OSSL_PARAM set[] = {
-        OSSL_PARAM_utf8_ptr("foo", foo, foo_l),
+        OSSL_PARAM_utf8_ptr("foo", &foo, foo_l),
         OSSL_PARAM_utf8_string("bar", bar, sizeof(bar)),
         OSSL_PARAM_END
     };
@@ -351,7 +351,7 @@ available parameters:
     const char *foo = NULL;
     char bar[1024];
     OSSL_PARAM request[] = {
-        OSSL_PARAM_utf8_ptr("foo", foo, 0),
+        OSSL_PARAM_utf8_ptr("foo", &foo, 0),
         OSSL_PARAM_utf8_string("bar", bar, sizeof(bar)),
         OSSL_PARAM_END
     };
index 6ed7ecbb2433ab16230ba480d454b4e7136beae8..644d6253e8d0bc6034d9e0b1788ff16fda300f39 100644 (file)
@@ -62,9 +62,9 @@ extern "C" {
     OSSL_PARAM_DEFN((key), OSSL_PARAM_OCTET_STRING, (addr), sz)
 
 # define OSSL_PARAM_utf8_ptr(key, addr, sz) \
-    OSSL_PARAM_DEFN((key), OSSL_PARAM_UTF8_PTR, &(addr), sz)
+    OSSL_PARAM_DEFN((key), OSSL_PARAM_UTF8_PTR, (addr), sz)
 # define OSSL_PARAM_octet_ptr(key, addr, sz) \
-    OSSL_PARAM_DEFN((key), OSSL_PARAM_OCTET_PTR, &(addr), sz)
+    OSSL_PARAM_DEFN((key), OSSL_PARAM_OCTET_PTR, (addr), sz)
 
 /* Search an OSSL_PARAM array for a matching name */
 OSSL_PARAM *OSSL_PARAM_locate(OSSL_PARAM *p, const char *key);
index f59c2c1c911f9281b76a3d269d884310b7ae33e0..990b69ef343f204f35dbed51ade1183c476f8bce 100644 (file)
@@ -117,25 +117,25 @@ static const OSSL_PARAM fips_param_types[] = {
 static OSSL_PARAM core_params[] =
 {
     OSSL_PARAM_utf8_ptr(OSSL_PROV_PARAM_CORE_MODULE_FILENAME,
-                        selftest_params.module_filename,
+                        &selftest_params.module_filename,
                         sizeof(selftest_params.module_filename)),
     OSSL_PARAM_utf8_ptr(OSSL_PROV_FIPS_PARAM_MODULE_MAC,
-                        selftest_params.module_checksum_data,
+                        &selftest_params.module_checksum_data,
                         sizeof(selftest_params.module_checksum_data)),
     OSSL_PARAM_utf8_ptr(OSSL_PROV_FIPS_PARAM_INSTALL_MAC,
-                        selftest_params.indicator_checksum_data,
+                        &selftest_params.indicator_checksum_data,
                         sizeof(selftest_params.indicator_checksum_data)),
     OSSL_PARAM_utf8_ptr(OSSL_PROV_FIPS_PARAM_INSTALL_STATUS,
-                        selftest_params.indicator_data,
+                        &selftest_params.indicator_data,
                         sizeof(selftest_params.indicator_data)),
     OSSL_PARAM_utf8_ptr(OSSL_PROV_FIPS_PARAM_INSTALL_VERSION,
-                        selftest_params.indicator_version,
+                        &selftest_params.indicator_version,
                         sizeof(selftest_params.indicator_version)),
     OSSL_PARAM_utf8_ptr(OSSL_PROV_FIPS_PARAM_CONDITIONAL_ERRORS,
-                        selftest_params.conditional_error_check,
+                        &selftest_params.conditional_error_check,
                         sizeof(selftest_params.conditional_error_check)),
     OSSL_PARAM_utf8_ptr(OSSL_PROV_FIPS_PARAM_SECURITY_CHECKS,
-                        fips_security_check_option,
+                        &fips_security_check_option,
                         sizeof(fips_security_check_option)),
     OSSL_PARAM_END
 };