Skip to content

Commit 5817000

Browse files
committed
#535 Add new txn to remove non-root certificates
Fix linter error Signed-off-by: Abdulbois <abdulbois.tursunov@dsr-corporation.com> Signed-off-by: Abdulbois <abdulbois123@gmail.com>
1 parent 1844e3d commit 5817000

File tree

3 files changed

+24
-2
lines changed

3 files changed

+24
-2
lines changed

integration_tests/cli/pki-remove-x509-certificates.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ response_does_not_contain "$result" "\"serialNumber\": \"$intermediate_cert_1_se
112112
echo "Request all revoked certificates should be empty"
113113
result=$(dcld query pki all-revoked-x509-certs)
114114
echo $result | jq
115-
check_response "$result" "Not Found"
115+
check_response "$result" "\[\]"
116116
response_does_not_contain "$result" "\"subject\": \"$intermediate_cert_subject\""
117117
response_does_not_contain "$result" "\"subjectKeyId\": \"$intermediate_cert_subject_key_id\""
118118
response_does_not_contain "$result" "\"serialNumber\": \"$intermediate_cert_1_serial_number\""

x/pki/handler_test.go

+22
Original file line numberDiff line numberDiff line change
@@ -1723,6 +1723,12 @@ func TestHandler_RemoveX509Cert_BySubjectAndSKID(t *testing.T) {
17231723
require.Equal(t, 2, len(allCerts[0].Certs)+len(allCerts[1].Certs))
17241724
_, err = queryApprovedCertificates(setup, testconstants.IntermediateCertWithSameSubjectAndSKIDSubject, testconstants.IntermediateCertWithSameSubjectAndSKIDSubjectKeyID)
17251725
require.Equal(t, codes.NotFound, status.Code(err))
1726+
// check that unique certificates does not exists
1727+
found := setup.Keeper.IsUniqueCertificatePresent(setup.Ctx, testconstants.RootCertWithSameSubjectAndSKIDSubject, testconstants.IntermediateCertWithSameSubjectAndSKID1SerialNumber)
1728+
require.Equal(t, false, found)
1729+
found = setup.Keeper.IsUniqueCertificatePresent(setup.Ctx, testconstants.RootCertWithSameSubjectAndSKIDSubject, testconstants.IntermediateCertWithSameSubjectAndSKID2SerialNumber)
1730+
require.Equal(t, false, found)
1731+
17261732
leafCerts, _ := queryApprovedCertificates(setup, testconstants.LeafCertWithSameSubjectAndSKIDSubject, testconstants.LeafCertWithSameSubjectAndSKIDSubjectKeyID)
17271733
require.Equal(t, 1, len(leafCerts.Certs))
17281734
require.Equal(t, testconstants.LeafCertWithSameSubjectAndSKIDSerialNumber, leafCerts.Certs[0].SerialNumber)
@@ -1796,6 +1802,12 @@ func TestHandler_RemoveX509Cert_BySerialNumber(t *testing.T) {
17961802
_, err = queryApprovedCertificates(setup, testconstants.IntermediateCertWithSameSubjectAndSKIDSubject, testconstants.IntermediateCertWithSameSubjectAndSKIDSubjectKeyID)
17971803
require.Equal(t, codes.NotFound, status.Code(err))
17981804

1805+
// check that unique certificates does not exists
1806+
found := setup.Keeper.IsUniqueCertificatePresent(setup.Ctx, testconstants.RootCertWithSameSubjectAndSKIDSubject, testconstants.IntermediateCertWithSameSubjectAndSKID1SerialNumber)
1807+
require.Equal(t, false, found)
1808+
found = setup.Keeper.IsUniqueCertificatePresent(setup.Ctx, testconstants.RootCertWithSameSubjectAndSKIDSubject, testconstants.IntermediateCertWithSameSubjectAndSKID2SerialNumber)
1809+
require.Equal(t, false, found)
1810+
17991811
leafCerts, _ = queryApprovedCertificates(setup, testconstants.LeafCertWithSameSubjectAndSKIDSubject, testconstants.LeafCertWithSameSubjectAndSKIDSubjectKeyID)
18001812
require.Equal(t, 1, len(leafCerts.Certs))
18011813
}
@@ -1862,6 +1874,12 @@ func TestHandler_RemoveX509Cert_RevokedAndApprovedCertificate(t *testing.T) {
18621874
require.Equal(t, codes.NotFound, status.Code(err))
18631875
_, err = queryRevokedCertificates(setup, testconstants.IntermediateCertWithSameSubjectAndSKIDSubject, testconstants.IntermediateCertWithSameSubjectAndSKIDSubjectKeyID)
18641876
require.Equal(t, codes.NotFound, status.Code(err))
1877+
1878+
// check that unique certificates does not exists
1879+
found := setup.Keeper.IsUniqueCertificatePresent(setup.Ctx, testconstants.RootCertWithSameSubjectAndSKIDSubject, testconstants.IntermediateCertWithSameSubjectAndSKID1SerialNumber)
1880+
require.Equal(t, false, found)
1881+
found = setup.Keeper.IsUniqueCertificatePresent(setup.Ctx, testconstants.RootCertWithSameSubjectAndSKIDSubject, testconstants.IntermediateCertWithSameSubjectAndSKID2SerialNumber)
1882+
require.Equal(t, false, found)
18651883
}
18661884

18671885
func TestHandler_RemoveX509Cert_RevokedCertificate(t *testing.T) {
@@ -1923,6 +1941,10 @@ func TestHandler_RemoveX509Cert_RevokedCertificate(t *testing.T) {
19231941
require.Equal(t, codes.NotFound, status.Code(err))
19241942
_, err = queryRevokedCertificates(setup, testconstants.IntermediateSubject, testconstants.IntermediateSubjectKeyID)
19251943
require.Equal(t, codes.NotFound, status.Code(err))
1944+
1945+
// check that unique certificate does not exists
1946+
found := setup.Keeper.IsUniqueCertificatePresent(setup.Ctx, testconstants.IntermediateIssuer, testconstants.IntermediateSerialNumber)
1947+
require.Equal(t, false, found)
19261948
}
19271949

19281950
func TestHandler_RemoveX509Cert_CertificateDoesNotExist(t *testing.T) {

x/pki/keeper/msg_server_remove_x_509_cert.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ func (k msgServer) RemoveX509Cert(goCtx context.Context, msg *types.MsgRemoveX50
1414

1515
aprCerts, foundApproved := k.GetApprovedCertificates(ctx, msg.Subject, msg.SubjectKeyId)
1616
revCerts, foundRevoked := k.GetRevokedCertificates(ctx, msg.Subject, msg.SubjectKeyId)
17-
certificates := append(aprCerts.Certs, revCerts.Certs...)
17+
certificates := append(aprCerts.Certs, revCerts.Certs...) //nolint:gocritic
1818
if len(certificates) == 0 {
1919
return nil, pkitypes.NewErrCertificateDoesNotExist(msg.Subject, msg.SubjectKeyId)
2020
}

0 commit comments

Comments
 (0)