diff options
author | Ingela Anderton Andin <[email protected]> | 2010-09-13 08:52:54 +0200 |
---|---|---|
committer | Ingela Anderton Andin <[email protected]> | 2010-09-13 08:52:54 +0200 |
commit | 3f336f1b6f2854618146e882b04e8cbc50d1111e (patch) | |
tree | f275ef9c49054004e3504d7f9548474a78dcefa1 /lib/public_key/src/public_key.erl | |
parent | f86c89a90a228eed9a58632cc0fb3372b210ec1a (diff) | |
parent | 6cced538abd4f8053c009b163efa8c6d568b9580 (diff) | |
download | otp-3f336f1b6f2854618146e882b04e8cbc50d1111e.tar.gz otp-3f336f1b6f2854618146e882b04e8cbc50d1111e.tar.bz2 otp-3f336f1b6f2854618146e882b04e8cbc50d1111e.zip |
Merge branch 'ia/public_key-subject-alternative-name/OTP-8825' into dev
* ia/public_key-subject-alternative-name/OTP-8825:
Improved certificate extension handling
Add handling of SubjectAltName of type otherName
Diffstat (limited to 'lib/public_key/src/public_key.erl')
-rw-r--r-- | lib/public_key/src/public_key.erl | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/public_key/src/public_key.erl b/lib/public_key/src/public_key.erl index 68bf04eeff..9c7817fa8e 100644 --- a/lib/public_key/src/public_key.erl +++ b/lib/public_key/src/public_key.erl @@ -539,6 +539,7 @@ validate(DerCert, #path_validation_state{working_issuer_name = Issuer, user_state = UserState0, verify_fun = VerifyFun} = ValidationState0) -> + OtpCert = pkix_decode_cert(DerCert, otp), UserState1 = pubkey_cert:validate_time(OtpCert, UserState0, VerifyFun), @@ -556,10 +557,12 @@ validate(DerCert, #path_validation_state{working_issuer_name = Issuer, %% We want the key_usage extension to be checked before we validate %% the signature. - UserState = pubkey_cert:validate_signature(OtpCert, DerCert, + UserState0 = pubkey_cert:validate_signature(OtpCert, DerCert, Key, KeyParams, UserState5, VerifyFun), + UserState = pubkey_cert:verify_fun(OtpCert, valid, UserState0, VerifyFun), ValidationState = ValidationState1#path_validation_state{user_state = UserState}, + pubkey_cert:prepare_for_next_cert(OtpCert, ValidationState). sized_binary(Binary) when is_binary(Binary) -> |