diff options
author | Nobuyoshi Nakada <[email protected]> | 2021-09-12 00:44:18 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <[email protected]> | 2021-09-12 22:49:01 +0900 |
commit | c7dce12eb9e07f6ae35fc767760b862c10317e11 (patch) | |
tree | 43782fae1e69c38f3ff50c5c1818c9e513cb9cae | |
parent | 11fd3fec534bb626e717a0628a0cf6d6252a0ff4 (diff) |
[ruby/openssl] Suppress printf format warnings
* Add `printf` format attribute to `ossl_raise`.
* Fix a format specifier in `config_load_bio`.
* Use `ASSUME` for the unreachable condition.
https://github.com/ruby/openssl/commit/41da2955db
-rw-r--r-- | ext/openssl/ossl.c | 2 | ||||
-rw-r--r-- | ext/openssl/ossl.h | 2 | ||||
-rw-r--r-- | ext/openssl/ossl_config.c | 2 | ||||
-rw-r--r-- | ext/openssl/ossl_pkey_ec.c | 6 |
4 files changed, 8 insertions, 4 deletions
diff --git a/ext/openssl/ossl.c b/ext/openssl/ossl.c index cf070ef859..91cb54bfbe 100644 --- a/ext/openssl/ossl.c +++ b/ext/openssl/ossl.c @@ -265,6 +265,8 @@ ossl_to_der_if_possible(VALUE obj) return obj; } +PRINTF_ARGS(static VALUE ossl_make_error(VALUE exc, const char *fmt, va_list args), 2, 0); + /* * Errors */ diff --git a/ext/openssl/ossl.h b/ext/openssl/ossl.h index 577eb6d6be..07d789e0f8 100644 --- a/ext/openssl/ossl.h +++ b/ext/openssl/ossl.h @@ -120,7 +120,7 @@ int ossl_pem_passwd_cb(char *, int, int, void *); /* * ERRor messages */ -NORETURN(void ossl_raise(VALUE, const char *, ...)); +PRINTF_ARGS(NORETURN(void ossl_raise(VALUE, const char *, ...)), 2, 3); /* Clear OpenSSL error queue. If dOSSL is set, rb_warn() them. */ void ossl_clear_error(void); diff --git a/ext/openssl/ossl_config.c b/ext/openssl/ossl_config.c index 21c327b26b..0bac027487 100644 --- a/ext/openssl/ossl_config.c +++ b/ext/openssl/ossl_config.c @@ -60,7 +60,7 @@ config_load_bio(CONF *conf, BIO *bio) if (eline <= 0) ossl_raise(eConfigError, "wrong config format"); else - ossl_raise(eConfigError, "error in line %d", eline); + ossl_raise(eConfigError, "error in line %ld", eline); } BIO_free(bio); diff --git a/ext/openssl/ossl_pkey_ec.c b/ext/openssl/ossl_pkey_ec.c index 9b461cb6a2..26c627f232 100644 --- a/ext/openssl/ossl_pkey_ec.c +++ b/ext/openssl/ossl_pkey_ec.c @@ -596,8 +596,10 @@ static VALUE ossl_ec_group_initialize(int argc, VALUE *argv, VALUE self) ossl_raise(rb_eArgError, "wrong number of arguments"); } - if (group == NULL) - ossl_raise(eEC_GROUP, ""); +#if !defined(LIKELY) && !defined(RB_LIKELY) +#define LIKELY(x) (x) +#endif + ASSUME(group); RTYPEDDATA_DATA(self) = group; return self; |