add direct test + csr test
This commit is contained in:
parent
f4ec785d3c
commit
f173094df2
|
@ -223,6 +223,25 @@ var NO_NAME_CSR_HEX = "308202523082013a020100300d310b300906035504061302555330820
|
|||
"58c004d9e1e55af59ea517dfbd2bccca58216d8130b9f77c90328b2aa54b" +
|
||||
"1778a629b584f2bc059489a236131de9b444adca90218c31a499a485"
|
||||
|
||||
// CSR generated by Go:
|
||||
// * Random public key
|
||||
// * CN = example.com
|
||||
// * DNSNames = a.example.com, a.example.com
|
||||
var DUPE_NAME_CSR_HEX = "3082018d3081f90201003016311430120603550403130b6578616d706c65" +
|
||||
"2e636f6d30819f300d06092a864886f70d010101050003818d0030818902" +
|
||||
"818100cc4a0cf2cf67811e4457fe1106597013e84be141c583b663f2ef6d" +
|
||||
"a0c9254ca4c37fcd1945fdddc6db66f395c679de33501d333efd60d941d5" +
|
||||
"a32d29a1e5af6da853ba28419b471081a8476d7bdf7159cc09606eec807f" +
|
||||
"da89586ebee0e46a5f53a14c2210a934e92afd314c0bc1b6946afce63a21" +
|
||||
"0b6eac62eca728efbb36c70203010001a03a303806092a864886f70d0109" +
|
||||
"0e312b302930270603551d110420301e820d612e6578616d706c652e636f" +
|
||||
"6d820d612e6578616d706c652e636f6d300b06092a864886f70d01010b03" +
|
||||
"818100604965228739c63f5d94d29295a7c327f70c08f361d4873166f112" +
|
||||
"d420ca424d9a86cfb49483cf54090d1d81e56b1aeea09cafd783e7ef4fb8" +
|
||||
"fdbd43e1918e474abb2ea8962960c5c77ac5be5cbf67e515d8234ca7fe4e" +
|
||||
"5b7c0134e95b77a43a6b5789ff97b3262f949e75690314e417c4c2bd3d1f" +
|
||||
"7bedb21db1dd5dd4f71b82"
|
||||
|
||||
// CFSSL config
|
||||
const hostPort = "localhost:9000"
|
||||
const authKey = "79999d86250c367a2b517a1ae7d409c1"
|
||||
|
@ -435,4 +454,21 @@ func TestIssueCertificate(t *testing.T) {
|
|||
if err == nil {
|
||||
t.Errorf("CA improperly agreed to create a certificate with no name")
|
||||
}
|
||||
|
||||
// Test that the CA rejects CSRs with duplicate names
|
||||
csrDER, _ = hex.DecodeString(DUPE_NAME_CSR_HEX)
|
||||
csr, _ = x509.ParseCertificateRequest(csrDER)
|
||||
_, err = ca.IssueCertificate(*csr)
|
||||
if err == nil {
|
||||
t.Errorf("CA improperly agreed to create a certificate with duplicate names")
|
||||
}
|
||||
}
|
||||
|
||||
func TestDupeNames(t *testing.T) {
|
||||
unique := []string{"a", "b"}
|
||||
notUnique := []string{"a", "a"}
|
||||
|
||||
test.Assert(t, !dupeNames([]string{}), "Empty list can't contain duplicates")
|
||||
test.Assert(t, !dupeNames(unique), "Unique list doesn't have duplicates")
|
||||
test.Assert(t, dupeNames(notUnique), "Non-unique list does have duplicates")
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue