File tree 3 files changed +37
-1
lines changed
3 files changed +37
-1
lines changed Original file line number Diff line number Diff line change @@ -98,8 +98,15 @@ register-codec [
98
98
99
99
func [
100
100
data [binary! block! ]
101
- /local version serialNumber issuer subject validity
101
+ /local pkix version serialNumber issuer subject validity
102
102
][
103
+ try [all [
104
+ ; as there seems to be no standard, the *.crt file
105
+ ; may be actually in pkix format, so try it first...
106
+ pkix: codecs/pkix/decode data
107
+ pkix/label = "CERTIFICATE"
108
+ data: pkix/binary
109
+ ]]
103
110
if binary? data [ data: der-codec/decode data ]
104
111
if all [
105
112
2 = length? data
Original file line number Diff line number Diff line change @@ -180,6 +180,12 @@ if find codecs 'crt [
180
180
--assert "Google Internet Authority G3" = try [cert/issuer/commonName ]
181
181
--assert block? try [key: cert/public-key/rsaEncryption ]
182
182
--assert #{ 010001 } = try [key/2 ]
183
+
184
+ --test-- "Load Docker's CRT file"
185
+ --assert object? cert: load %units/files/apiserver.crt
186
+ --assert "kubernetes" = try [cert/issuer/commonName ]
187
+ --assert block? try [key: cert/public-key/rsaEncryption ]
188
+ --assert #{ 010001 } = try [key/2 ]
183
189
===end-group===
184
190
codecs/crt/verbose: 0
185
191
]
Original file line number Diff line number Diff line change
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIDzzCCAregAwIBAgIIRrdJEntqhjYwDQYJKoZIhvcNAQELBQAwFTETMBEGA1UE
3
+ AxMKa3ViZXJuZXRlczAeFw0yMTAxMjEwODU5MTRaFw0yMjAxMjEwODU5MTRaMBkx
4
+ FzAVBgNVBAMTDmt1YmUtYXBpc2VydmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
5
+ MIIBCgKCAQEAsl/YxFG8JcMAamzTvzucpnejXJw/LYLsAj3hCcoJ8Jr++F/d6/za
6
+ 4fBL4cbaNEx4fbaoqNWnZ0211/tsWo2gmL8chtAVGRtkol7gPK9uL+EdluAkFqbK
7
+ 5TyYIDKNtWpOj2DzULWFRVU4WDcmPTm1J49PEJlriWjYJy2nQeGCVdVt6qz0Hbos
8
+ ieCfzsZ5F1IzSnf6VDVp4nhzIVQ2u36CPC1QgunxI45izWEATSeEdDBkT32dA7MP
9
+ BGiJ2lxARg1DS+1CjhoSJcu5Ahp97j9zg85rhLEJNP+7vJvJIR6cGsg/jP9SR3Q5
10
+ hTpqPU0uA9CLoyZk8oWK58+NNmrk8x/ClwIDAQABo4IBHTCCARkwDgYDVR0PAQH/
11
+ BAQDAgWgMBMGA1UdJQQMMAoGCCsGAQUFBwMBMB8GA1UdIwQYMBaAFBOHp2Zb0I+p
12
+ KFF8AXLTEc7Wb5x1MIHQBgNVHREEgcgwgcWCEmRvY2tlci1mb3ItZGVza3RvcIIK
13
+ a3ViZXJuZXRlc4ISa3ViZXJuZXRlcy5kZWZhdWx0ghZrdWJlcm5ldGVzLmRlZmF1
14
+ bHQuc3ZjgiRrdWJlcm5ldGVzLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWyCGmt1
15
+ YmVybmV0ZXMuZG9ja2VyLmludGVybmFsghJ2bS5kb2NrZXIuaW50ZXJuYWyCCWxv
16
+ Y2FsaG9zdIcECmAAAYcEAAAAAIcEwKhBA4cEfwAAATANBgkqhkiG9w0BAQsFAAOC
17
+ AQEAmnfvEfya9O6zJrabXigYilh7bbzEoUWaziqvHYIHJwWT5OtxfiNfDZoRDS18
18
+ 8UZhe4ENiejF+K6eCkdR9FocnGv4p7ntJg99EeZ+mqPHvSsT8Ot5woo66dAzkdXP
19
+ rJntdqUjTKs3xILeMhetScGaBHjkfH0dBUIVppN+a63v03+QIGEsscrQn4tvFjsN
20
+ 4px9bu7Its6H/NtRnJS0Y5QzabNliSUiwwUpYy/b55pMcPcWOOsT34h8L+CT4gBM
21
+ M0PaAOaKpXNbfMXv0oEdsapSwvJKDBpz4NRIRDUQIJ18KD8eOR+q8z/itFzV5yEW
22
+ UFiJwX8MYwKFlFj+B5IW9FPYLQ==
23
+ -----END CERTIFICATE-----
You can’t perform that action at this time.
0 commit comments