Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Ledest:erlang:24
erlang
3701-ssl-public_key-Allow-binary-keyfile-passwo...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 3701-ssl-public_key-Allow-binary-keyfile-passwords.patch of Package erlang
From f3d345e38bee4d684e0cd5571e02c5e7b4323a6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= <lhoguin@vmware.com> Date: Mon, 29 Nov 2021 11:08:18 +0100 Subject: [PATCH] ssl/public_key: Allow binary keyfile passwords --- lib/public_key/src/pubkey_pbe.erl | 4 ++-- lib/public_key/src/pubkey_pem.erl | 4 ++-- lib/public_key/src/public_key.erl | 4 ++-- lib/ssl/src/ssl.erl | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/public_key/src/pubkey_pbe.erl b/lib/public_key/src/pubkey_pbe.erl index dc327567e4..bd9a7c07e4 100644 --- a/lib/public_key/src/pubkey_pbe.erl +++ b/lib/public_key/src/pubkey_pbe.erl @@ -33,7 +33,7 @@ %%==================================================================== %%-------------------------------------------------------------------- --spec encode(binary(), string(), string(), term()) -> binary(). +-spec encode(binary(), iodata(), string(), term()) -> binary(). %% %% Description: Performs password based encoding %%-------------------------------------------------------------------- @@ -57,7 +57,7 @@ encode(Data, Password, "AES-256-CBC"= Cipher, KeyDevParams) -> crypto:crypto_one_time(aes_256_cbc, Key, IV, pbe_pad(Data, block_size(aes_256_cbc)), true). %%-------------------------------------------------------------------- --spec decode(binary(), string(), string(), term()) -> binary(). +-spec decode(binary(), iodata(), string(), term()) -> binary(). %% %% Description: Performs password based decoding %%-------------------------------------------------------------------- diff --git a/lib/public_key/src/pubkey_pem.erl b/lib/public_key/src/pubkey_pem.erl index 4aa965e14f..e28fd4019c 100644 --- a/lib/public_key/src/pubkey_pem.erl +++ b/lib/public_key/src/pubkey_pem.erl @@ -72,7 +72,7 @@ encode(PemEntries) -> -spec decipher({public_key:pki_asn1_type(), DerEncrypted::binary(), {Cipher :: string(), Salt :: iodata() | #'PBES2-params'{} | {#'PBEParameter'{}, atom()}}}, - string()) -> Der::binary(). + iodata()) -> Der::binary(). %% %% Description: Deciphers a decrypted pem entry. %%-------------------------------------------------------------------- @@ -82,7 +82,7 @@ decipher({_, DecryptDer, {Cipher, KeyDevParams}}, Password) -> %%-------------------------------------------------------------------- -spec cipher(Der::binary(), {Cipher :: string(), Salt :: iodata() | #'PBES2-params'{} | {#'PBEParameter'{}, atom()}}, - string()) -> binary(). + iodata()) -> binary(). %% %% Description: Ciphers a PEM entry %%-------------------------------------------------------------------- diff --git a/lib/public_key/src/public_key.erl b/lib/public_key/src/public_key.erl index a345c275f7..33772df96b 100644 --- a/lib/public_key/src/public_key.erl +++ b/lib/public_key/src/public_key.erl @@ -243,7 +243,7 @@ pem_entry_decode({Asn1Type, Der, not_encrypted}) when is_atom(Asn1Type), -spec pem_entry_decode(PemEntry, Password) -> term() when PemEntry :: pem_entry(), - Password :: string() | fun(() -> string()). + Password :: iodata() | fun(() -> iodata()). pem_entry_decode(PemEntry, PasswordFun) when is_function(PasswordFun) -> pem_entry_decode(PemEntry, PasswordFun()); pem_entry_decode({Asn1Type, Der, not_encrypted}, _) when is_atom(Asn1Type), @@ -313,7 +313,7 @@ pem_entry_encode(Asn1Type, Entity) when is_atom(Asn1Type) -> Entity :: term(), InfoPwd :: {CipherInfo,Password}, CipherInfo :: cipher_info(), - Password :: string() . + Password :: iodata() . pem_entry_encode(Asn1Type, Entity, {{Cipher, #'PBES2-params'{}} = CipherInfo, Password}) when is_atom(Asn1Type) andalso is_list(Password) andalso diff --git a/lib/ssl/src/ssl.erl b/lib/ssl/src/ssl.erl index e158f77c1d..1084437ac1 100644 --- a/lib/ssl/src/ssl.erl +++ b/lib/ssl/src/ssl.erl @@ -349,7 +349,7 @@ key_id := crypto:key_id(), password => crypto:password()}. % exported -type key_pem() :: file:filename(). --type key_password() :: string() | fun(() -> string()). +-type key_password() :: iodata() | fun(() -> iodata()). -type cipher_suites() :: ciphers(). -type ciphers() :: [erl_cipher_suite()] | string(). % (according to old API) exported @@ -2290,7 +2290,7 @@ validate_option(partial_chain, Value, _) when is_function(Value) -> Value; validate_option(password, Value, _) - when is_list(Value) -> + when is_list(Value); is_binary(Value) -> Value; validate_option(password, Value, _) when is_function(Value, 0) -> -- 2.31.1
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor