diff options
author | Jack Lloyd <[email protected]> | 2018-10-01 05:28:59 -0400 |
---|---|---|
committer | Jack Lloyd <[email protected]> | 2018-10-01 05:28:59 -0400 |
commit | b96189789154222a8de57e31deb457be4208b4b3 (patch) | |
tree | 3e507015919fe4c73ccdabd3903fdcf178d5fd1b | |
parent | 388530b25b3de0e33f85612d91721dc190b3347d (diff) |
Fix more MSVC warnings
-rw-r--r-- | doc/release_process.rst | 3 | ||||
-rw-r--r-- | src/cli/speed.cpp | 2 | ||||
-rw-r--r-- | src/lib/pbkdf/pgp_s2k/pgp_s2k.cpp | 4 | ||||
-rw-r--r-- | src/lib/prov/pkcs11/p11.h | 47 | ||||
-rw-r--r-- | src/lib/prov/pkcs11/p11_mechanism.h | 4 | ||||
-rw-r--r-- | src/lib/prov/pkcs11/p11_randomgenerator.cpp | 4 | ||||
-rw-r--r-- | src/lib/rng/system_rng/system_rng.cpp | 2 | ||||
-rw-r--r-- | src/lib/tls/tls_cbc/tls_cbc.cpp | 4 | ||||
-rw-r--r-- | src/lib/utils/mem_pool/mem_pool.cpp | 2 | ||||
-rw-r--r-- | src/lib/utils/os_utils.cpp | 9 | ||||
-rw-r--r-- | src/lib/x509/x509_ext.cpp | 2 | ||||
-rw-r--r-- | src/lib/x509/x509path.cpp | 4 | ||||
-rw-r--r-- | src/tests/test_bigint.cpp | 2 | ||||
-rw-r--r-- | src/tests/test_ocb.cpp | 4 | ||||
-rw-r--r-- | src/tests/test_pem.cpp | 4 | ||||
-rw-r--r-- | src/tests/test_tls.cpp | 2 |
16 files changed, 61 insertions, 38 deletions
diff --git a/doc/release_process.rst b/doc/release_process.rst index fdf312281..101823119 100644 --- a/doc/release_process.rst +++ b/doc/release_process.rst @@ -12,7 +12,8 @@ Pre Release Testing Kick off a Coverity scan a day or so before the planned release. Do maintainer-mode builds with Clang and GCC to catch any warnings -that should be corrected. +that should be corrected. Also check Visual C++ build logs for any +warnings that should be addressed. And remember that CI doesn't test everything. In particular, not all tests run under valgrind or on the qemu cross builds due to time diff --git a/src/cli/speed.cpp b/src/cli/speed.cpp index 80fe6591b..ec6db5c86 100644 --- a/src/cli/speed.cpp +++ b/src/cli/speed.cpp @@ -291,7 +291,7 @@ std::vector<size_t> unique_buffer_sizes(const std::string& cmdline_arg) if(converted != size_str.size()) throw CLI_Usage_Error("Invalid integer"); } - catch(std::exception& e) + catch(std::exception&) { throw CLI_Usage_Error("Invalid integer value '" + size_str + "' for option buf-size"); } diff --git a/src/lib/pbkdf/pgp_s2k/pgp_s2k.cpp b/src/lib/pbkdf/pgp_s2k/pgp_s2k.cpp index 3f2c564c8..1cd07c490 100644 --- a/src/lib/pbkdf/pgp_s2k/pgp_s2k.cpp +++ b/src/lib/pbkdf/pgp_s2k/pgp_s2k.cpp @@ -20,7 +20,7 @@ uint8_t RFC4880_encode_count(size_t desired_iterations) for(size_t c = 0; c < 256; ++c) { // TODO could binary search - const uint32_t decoded_iter = RFC4880_decode_count(c); + const size_t decoded_iter = RFC4880_decode_count(static_cast<uint8_t>(c)); if(decoded_iter >= desired_iterations) return static_cast<uint8_t>(c); } @@ -178,7 +178,7 @@ std::unique_ptr<PasswordHash> RFC4880_S2K_Family::tune(size_t output_len, std::c const size_t blocks_required = (output_len <= hash_size ? 1 : (output_len + hash_size - 1) / hash_size); const double bytes_to_be_hashed = (hash_bytes_per_second * (desired_nsec / 1000000000.0)) / blocks_required; - const size_t iterations = RFC4880_round_iterations(bytes_to_be_hashed); + const size_t iterations = RFC4880_round_iterations(static_cast<size_t>(bytes_to_be_hashed)); return std::unique_ptr<PasswordHash>(new RFC4880_S2K(m_hash->clone(), iterations)); } diff --git a/src/lib/prov/pkcs11/p11.h b/src/lib/prov/pkcs11/p11.h index a1f85af45..dfd89bb0f 100644 --- a/src/lib/prov/pkcs11/p11.h +++ b/src/lib/prov/pkcs11/p11.h @@ -1156,8 +1156,11 @@ class BOTAN_PUBLIC_API(2,0) LowLevel padded_label.insert(padded_label.end(), 32 - label.size(), ' '); } - return C_InitToken(slot_id, reinterpret_cast< Utf8Char* >(const_cast< uint8_t* >(so_pin.data())), - so_pin.size(), reinterpret_cast< Utf8Char* >(const_cast< char* >(padded_label.c_str())), return_value); + return C_InitToken(slot_id, + reinterpret_cast< Utf8Char* >(const_cast< uint8_t* >(so_pin.data())), + static_cast<Ulong>(so_pin.size()), + reinterpret_cast< Utf8Char* >(const_cast< char* >(padded_label.c_str())), + return_value); } /** @@ -1252,8 +1255,10 @@ class BOTAN_PUBLIC_API(2,0) LowLevel ReturnValue* return_value = ThrowException) const { return C_SetPIN(session, - reinterpret_cast< Utf8Char* >(const_cast< uint8_t* >(old_pin.data())), old_pin.size(), - reinterpret_cast< Utf8Char* >(const_cast< uint8_t* >(new_pin.data())), new_pin.size(), + reinterpret_cast< Utf8Char* >(const_cast< uint8_t* >(old_pin.data())), + static_cast<Ulong>(old_pin.size()), + reinterpret_cast< Utf8Char* >(const_cast< uint8_t* >(new_pin.data())), + static_cast<Ulong>(new_pin.size()), return_value); } @@ -1423,7 +1428,9 @@ class BOTAN_PUBLIC_API(2,0) LowLevel const std::vector<uint8_t, TAlloc>& pin, ReturnValue* return_value = ThrowException) const { - return C_Login(session, user_type, reinterpret_cast< Utf8Char* >(const_cast< uint8_t* >(pin.data())), pin.size(), + return C_Login(session, user_type, + reinterpret_cast< Utf8Char* >(const_cast< uint8_t* >(pin.data())), + static_cast<Ulong>(pin.size()), return_value); } @@ -1583,8 +1590,11 @@ class BOTAN_PUBLIC_API(2,0) LowLevel getter_template.emplace_back(Attribute{ static_cast< CK_ATTRIBUTE_TYPE >(entry.first), nullptr, 0 }); } - bool success = C_GetAttributeValue(session, object, const_cast< Attribute* >(getter_template.data()), - getter_template.size(), return_value); + bool success = C_GetAttributeValue(session, + object, + const_cast< Attribute* >(getter_template.data()), + static_cast<Ulong>(getter_template.size()), + return_value); if(!success) { @@ -1600,7 +1610,9 @@ class BOTAN_PUBLIC_API(2,0) LowLevel i++; } - return C_GetAttributeValue(session, object, const_cast< Attribute* >(getter_template.data()), getter_template.size(), + return C_GetAttributeValue(session, object, + const_cast< Attribute* >(getter_template.data()), + static_cast<Ulong>(getter_template.size()), return_value); } @@ -1658,7 +1670,9 @@ class BOTAN_PUBLIC_API(2,0) LowLevel setter_template.emplace_back(Attribute{ static_cast< CK_ATTRIBUTE_TYPE >(entry.first), entry.second.data(), static_cast<CK_ULONG>(entry.second.size()) }); } - return C_SetAttributeValue(session, object, const_cast< Attribute* >(setter_template.data()), setter_template.size(), + return C_SetAttributeValue(session, object, + const_cast< Attribute* >(setter_template.data()), + static_cast<Ulong>(setter_template.size()), return_value); } @@ -1790,7 +1804,10 @@ class BOTAN_PUBLIC_API(2,0) LowLevel ReturnValue* return_value = ThrowException) const { Ulong encrypted_size = 0; - if(!C_Encrypt(session, const_cast<Byte*>((plaintext_data.data())), plaintext_data.size(), nullptr, &encrypted_size, + if(!C_Encrypt(session, + const_cast<Byte*>((plaintext_data.data())), + static_cast<Ulong>(plaintext_data.size()), + nullptr, &encrypted_size, return_value)) { return false; @@ -1917,7 +1934,10 @@ class BOTAN_PUBLIC_API(2,0) LowLevel ReturnValue* return_value = ThrowException) const { Ulong decrypted_size = 0; - if(!C_Decrypt(session, const_cast<Byte*>((encrypted_data.data())), encrypted_data.size(), nullptr, &decrypted_size, + if(!C_Decrypt(session, + const_cast<Byte*>((encrypted_data.data())), + static_cast<Ulong>(encrypted_data.size()), + nullptr, &decrypted_size, return_value)) { return false; @@ -2197,7 +2217,10 @@ class BOTAN_PUBLIC_API(2,0) LowLevel const std::vector<uint8_t, TAlloc>& part, ReturnValue* return_value = ThrowException) const { - return C_SignUpdate(session, const_cast<Byte*>(part.data()), part.size(), return_value); + return C_SignUpdate(session, + const_cast<Byte*>(part.data()), + static_cast<Ulong>(part.size()), + return_value); } /** diff --git a/src/lib/prov/pkcs11/p11_mechanism.h b/src/lib/prov/pkcs11/p11_mechanism.h index 80f2f8ec9..035d1e69a 100644 --- a/src/lib/prov/pkcs11/p11_mechanism.h +++ b/src/lib/prov/pkcs11/p11_mechanism.h @@ -66,7 +66,7 @@ class MechanismWrapper final inline void set_ecdh_salt(const uint8_t salt[], size_t salt_len) { m_parameters->ecdh_params.pSharedData = const_cast<uint8_t*>(salt); - m_parameters->ecdh_params.ulSharedDataLen = salt_len; + m_parameters->ecdh_params.ulSharedDataLen = static_cast<Ulong>(salt_len); } /** @@ -77,7 +77,7 @@ class MechanismWrapper final inline void set_ecdh_other_key(const uint8_t other_key[], size_t other_key_len) { m_parameters->ecdh_params.pPublicData = const_cast<uint8_t*>(other_key); - m_parameters->ecdh_params.ulPublicDataLen = other_key_len; + m_parameters->ecdh_params.ulPublicDataLen = static_cast<Ulong>(other_key_len); } /// @return a pointer to the CK_MECHANISM struct that can be passed to the cryptoki functions diff --git a/src/lib/prov/pkcs11/p11_randomgenerator.cpp b/src/lib/prov/pkcs11/p11_randomgenerator.cpp index 957a33cae..2f4e4c2ec 100644 --- a/src/lib/prov/pkcs11/p11_randomgenerator.cpp +++ b/src/lib/prov/pkcs11/p11_randomgenerator.cpp @@ -18,12 +18,12 @@ PKCS11_RNG::PKCS11_RNG(Session& session) void PKCS11_RNG::randomize(uint8_t output[], std::size_t length) { - module()->C_GenerateRandom(m_session.get().handle(), output, length); + module()->C_GenerateRandom(m_session.get().handle(), output, Ulong(length)); } void PKCS11_RNG::add_entropy(const uint8_t in[], std::size_t length) { - module()->C_SeedRandom(m_session.get().handle(), const_cast<uint8_t*>(in), length); + module()->C_SeedRandom(m_session.get().handle(), const_cast<uint8_t*>(in), Ulong(length)); } } diff --git a/src/lib/rng/system_rng/system_rng.cpp b/src/lib/rng/system_rng/system_rng.cpp index aa7858d4a..ae027d021 100644 --- a/src/lib/rng/system_rng/system_rng.cpp +++ b/src/lib/rng/system_rng/system_rng.cpp @@ -48,7 +48,7 @@ class System_RNG_Impl final : public RandomNumberGenerator void randomize(uint8_t buf[], size_t len) override { - bool success = m_rtlgenrandom(buf, len) == TRUE; + bool success = m_rtlgenrandom(buf, ULONG(len)) == TRUE; if(!success) throw Exception("RtlGenRandom failed"); } diff --git a/src/lib/tls/tls_cbc/tls_cbc.cpp b/src/lib/tls/tls_cbc/tls_cbc.cpp index a745a548b..23127642d 100644 --- a/src/lib/tls/tls_cbc/tls_cbc.cpp +++ b/src/lib/tls/tls_cbc/tls_cbc.cpp @@ -141,7 +141,7 @@ void TLS_CBC_HMAC_AEAD_Encryption::set_associated_data(const uint8_t ad[], size_ { // AAD hack for EtM const uint16_t pt_size = make_uint16(assoc_data()[11], assoc_data()[12]); - const uint16_t enc_size = round_up(iv_size() + pt_size + 1, block_size()); + const uint16_t enc_size = static_cast<uint16_t>(round_up(iv_size() + pt_size + 1, block_size())); assoc_data()[11] = get_byte<uint16_t>(0, enc_size); assoc_data()[12] = get_byte<uint16_t>(1, enc_size); } @@ -231,7 +231,7 @@ uint16_t check_tls_cbc_padding(const uint8_t record[], size_t record_len) * and allows up to 255 bytes. */ - const uint16_t to_check = std::min<uint16_t>(256, record_len); + const uint16_t to_check = std::min<uint16_t>(256, static_cast<uint16_t>(record_len)); const uint8_t pad_byte = record[record_len-1]; const uint16_t pad_bytes = 1 + pad_byte; diff --git a/src/lib/utils/mem_pool/mem_pool.cpp b/src/lib/utils/mem_pool/mem_pool.cpp index d25343383..e052c10e7 100644 --- a/src/lib/utils/mem_pool/mem_pool.cpp +++ b/src/lib/utils/mem_pool/mem_pool.cpp @@ -63,7 +63,7 @@ Memory_Pool::Memory_Pool(uint8_t* pool, void* Memory_Pool::allocate(size_t req) { - const size_t alignment = (1 << m_align_bit); + const size_t alignment = (static_cast<size_t>(1) << m_align_bit); if(req > m_pool_size) return nullptr; diff --git a/src/lib/utils/os_utils.cpp b/src/lib/utils/os_utils.cpp index 7d50dac77..86e5443c3 100644 --- a/src/lib/utils/os_utils.cpp +++ b/src/lib/utils/os_utils.cpp @@ -216,20 +216,21 @@ uint64_t OS::get_system_timestamp_ns() size_t OS::system_page_size() { + const size_t default_page_size = 4096; + #if defined(BOTAN_TARGET_OS_HAS_POSIX1) long p = ::sysconf(_SC_PAGESIZE); if(p > 1) return static_cast<size_t>(p); else - return 4096; + return default_page_size; #elif defined(BOTAN_TARGET_OS_HAS_VIRTUAL_LOCK) SYSTEM_INFO sys_info; ::GetSystemInfo(&sys_info); return sys_info.dwPageSize; +#else + return default_page_size; #endif - - // default value - return 4096; } size_t OS::get_memory_locking_limit() diff --git a/src/lib/x509/x509_ext.cpp b/src/lib/x509/x509_ext.cpp index 841adac57..97c291f6e 100644 --- a/src/lib/x509/x509_ext.cpp +++ b/src/lib/x509/x509_ext.cpp @@ -99,7 +99,7 @@ Extensions::create_extn_obj(const OID& oid, { extn->decode_inner(body); } - catch(Decoding_Error& e) + catch(Decoding_Error&) { extn.reset(new Cert_Extension::Unknown_Extension(oid, critical)); extn->decode_inner(body); diff --git a/src/lib/x509/x509path.cpp b/src/lib/x509/x509path.cpp index e73fe12b6..8e459e9d2 100644 --- a/src/lib/x509/x509path.cpp +++ b/src/lib/x509/x509path.cpp @@ -389,7 +389,7 @@ PKIX::check_ocsp_online(const std::vector<std::shared_ptr<const X509_Certificate /*redirects*/1, timeout); } - catch(std::exception& e) + catch(std::exception&) { // log e.what() ? } @@ -476,7 +476,7 @@ PKIX::check_crl_online(const std::vector<std::shared_ptr<const X509_Certificate> { crls[i] = future_crls[i].get(); } - catch(std::exception& e) + catch(std::exception&) { // crls[i] left null // todo: log exception e.what() ? diff --git a/src/tests/test_bigint.cpp b/src/tests/test_bigint.cpp index 33c617239..3870c5c6f 100644 --- a/src/tests/test_bigint.cpp +++ b/src/tests/test_bigint.cpp @@ -167,7 +167,7 @@ class BigInt_Unit_Tests final : public Test for(auto sample : counts) { - const double count = sample.second; + const double count = static_cast<double>(sample.second); chi2 += ((count - expected)*(count - expected)) / expected; } diff --git a/src/tests/test_ocb.cpp b/src/tests/test_ocb.cpp index 169a86dd9..42c1f0e24 100644 --- a/src/tests/test_ocb.cpp +++ b/src/tests/test_ocb.cpp @@ -213,7 +213,7 @@ class OCB_Wide_Long_KAT_Tests final : public Text_Based_Test std::vector<uint8_t> key(bs); for(size_t i = 0; i != bs; ++i) - key[i] = 0xA0 + i; + key[i] = static_cast<uint8_t>(0xA0 + i); enc.set_key(key); @@ -225,7 +225,7 @@ class OCB_Wide_Long_KAT_Tests final : public Text_Based_Test { std::vector<uint8_t> S(i); for(size_t j = 0; j != S.size(); ++j) - S[j] = 0x50 + j; + S[j] = static_cast<uint8_t>(0x50 + j); Botan::store_be(static_cast<uint16_t>(3 * i + 1), &N[0]); diff --git a/src/tests/test_pem.cpp b/src/tests/test_pem.cpp index 5fc8080dd..5d911dcda 100644 --- a/src/tests/test_pem.cpp +++ b/src/tests/test_pem.cpp @@ -19,9 +19,7 @@ class PEM_Tests : public Test { Test::Result result("PEM encoding"); - std::vector<uint8_t> vec(5); - for(size_t i = 0; i != vec.size(); ++i) - vec[i] = i; + std::vector<uint8_t> vec = { 0, 1, 2, 3, 4 }; const std::string pem1 = Botan::PEM_Code::encode(vec, "BUNNY", 3); diff --git a/src/tests/test_tls.cpp b/src/tests/test_tls.cpp index 1f44d76a5..af13a83b8 100644 --- a/src/tests/test_tls.cpp +++ b/src/tests/test_tls.cpp @@ -191,7 +191,7 @@ class TLS_CBC_Tests final : public Text_Based_Test else result.test_failure("Accepted invalid TLS-CBC ciphertext"); } - catch(std::exception& e) + catch(std::exception&) { if(is_valid) result.test_failure("Rejected valid TLS-CBC ciphertext"); |