packages feed

x509-ocsp 0.4.0.1 → 0.4.1.0

raw patch · 12 files changed

+105/−100 lines, 12 filesdep +crypton-asn1-encodingdep +crypton-asn1-typesdep +crypton-pemdep −asn1-encodingdep −asn1-typesdep −pemdep ~crypton-x509PVP ok

version bump matches the API change (PVP)

Dependencies added: crypton-asn1-encoding, crypton-asn1-types, crypton-pem

Dependencies removed: asn1-encoding, asn1-types, pem

Dependency ranges changed: crypton-x509

API changes (from Hackage documentation)

Files

Changelog.md view
@@ -1,3 +1,8 @@+### 0.4.1.0++- Migrate from _asn1-\*_, *pem*, *hourglass* to _crypton-asn1-\*_,+  *crypton-pem*, *time-hourglass* respectively.+ ### 0.4.0.1  - Ensure that the list of certificates in the OCSP response comprises the
Data/X509/AIA.hs view
@@ -3,7 +3,7 @@ ----------------------------------------------------------------------------- -- | -- Module      :  Data.X509.AIA--- Copyright   :  (c) Alexey Radkov 2024+-- Copyright   :  (c) Alexey Radkov 2024-2026 -- License     :  BSD-style -- -- Maintainer  :  alexey.radkov@gmail.com
Data/X509/OCSP.hs view
@@ -3,7 +3,7 @@ ----------------------------------------------------------------------------- -- | -- Module      :  Data.X509.OCSP--- Copyright   :  (c) Alexey Radkov 2024+-- Copyright   :  (c) Alexey Radkov 2024-2026 -- License     :  BSD-style -- -- Maintainer  :  alexey.radkov@gmail.com@@ -89,7 +89,7 @@ -- | Build and encode OCSP request in ASN.1 format. -- -- The returned value contains the encoded request and an object of type--- 'CertId' with hashes calculated by the SHA1 algorithm.+-- t'CertId' with hashes calculated by the SHA1 algorithm. encodeOCSPRequestASN1     :: Certificate              -- ^ Certificate     -> Certificate              -- ^ Issuer certificate@@ -122,7 +122,7 @@ -- | Build and encode OCSP request in ASN.1\/DER format. -- -- The returned value contains the encoded request and an object of type--- 'CertId' with hashes calculated by the SHA1 algorithm.+-- t'CertId' with hashes calculated by the SHA1 algorithm. encodeOCSPRequest     :: Certificate              -- ^ Certificate     -> Certificate              -- ^ Issuer certificate@@ -267,7 +267,7 @@ -- -- -- ... ----- verifySignature\' :: 'OCSPResponse' -> 'Certificate' -> t'Data.X509.Validation.SignatureVerification'+-- verifySignature\' :: t'OCSPResponse' -> t'Certificate' -> t'Data.X509.Validation.SignatureVerification' -- verifySignature\' resp v'Certificate' {..} --     | Just __/OCSPResponseVerificationData/__ {..} <- --         'getOCSPResponseVerificationData' resp =
LICENSE view
@@ -1,7 +1,7 @@ The following license covers this documentation, and the source code, except where otherwise indicated. -Copyright 2024, Alexey Radkov. All rights reserved.+Copyright 2024-2026, Alexey Radkov. All rights reserved.  Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
README.md view
@@ -67,7 +67,7 @@  ```ShellSession $ cabal run-client-ocsp: HttpExceptionRequest Request {+Exception: HttpExceptionRequest Request {   host                 = "localhost"   port                 = 8010   secure               = True
test/data/certs/root/rootCA.crt view
@@ -1,24 +1,24 @@ -----BEGIN CERTIFICATE------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 -----END CERTIFICATE-----
test/data/certs/server-chain.crt view
@@ -1,49 +1,49 @@ -----BEGIN CERTIFICATE------MIIESjCCAzKgAwIBAgIBATANBgkqhkiG9w0BAQsFADCBlzELMAkGA1UEBhMCVVMx+MIIETDCCAzSgAwIBAgIBATANBgkqhkiG9w0BAQsFADCBlzELMAkGA1UEBhMCVVMx EzARBgNVBAgMCkNhbGlmb3JuaWExFjAUBgNVBAcMDVNhbiBGcmFuY2lzY28xEzAR BgNVBAoMCk15IENvbXBhbnkxEjAQBgNVBAsMCU9DU1AgVGVzdDEYMBYGA1UEAwwP-TXkgQ29tcGFueSBSb290MRgwFgYKCZImiZPyLGQBAQwIdGVzdE9DU1AwHhcNMjQw-MjI0MTMxNDU0WhcNMjUwMjIzMTMxNDU0WjCBkTELMAkGA1UEBhMCVVMxEzARBgNV-BAgMCkNhbGlmb3JuaWExFjAUBgNVBAcMDVNhbiBGcmFuY2lzY28xEzARBgNVBAoM-Ck15IENvbXBhbnkxEjAQBgNVBAsMCU9DU1AgVGVzdDESMBAGA1UEAwwJbG9jYWxo-b3N0MRgwFgYKCZImiZPyLGQBAQwIdGVzdE9DU1AwggEiMA0GCSqGSIb3DQEBAQUA-A4IBDwAwggEKAoIBAQC44pgrZX5dMEGJkrxOtBme1D+o2MUKaVWaCzPNHvGxUpiI-c0bz4LUFwdIk1sW8La4Xcm3IZYyq1PKDFf1O0P+TyDJq4ez+TK6a8bQFLWU+N0sf-9M8jlApBA6zOPFsrcCpLnrNwxGHCjpfozoDE12OBJRzZ9/9NZtddvJB9jl8Z9pjR-5TSfYghzV/HJacBZf6Xdw93WgRNum5dzOMj0UUYaT3kLjC4h8y578YgrGjaX3j0T-GWOyDAa81hpwhfRYE3mfG6uleLbRY8d7Fe2iKOTBMProMEL6hfiv7o0IPmJ3DdLW-itlFZtgmkQw8/xVgFOiSiX9e3mOddjRS8oG8rLYvAgMBAAGjgaQwgaEwCQYDVR0T-BAIwADALBgNVHQ8EBAMCBeAwMQYIKwYBBQUHAQEEJTAjMCEGCCsGAQUFBzABhhVo-dHRwOi8vbG9jYWxob3N0OjgwODEwHwYDVR0jBBgwFoAUm5g1JWuc0MCI9T292uvK-S9VqniUwFAYDVR0RBA0wC4IJbG9jYWxob3N0MB0GA1UdDgQWBBRc4SU9O5sMqsgR-sO45PvXO3MgSvzANBgkqhkiG9w0BAQsFAAOCAQEAyxWuCxwv4pmURQUn6uf6T6ee-/IflPBdeSCvTRdFVpFBuShDzmTVnaH0R2HGjwLnpZksxzjEAlBr0RaT7tJkAdd5U-oK1ku+lG8BVvcKTW2DKAmiBpQiSAjkp89HwH03016FATIVxz5duHXxmKhwuKCvnB-3iq5rnwvbaiI1KYy+br45iba9+E67anQvOSWoJ66xW6VDIJGag+uhPmngUQu5aa4-SGUer5b5HSDuMAxQsV1+k5Kp/E59oZUKzPaHmQ6A0CWXpmzr2147jRgm2bZtwP18-pY5HsuoudgU/uln8wqSlZvLkVkGFBRE5eHubOXkl2t9/XQpkFQZaOfVQcbKeqw==+TXkgQ29tcGFueSBSb290MRgwFgYKCZImiZPyLGQBAQwIdGVzdE9DU1AwIBcNMjYw+MTEzMTUxMDEyWhgPMjEyNTEyMjAxNTEwMTJaMIGRMQswCQYDVQQGEwJVUzETMBEG+A1UECAwKQ2FsaWZvcm5pYTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzETMBEGA1UE+CgwKTXkgQ29tcGFueTESMBAGA1UECwwJT0NTUCBUZXN0MRIwEAYDVQQDDAlsb2Nh+bGhvc3QxGDAWBgoJkiaJk/IsZAEBDAh0ZXN0T0NTUDCCASIwDQYJKoZIhvcNAQEB+BQADggEPADCCAQoCggEBALc/E9KRj/zm0OHDjP0R1vntXc3Hvbpwneg/+Vk79a20+F+SIfLVGxh3QEguiwmuoipXC9g0TfDABGWLAkPPq7hMA/KCojIsK28Ob60+ZPmzX+UB8Xj6y1DQ4vDtaiK7TcN6zq148mNrjc+G+LFLqUP6X9RYE74nyAb1nw/H56rCYQ+YqhalIZKdQHypvnk6ACtFVpSrXua//3EKnVfVqhUDt7kqxD4/JIv1FDX72/aHnoD+TERnaoYY0Tn5cW0kPSo/dqJmUhx8XOMjOA0JC0MOvXD9pnw4qk4JDrUUeaQMQbVB+sFHoLn8RA6NBuHPFRfumk+RQVO9qGuUC9sUrFto++qMCAwEAAaOBpDCBoTAJBgNV+HRMEAjAAMAsGA1UdDwQEAwIF4DAxBggrBgEFBQcBAQQlMCMwIQYIKwYBBQUHMAGG+FWh0dHA6Ly9sb2NhbGhvc3Q6ODA4MTAfBgNVHSMEGDAWgBRNeB/d2e4XoPnThG36+ZZ7VDUWYCzAUBgNVHREEDTALgglsb2NhbGhvc3QwHQYDVR0OBBYEFBatLrUyyU61+V7vralrZpHzQh9rIMA0GCSqGSIb3DQEBCwUAA4IBAQB0aJz5I8aRNpDhKgAbhL1f+GPqWeid2lmWGUawYKVyd5TD4oKm3otEykoBVMcfKof6UFLBTKWrAZcWImrthbgKU+Fav9RSEe+9cCZCnpqypozNdu4uxGKGEV4XhEYBZpTtLylKpQ94VubPlqsnuVt3ZL+UiuhvGAXQso4xJ51H1IMO6AUNTrQZeCGfLySicZqwTntDToxowy+d8BgTFQTQd+D+gbp+4xRbdLhkQl/IkT7NDHhOlBd8xNOPB+kaUCWRcOKWiuGhMkUinKb01wHlR2Qk+n3u9zYPKV4Lbjso5gTzUfbQ/zy4Fz8WtA9Fgs1i4eaN1nh9R80GNzgwGkfXjuIRw -----END CERTIFICATE----- -----BEGIN CERTIFICATE------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 -----END CERTIFICATE-----
test/data/certs/server/server.crt view
@@ -1,25 +1,25 @@ -----BEGIN CERTIFICATE------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 -----END CERTIFICATE-----
test/data/req.der view

binary file changed (68 → 68 bytes)

test/data/resp.der view

binary file changed (1661 → 1663 bytes)

test/test-ocsp.hs view
@@ -15,12 +15,12 @@ import Data.ASN1.Encoding import Data.ASN1.BinaryEncoding import Data.List (uncons)- + toCertificate :: ByteString -> Certificate toCertificate cert = either error getCertificate $ do     pem <- pemParseBS cert >>= maybe (Left "no pems") (pure . fst) . uncons     decodeSignedObject $ pemContent pem- + testAIA :: Certificate -> Test testAIA cert = TestCase $ extensionGet (certExtensions cert) @?= expected     where expected = Just $@@ -29,21 +29,21 @@                                        , aiaLocation = "http://localhost:8081"                                        }                   ]- + testOCSPRequestASN1 :: Certificate -> Certificate -> [ASN1] -> Test testOCSPRequestASN1 cert issuerCert = TestCase . (buildRequest @?=)     where buildRequest = fst $ encodeOCSPRequestASN1 cert issuerCert- + testOCSPRequest :: Certificate -> Certificate -> ByteString -> Test testOCSPRequest cert issuerCert = TestCase . (buildRequest @?=) . L.fromStrict     where buildRequest = fst $ encodeOCSPRequest cert issuerCert- + testOCSPResponse :: Maybe OCSPResponse -> Test testOCSPResponse resp =     TestCase $ getRespStatus @?= Just OCSPRespCertGood     where getRespStatus = ocspRespCertStatus . ocspRespCertData <$>               (resp >>= ocspRespPayload)- + verifyOCSPResponse :: Certificate -> Maybe OCSPResponse -> Test verifyOCSPResponse issuerCert resp =     TestCase $ getVerificationStatus @?= Just SignaturePass
x509-ocsp.cabal view
@@ -1,7 +1,7 @@ cabal-version:          2.4  name:                   x509-ocsp-version:                0.4.0.1+version:                0.4.1.0 synopsis:               Basic X509 OCSP implementation description:            Build X509 OCSP requests and parse responses homepage:               https://github.com/lyokha/x509-ocsp@@ -12,7 +12,7 @@ author:                 Alexey Radkov <alexey.radkov@gmail.com> maintainer:             Alexey Radkov <alexey.radkov@gmail.com> stability:              experimental-copyright:              2024 Alexey Radkov+copyright:              2024-2026 Alexey Radkov category:               Data build-type:             Simple @@ -25,8 +25,8 @@   build-depends:        base >= 4.8 && < 5                       , bytestring                       , crypton-x509-                      , asn1-encoding-                      , asn1-types+                      , crypton-asn1-encoding+                      , crypton-asn1-types                       , cryptohash-sha1              -- only needed for haddock to hyperlink entities in code examples:@@ -44,9 +44,9 @@                       , bytestring                       , crypton-x509                       , crypton-x509-validation-                      , asn1-encoding-                      , asn1-types-                      , pem+                      , crypton-asn1-encoding+                      , crypton-asn1-types+                      , crypton-pem                       , x509-ocsp    type:                 exitcode-stdio-1.0