Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Meier <r.meier@siemens.com>2019-12-02 22:28:40 +0300
committerJohn Cai <jcai@gitlab.com>2019-12-02 22:28:40 +0300
commitb3dbb922d2827d067d8e7c0f4e4e3cbf4f4d0a90 (patch)
tree2a1b632a6ab31d3487625bec804069369fbfaac7
parent712a6072e8b95f989f54ecfb37cd721f96711d12 (diff)
feat: add signature type to GitCommit
-rw-r--r--_support/gitlab-test.git-packed-refs3
-rw-r--r--internal/git/log/commit.go15
-rw-r--r--internal/git/log/tag.go8
-rw-r--r--internal/service/commit/commits_by_message_test.go5
-rw-r--r--internal/service/commit/find_commit_test.go5
-rw-r--r--internal/service/commit/find_commits_test.go33
-rw-r--r--internal/service/commit/last_commit_for_path_test.go5
-rw-r--r--internal/service/ref/refs_test.go88
-rw-r--r--internal/service/ref/testhelper_test.go1
-rw-r--r--proto/go/gitalypb/shared.pb.go179
-rw-r--r--proto/shared.proto9
-rw-r--r--ruby/proto/gitaly/shared_pb.rb8
12 files changed, 276 insertions, 83 deletions
diff --git a/_support/gitlab-test.git-packed-refs b/_support/gitlab-test.git-packed-refs
index daf53eba6..940754fe4 100644
--- a/_support/gitlab-test.git-packed-refs
+++ b/_support/gitlab-test.git-packed-refs
@@ -69,6 +69,7 @@ fe42f41cdc7ca97ae200fb50a268431add95901a refs/heads/png-lfs
c84ff944ff4529a70788a5e9003c2b7feae29047 refs/heads/rd-add-file-larger-than-1-mb
ca47bfd5e930148c42ed74c3b561a8783e381f7f refs/heads/rebase-encoding-failure-trigger
6101e87e575de14b38b4e1ce180519a813671e10 refs/heads/signed-commits
+ed775cc81e5477df30c2abba7b6fdbb5d0baadae refs/heads/smime-signed-commits
ba3343bc4fa403a8dfbfcab7fc1a8c29ee34bd69 refs/heads/spooky-stuff
35236eac0ce603467ba37d2f99cb591df4cb8f63 refs/heads/squash-encoding-error-trigger
54cec5282aa9f21856362fe321c800c236a61615 refs/heads/squash-large-files
@@ -93,3 +94,5 @@ f4e6814c3e4e7a0de82a9e7cd20c626cc963a2f8 refs/tags/v1.0.0
^6f6d7e7ed97bb5f0054f2b1df789b39ca89b6ff9
8a2a6eb295bb170b34c24c76c49ed0e9b2eaf34b refs/tags/v1.1.0
^5937ac0a7beb003549fc5fd26fc247adbce4a52e
+8f03acbcd11c53d9c9468078f32a2622005a4841 refs/tags/v1.1.1
+^189a6c924013fc3fe40d6f1ec1dc20214183bc97
diff --git a/internal/git/log/commit.go b/internal/git/log/commit.go
index 3fd7a4cfd..421bfd59c 100644
--- a/internal/git/log/commit.go
+++ b/internal/git/log/commit.go
@@ -117,6 +117,8 @@ func buildCommit(header, body []byte, info *catfile.ObjectInfo) (*gitalypb.GitCo
commit.Author = parseCommitAuthor(headerSplit[1])
case "committer":
commit.Committer = parseCommitAuthor(headerSplit[1])
+ case "gpgsig":
+ commit.SignatureType = detectSignatureType(headerSplit[1])
}
}
if err := scanner.Err(); err != nil {
@@ -168,3 +170,16 @@ func parseCommitAuthor(line string) *gitalypb.CommitAuthor {
func subjectFromBody(body []byte) []byte {
return bytes.TrimRight(bytes.SplitN(body, []byte("\n"), 2)[0], "\r\n")
}
+
+func detectSignatureType(line string) gitalypb.SignatureType {
+ switch strings.TrimSuffix(line, "\n") {
+ case "-----BEGIN SIGNED MESSAGE-----":
+ return gitalypb.SignatureType_X509
+ case "-----BEGIN PGP MESSAGE-----":
+ return gitalypb.SignatureType_PGP
+ case "-----BEGIN PGP SIGNATURE-----":
+ return gitalypb.SignatureType_PGP
+ default:
+ return gitalypb.SignatureType_NONE
+ }
+}
diff --git a/internal/git/log/tag.go b/internal/git/log/tag.go
index 9750aca57..6e78cb0db 100644
--- a/internal/git/log/tag.go
+++ b/internal/git/log/tag.go
@@ -119,6 +119,14 @@ func buildAnnotatedTag(b *catfile.Batch, tagID, name string, header *tagHeader,
}
}
+ // tags contain the signature block in the message:
+ // https://github.com/git/git/blob/master/Documentation/technical/signature-format.txt#L12
+ index := bytes.Index([]byte(tag.Message), []byte("-----BEGIN"))
+ if index > 0 {
+ signature := string(tag.Message[index : bytes.Index(tag.Message[index:], []byte("\n"))+index])
+ tag.SignatureType = detectSignatureType(signature)
+ }
+
tag.Tagger = parseCommitAuthor(header.tagger)
return tag, nil
diff --git a/internal/service/commit/commits_by_message_test.go b/internal/service/commit/commits_by_message_test.go
index fd6f43ef7..ad08176ad 100644
--- a/internal/service/commit/commits_by_message_test.go
+++ b/internal/service/commit/commits_by_message_test.go
@@ -97,8 +97,9 @@ func TestSuccessfulCommitsByMessageRequest(t *testing.T) {
Date: &timestamp.Timestamp{Seconds: 1393488896},
Timezone: []byte("+0200"),
},
- ParentIds: []string{"cfe32cf61b73a0d5e9f13e774abde7ff789b1660"},
- BodySize: 98,
+ ParentIds: []string{"cfe32cf61b73a0d5e9f13e774abde7ff789b1660"},
+ BodySize: 98,
+ SignatureType: gitalypb.SignatureType_PGP,
},
},
},
diff --git a/internal/service/commit/find_commit_test.go b/internal/service/commit/find_commit_test.go
index 97bdfdbff..96367f559 100644
--- a/internal/service/commit/find_commit_test.go
+++ b/internal/service/commit/find_commit_test.go
@@ -91,8 +91,9 @@ func TestSuccessfulFindCommitRequest(t *testing.T) {
Date: &timestamp.Timestamp{Seconds: 1393491261},
Timezone: []byte("+0200"),
},
- ParentIds: []string{"d14d6c0abdd253381df51a723d58691b2ee1ab08"},
- BodySize: 84,
+ ParentIds: []string{"d14d6c0abdd253381df51a723d58691b2ee1ab08"},
+ BodySize: 84,
+ SignatureType: gitalypb.SignatureType_PGP,
},
},
{
diff --git a/internal/service/commit/find_commits_test.go b/internal/service/commit/find_commits_test.go
index 3dff50d09..615e93394 100644
--- a/internal/service/commit/find_commits_test.go
+++ b/internal/service/commit/find_commits_test.go
@@ -98,8 +98,9 @@ func TestFindCommitsFields(t *testing.T) {
Date: &timestamp.Timestamp{Seconds: 1517328273},
Timezone: []byte("+0100"),
},
- ParentIds: []string{"60ecb67744cb56576c30214ff52294f8ce2def98"},
- BodySize: 12,
+ ParentIds: []string{"60ecb67744cb56576c30214ff52294f8ce2def98"},
+ BodySize: 12,
+ SignatureType: gitalypb.SignatureType_NONE,
},
},
{
@@ -120,8 +121,32 @@ func TestFindCommitsFields(t *testing.T) {
Date: &timestamp.Timestamp{Seconds: 1527855450},
Timezone: []byte("+0200"),
},
- ParentIds: []string{"60ecb67744cb56576c30214ff52294f8ce2def98"},
- BodySize: 100,
+ ParentIds: []string{"60ecb67744cb56576c30214ff52294f8ce2def98"},
+ BodySize: 100,
+ SignatureType: gitalypb.SignatureType_NONE,
+ },
+ },
+ {
+ id: "189a6c924013fc3fe40d6f1ec1dc20214183bc97",
+ commit: &gitalypb.GitCommit{
+ Id: "189a6c924013fc3fe40d6f1ec1dc20214183bc97",
+ Subject: []byte("style: use markdown header within README.md"),
+ Body: []byte("style: use markdown header within README.md\n"),
+ Author: &gitalypb.CommitAuthor{
+ Name: []byte("Roger Meier"),
+ Email: []byte("r.meier@siemens.com"),
+ Date: &timestamp.Timestamp{Seconds: 1570810009},
+ Timezone: []byte("+0200"),
+ },
+ Committer: &gitalypb.CommitAuthor{
+ Name: []byte("Roger Meier"),
+ Email: []byte("r.meier@siemens.com"),
+ Date: &timestamp.Timestamp{Seconds: 1570810009},
+ Timezone: []byte("+0200"),
+ },
+ ParentIds: []string{"0ad583fecb2fb1eaaadaf77d5a33bc69ec1061c1"},
+ BodySize: 44,
+ SignatureType: gitalypb.SignatureType_X509,
},
},
}
diff --git a/internal/service/commit/last_commit_for_path_test.go b/internal/service/commit/last_commit_for_path_test.go
index d027c6df2..484d0ed9e 100644
--- a/internal/service/commit/last_commit_for_path_test.go
+++ b/internal/service/commit/last_commit_for_path_test.go
@@ -37,8 +37,9 @@ func TestSuccessfulLastCommitForPathRequest(t *testing.T) {
Date: &timestamp.Timestamp{Seconds: 1393491451},
Timezone: []byte("+0200"),
},
- ParentIds: []string{"6f6d7e7ed97bb5f0054f2b1df789b39ca89b6ff9"},
- BodySize: 86,
+ ParentIds: []string{"6f6d7e7ed97bb5f0054f2b1df789b39ca89b6ff9"},
+ BodySize: 86,
+ SignatureType: gitalypb.SignatureType_PGP,
}
testCases := []struct {
diff --git a/internal/service/ref/refs_test.go b/internal/service/ref/refs_test.go
index a43b3161f..247825ba1 100644
--- a/internal/service/ref/refs_test.go
+++ b/internal/service/ref/refs_test.go
@@ -458,8 +458,9 @@ func TestSuccessfulFindAllTagsRequest(t *testing.T) {
Date: &timestamp.Timestamp{Seconds: 1393491261},
Timezone: []byte("+0200"),
},
- ParentIds: []string{"d14d6c0abdd253381df51a723d58691b2ee1ab08"},
- BodySize: 84,
+ ParentIds: []string{"d14d6c0abdd253381df51a723d58691b2ee1ab08"},
+ BodySize: 84,
+ SignatureType: gitalypb.SignatureType_PGP,
}
ctx, cancel := testhelper.Context()
@@ -570,8 +571,9 @@ func TestSuccessfulFindAllTagsRequest(t *testing.T) {
Date: &timestamp.Timestamp{Seconds: 1393491698},
Timezone: []byte("+0200"),
},
- ParentIds: []string{"570e7b2abdd848b95f2f578043fc23bd6f6fd24d"},
- BodySize: 98,
+ ParentIds: []string{"570e7b2abdd848b95f2f578043fc23bd6f6fd24d"},
+ BodySize: 98,
+ SignatureType: gitalypb.SignatureType_PGP,
},
Message: []byte("Version 1.1.0"),
MessageSize: 13,
@@ -583,6 +585,39 @@ func TestSuccessfulFindAllTagsRequest(t *testing.T) {
},
},
{
+ Name: []byte("v1.1.1"),
+ Id: "8f03acbcd11c53d9c9468078f32a2622005a4841",
+ TargetCommit: &gitalypb.GitCommit{
+ Id: "189a6c924013fc3fe40d6f1ec1dc20214183bc97",
+ Subject: []byte("style: use markdown header within README.md"),
+ Body: []byte("style: use markdown header within README.md\n"),
+ Author: &gitalypb.CommitAuthor{
+ Name: []byte("Roger Meier"),
+ Email: []byte("r.meier@siemens.com"),
+ Date: &timestamp.Timestamp{Seconds: 1570810009},
+ Timezone: []byte("+0200"),
+ },
+ Committer: &gitalypb.CommitAuthor{
+ Name: []byte("Roger Meier"),
+ Email: []byte("r.meier@siemens.com"),
+ Date: &timestamp.Timestamp{Seconds: 1570810009},
+ Timezone: []byte("+0200"),
+ },
+ ParentIds: []string{"0ad583fecb2fb1eaaadaf77d5a33bc69ec1061c1"},
+ BodySize: 44,
+ SignatureType: gitalypb.SignatureType_X509,
+ },
+ Message: []byte("x509 signed tag\n-----BEGIN SIGNED MESSAGE-----\nMIISfwYJKoZIhvcNAQcCoIIScDCCEmwCAQExDTALBglghkgBZQMEAgEwCwYJKoZI\nhvcNAQcBoIIP8zCCB3QwggVcoAMCAQICBBXXLOIwDQYJKoZIhvcNAQELBQAwgbYx\nCzAJBgNVBAYTAkRFMQ8wDQYDVQQIDAZCYXllcm4xETAPBgNVBAcMCE11ZW5jaGVu\nMRAwDgYDVQQKDAdTaWVtZW5zMREwDwYDVQQFEwhaWlpaWlpBNjEdMBsGA1UECwwU\nU2llbWVucyBUcnVzdCBDZW50ZXIxPzA9BgNVBAMMNlNpZW1lbnMgSXNzdWluZyBD\nQSBNZWRpdW0gU3RyZW5ndGggQXV0aGVudGljYXRpb24gMjAxNjAeFw0xNzAyMDMw\nNjU4MzNaFw0yMDAyMDMwNjU4MzNaMFsxETAPBgNVBAUTCFowMDBOV0RIMQ4wDAYD\nVQQqDAVSb2dlcjEOMAwGA1UEBAwFTWVpZXIxEDAOBgNVBAoMB1NpZW1lbnMxFDAS\nBgNVBAMMC01laWVyIFJvZ2VyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC\nAQEAuBNea/68ZCnHYQjpm/k3ZBG0wBpEKSwG6lk9CEQlSxsqVLQHAoAKBIlJm1in\nYVLcK/Sq1yhYJ/qWcY/M53DhK2rpPuhtrWJUdOUy8EBWO20F4bd4Fw9pO7jt8bme\nu33TSrK772vKjuppzB6SeG13Cs08H+BIeD106G27h7ufsO00pvsxoSDL+uc4slnr\npBL+2TAL7nSFnB9QHWmRIK27SPqJE+lESdb0pse11x1wjvqKy2Q7EjL9fpqJdHzX\nNLKHXd2r024TOORTa05DFTNR+kQEKKV96XfpYdtSBomXNQ44cisiPBJjFtYvfnFE\nwgrHa8fogn/b0C+A+HAoICN12wIDAQABo4IC4jCCAt4wHQYDVR0OBBYEFCF+gkUp\nXQ6xGc0kRWXuDFxzA14zMEMGA1UdEQQ8MDqgIwYKKwYBBAGCNxQCA6AVDBNyLm1l\naWVyQHNpZW1lbnMuY29tgRNyLm1laWVyQHNpZW1lbnMuY29tMA4GA1UdDwEB/wQE\nAwIHgDAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwQwgcoGA1UdHwSBwjCB\nvzCBvKCBuaCBtoYmaHR0cDovL2NoLnNpZW1lbnMuY29tL3BraT9aWlpaWlpBNi5j\ncmyGQWxkYXA6Ly9jbC5zaWVtZW5zLm5ldC9DTj1aWlpaWlpBNixMPVBLST9jZXJ0\naWZpY2F0ZVJldm9jYXRpb25MaXN0hklsZGFwOi8vY2wuc2llbWVucy5jb20vQ049\nWlpaWlpaQTYsbz1UcnVzdGNlbnRlcj9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0\nMEUGA1UdIAQ+MDwwOgYNKwYBBAGhaQcCAgMBAzApMCcGCCsGAQUFBwIBFhtodHRw\nOi8vd3d3LnNpZW1lbnMuY29tL3BraS8wDAYDVR0TAQH/BAIwADAfBgNVHSMEGDAW\ngBT4FV1HDGx3e3LEAheRaKK292oJRDCCAQQGCCsGAQUFBwEBBIH3MIH0MDIGCCsG\nAQUFBzAChiZodHRwOi8vYWguc2llbWVucy5jb20vcGtpP1paWlpaWkE2LmNydDBB\nBggrBgEFBQcwAoY1bGRhcDovL2FsLnNpZW1lbnMubmV0L0NOPVpaWlpaWkE2LEw9\nUEtJP2NBQ2VydGlmaWNhdGUwSQYIKwYBBQUHMAKGPWxkYXA6Ly9hbC5zaWVtZW5z\nLmNvbS9DTj1aWlpaWlpBNixvPVRydXN0Y2VudGVyP2NBQ2VydGlmaWNhdGUwMAYI\nKwYBBQUHMAGGJGh0dHA6Ly9vY3NwLnBraS1zZXJ2aWNlcy5zaWVtZW5zLmNvbTAN\nBgkqhkiG9w0BAQsFAAOCAgEAXPVcX6vaEcszJqg5IemF9aFTlwTrX5ITNIpzcqG+\nkD5haOf2mZYLjl+MKtLC1XfmIsGCUZNb8bjP6QHQEI+2d6x/ZOqPq7Kd7PwVu6x6\nxZrkDjUyhUbUntT5+RBy++l3Wf6Cq6Kx+K8ambHBP/bu90/p2U8KfFAG3Kr2gI2q\nfZrnNMOxmJfZ3/sXxssgLkhbZ7hRa+MpLfQ6uFsSiat3vlawBBvTyHnoZ/7oRc8y\nqi6QzWcd76CPpMElYWibl+hJzKbBZUWvc71AzHR6i1QeZ6wubYz7vr+FF5Y7tnxB\nVz6omPC9XAg0F+Dla6Zlz3Awj5imCzVXa+9SjtnsidmJdLcKzTAKyDewewoxYOOJ\nj3cJU7VSjJPl+2fVmDBaQwcNcUcu/TPAKApkegqO7tRF9IPhjhW8QkRnkqMetO3D\nOXmAFVIsEI0Hvb2cdb7B6jSpjGUuhaFm9TCKhQtCk2p8JCDTuaENLm1x34rrJKbT\n2vzyYN0CZtSkUdgD4yQxK9VWXGEzexRisWb4AnZjD2NAquLPpXmw8N0UwFD7MSpC\ndpaX7FktdvZmMXsnGiAdtLSbBgLVWOD1gmJFDjrhNbI8NOaOaNk4jrfGqNh5lhGU\n4DnBT2U6Cie1anLmFH/oZooAEXR2o3Nu+1mNDJChnJp0ovs08aa3zZvBdcloOvfU\nqdowggh3MIIGX6ADAgECAgQtyi/nMA0GCSqGSIb3DQEBCwUAMIGZMQswCQYDVQQG\nEwJERTEPMA0GA1UECAwGQmF5ZXJuMREwDwYDVQQHDAhNdWVuY2hlbjEQMA4GA1UE\nCgwHU2llbWVuczERMA8GA1UEBRMIWlpaWlpaQTExHTAbBgNVBAsMFFNpZW1lbnMg\nVHJ1c3QgQ2VudGVyMSIwIAYDVQQDDBlTaWVtZW5zIFJvb3QgQ0EgVjMuMCAyMDE2\nMB4XDTE2MDcyMDEzNDYxMFoXDTIyMDcyMDEzNDYxMFowgbYxCzAJBgNVBAYTAkRF\nMQ8wDQYDVQQIDAZCYXllcm4xETAPBgNVBAcMCE11ZW5jaGVuMRAwDgYDVQQKDAdT\naWVtZW5zMREwDwYDVQQFEwhaWlpaWlpBNjEdMBsGA1UECwwUU2llbWVucyBUcnVz\ndCBDZW50ZXIxPzA9BgNVBAMMNlNpZW1lbnMgSXNzdWluZyBDQSBNZWRpdW0gU3Ry\nZW5ndGggQXV0aGVudGljYXRpb24gMjAxNjCCAiIwDQYJKoZIhvcNAQEBBQADggIP\nADCCAgoCggIBAL9UfK+JAZEqVMVvECdYF9IK4KSw34AqyNl3rYP5x03dtmKaNu+2\n0fQqNESA1NGzw3s6LmrKLh1cR991nB2cvKOXu7AvEGpSuxzIcOROd4NpvRx+Ej1p\nJIPeqf+ScmVK7lMSO8QL/QzjHOpGV3is9sG+ZIxOW9U1ESooy4Hal6ZNs4DNItsz\npiCKqm6G3et4r2WqCy2RRuSqvnmMza7Y8BZsLy0ZVo5teObQ37E/FxqSrbDI8nxn\nB7nVUve5ZjrqoIGSkEOtyo11003dVO1vmWB9A0WQGDqE/q3w178hGhKfxzRaqzyi\nSoADUYS2sD/CglGTUxVq6u0pGLLsCFjItcCWqW+T9fPYfJ2CEd5b3hvqdCn+pXjZ\n/gdX1XAcdUF5lRnGWifaYpT9n4s4adzX8q6oHSJxTppuAwLRKH6eXALbGQ1I9lGQ\nDSOipD/09xkEsPw6HOepmf2U3YxZK1VU2sHqugFJboeLcHMzp6E1n2ctlNG1GKE9\nFDHmdyFzDi0Nnxtf/GgVjnHF68hByEE1MYdJ4nJLuxoT9hyjYdRW9MpeNNxxZnmz\nW3zh7QxIqP0ZfIz6XVhzrI9uZiqwwojDiM5tEOUkQ7XyW6grNXe75yt6mTj89LlB\nH5fOW2RNmCy/jzBXDjgyskgK7kuCvUYTuRv8ITXbBY5axFA+CpxZqokpAgMBAAGj\nggKmMIICojCCAQUGCCsGAQUFBwEBBIH4MIH1MEEGCCsGAQUFBzAChjVsZGFwOi8v\nYWwuc2llbWVucy5uZXQvQ049WlpaWlpaQTEsTD1QS0k/Y0FDZXJ0aWZpY2F0ZTAy\nBggrBgEFBQcwAoYmaHR0cDovL2FoLnNpZW1lbnMuY29tL3BraT9aWlpaWlpBMS5j\ncnQwSgYIKwYBBQUHMAKGPmxkYXA6Ly9hbC5zaWVtZW5zLmNvbS91aWQ9WlpaWlpa\nQTEsbz1UcnVzdGNlbnRlcj9jQUNlcnRpZmljYXRlMDAGCCsGAQUFBzABhiRodHRw\nOi8vb2NzcC5wa2ktc2VydmljZXMuc2llbWVucy5jb20wHwYDVR0jBBgwFoAUcG2g\nUOyp0CxnnRkV/v0EczXD4tQwEgYDVR0TAQH/BAgwBgEB/wIBADBABgNVHSAEOTA3\nMDUGCCsGAQQBoWkHMCkwJwYIKwYBBQUHAgEWG2h0dHA6Ly93d3cuc2llbWVucy5j\nb20vcGtpLzCBxwYDVR0fBIG/MIG8MIG5oIG2oIGzhj9sZGFwOi8vY2wuc2llbWVu\ncy5uZXQvQ049WlpaWlpaQTEsTD1QS0k/YXV0aG9yaXR5UmV2b2NhdGlvbkxpc3SG\nJmh0dHA6Ly9jaC5zaWVtZW5zLmNvbS9wa2k/WlpaWlpaQTEuY3JshkhsZGFwOi8v\nY2wuc2llbWVucy5jb20vdWlkPVpaWlpaWkExLG89VHJ1c3RjZW50ZXI/YXV0aG9y\naXR5UmV2b2NhdGlvbkxpc3QwJwYDVR0lBCAwHgYIKwYBBQUHAwIGCCsGAQUFBwME\nBggrBgEFBQcDCTAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFPgVXUcMbHd7csQC\nF5Foorb3aglEMA0GCSqGSIb3DQEBCwUAA4ICAQBw+sqMp3SS7DVKcILEmXbdRAg3\nlLO1r457KY+YgCT9uX4VG5EdRKcGfWXK6VHGCi4Dos5eXFV34Mq/p8nu1sqMuoGP\nYjHn604eWDprhGy6GrTYdxzcE/GGHkpkuE3Ir/45UcmZlOU41SJ9SNjuIVrSHMOf\nccSY42BCspR/Q1Z/ykmIqQecdT3/Kkx02GzzSN2+HlW6cEO4GBW5RMqsvd2n0h2d\nfe2zcqOgkLtx7u2JCR/U77zfyxG3qXtcymoz0wgSHcsKIl+GUjITLkHfS9Op8V7C\nGr/dX437sIg5pVHmEAWadjkIzqdHux+EF94Z6kaHywohc1xG0KvPYPX7iSNjkvhz\n4NY53DHmxl4YEMLffZnaS/dqyhe1GTpcpyN8WiR4KuPfxrkVDOsuzWFtMSvNdlOV\ngdI0MXcLMP+EOeANZWX6lGgJ3vWyemo58nzgshKd24MY3w3i6masUkxJH2KvI7UH\n/1Db3SC8oOUjInvSRej6M3ZhYWgugm6gbpUgFoDw/o9Cg6Qm71hY0JtcaPC13rzm\nN8a2Br0+Fa5e2VhwLmAxyfe1JKzqPwuHT0S5u05SQghL5VdzqfA8FCL/j4XC9yI6\ncsZTAQi73xFQYVjZt3+aoSz84lOlTmVo/jgvGMY/JzH9I4mETGgAJRNj34Z/0meh\nM+pKWCojNH/dgyJSwDGCAlIwggJOAgEBMIG/MIG2MQswCQYDVQQGEwJERTEPMA0G\nA1UECAwGQmF5ZXJuMREwDwYDVQQHDAhNdWVuY2hlbjEQMA4GA1UECgwHU2llbWVu\nczERMA8GA1UEBRMIWlpaWlpaQTYxHTAbBgNVBAsMFFNpZW1lbnMgVHJ1c3QgQ2Vu\ndGVyMT8wPQYDVQQDDDZTaWVtZW5zIElzc3VpbmcgQ0EgTWVkaXVtIFN0cmVuZ3Ro\nIEF1dGhlbnRpY2F0aW9uIDIwMTYCBBXXLOIwCwYJYIZIAWUDBAIBoGkwHAYJKoZI\nhvcNAQkFMQ8XDTE5MTEyMDE0NTYyMFowLwYJKoZIhvcNAQkEMSIEIJDnZUpcVLzC\nOdtpkH8gtxwLPIDE0NmAmFC9uM8q2z+OMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0B\nBwEwCwYJKoZIhvcNAQEBBIIBAH/Pqv2xp3a0jSPkwU1K3eGA/1lfoNJMUny4d/PS\nLVWlkgrmedXdLmuBzAGEaaZOJS0lEpNd01pR/reHs7xxZ+RZ0olTs2ufM0CijQSx\nOL9HDl2O3OoD77NWx4tl3Wy1yJCeV3XH/cEI7AkKHCmKY9QMoMYWh16ORBtr+YcS\nYK+gONOjpjgcgTJgZ3HSFgQ50xiD4WT1kFBHsuYsLqaOSbTfTN6Ayyg4edjrPQqa\nVcVf1OQcIrfWA3yMQrnEZfOYfN/D4EPjTfxBV+VCi/F2bdZmMbJ7jNk1FbewSwWO\nSDH1i0K32NyFbnh0BSos7njq7ELqKlYBsoB/sZfaH2vKy5U=\n-----END SIGNED MESSAGE-----"),
+ MessageSize: 6494,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Roger Meier"),
+ Email: []byte("r.meier@siemens.com"),
+ Date: &timestamp.Timestamp{Seconds: 1574261780},
+ Timezone: []byte("+0100"),
+ },
+ SignatureType: gitalypb.SignatureType_X509,
+ },
+ {
Name: []byte("v1.2.0"),
Id: string(annotatedTagID),
Message: []byte("Blob tag"),
@@ -970,6 +1005,7 @@ func TestSuccessfulFindAllBranchesRequest(t *testing.T) {
Date: &timestamp.Timestamp{Seconds: 1393488896},
Timezone: []byte("+0200"),
},
+ SignatureType: gitalypb.SignatureType_PGP,
},
}
@@ -1352,8 +1388,9 @@ func TestSuccessfulFindTagRequest(t *testing.T) {
Date: &timestamp.Timestamp{Seconds: 1393491261},
Timezone: []byte("+0200"),
},
- ParentIds: []string{"d14d6c0abdd253381df51a723d58691b2ee1ab08"},
- BodySize: 84,
+ ParentIds: []string{"d14d6c0abdd253381df51a723d58691b2ee1ab08"},
+ BodySize: 84,
+ SignatureType: gitalypb.SignatureType_PGP,
}
ctx, cancel := testhelper.Context()
@@ -1429,6 +1466,7 @@ func TestSuccessfulFindTagRequest(t *testing.T) {
Date: &timestamp.Timestamp{Seconds: 1393491299},
Timezone: []byte("+0200"),
},
+ SignatureType: gitalypb.SignatureType_NONE,
},
{
Name: []byte("v1.1.0"),
@@ -1449,8 +1487,9 @@ func TestSuccessfulFindTagRequest(t *testing.T) {
Date: &timestamp.Timestamp{Seconds: 1393491698},
Timezone: []byte("+0200"),
},
- ParentIds: []string{"570e7b2abdd848b95f2f578043fc23bd6f6fd24d"},
- BodySize: 98,
+ ParentIds: []string{"570e7b2abdd848b95f2f578043fc23bd6f6fd24d"},
+ BodySize: 98,
+ SignatureType: gitalypb.SignatureType_PGP,
},
Message: []byte("Version 1.1.0"),
MessageSize: 13,
@@ -1462,6 +1501,39 @@ func TestSuccessfulFindTagRequest(t *testing.T) {
},
},
{
+ Name: []byte("v1.1.1"),
+ Id: "8f03acbcd11c53d9c9468078f32a2622005a4841",
+ TargetCommit: &gitalypb.GitCommit{
+ Id: "189a6c924013fc3fe40d6f1ec1dc20214183bc97",
+ Subject: []byte("style: use markdown header within README.md"),
+ Body: []byte("style: use markdown header within README.md\n"),
+ Author: &gitalypb.CommitAuthor{
+ Name: []byte("Roger Meier"),
+ Email: []byte("r.meier@siemens.com"),
+ Date: &timestamp.Timestamp{Seconds: 1570810009},
+ Timezone: []byte("+0200"),
+ },
+ Committer: &gitalypb.CommitAuthor{
+ Name: []byte("Roger Meier"),
+ Email: []byte("r.meier@siemens.com"),
+ Date: &timestamp.Timestamp{Seconds: 1570810009},
+ Timezone: []byte("+0200"),
+ },
+ ParentIds: []string{"0ad583fecb2fb1eaaadaf77d5a33bc69ec1061c1"},
+ BodySize: 44,
+ SignatureType: gitalypb.SignatureType_X509,
+ },
+ Message: []byte("x509 signed tag\n-----BEGIN SIGNED MESSAGE-----\nMIISfwYJKoZIhvcNAQcCoIIScDCCEmwCAQExDTALBglghkgBZQMEAgEwCwYJKoZI\nhvcNAQcBoIIP8zCCB3QwggVcoAMCAQICBBXXLOIwDQYJKoZIhvcNAQELBQAwgbYx\nCzAJBgNVBAYTAkRFMQ8wDQYDVQQIDAZCYXllcm4xETAPBgNVBAcMCE11ZW5jaGVu\nMRAwDgYDVQQKDAdTaWVtZW5zMREwDwYDVQQFEwhaWlpaWlpBNjEdMBsGA1UECwwU\nU2llbWVucyBUcnVzdCBDZW50ZXIxPzA9BgNVBAMMNlNpZW1lbnMgSXNzdWluZyBD\nQSBNZWRpdW0gU3RyZW5ndGggQXV0aGVudGljYXRpb24gMjAxNjAeFw0xNzAyMDMw\nNjU4MzNaFw0yMDAyMDMwNjU4MzNaMFsxETAPBgNVBAUTCFowMDBOV0RIMQ4wDAYD\nVQQqDAVSb2dlcjEOMAwGA1UEBAwFTWVpZXIxEDAOBgNVBAoMB1NpZW1lbnMxFDAS\nBgNVBAMMC01laWVyIFJvZ2VyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC\nAQEAuBNea/68ZCnHYQjpm/k3ZBG0wBpEKSwG6lk9CEQlSxsqVLQHAoAKBIlJm1in\nYVLcK/Sq1yhYJ/qWcY/M53DhK2rpPuhtrWJUdOUy8EBWO20F4bd4Fw9pO7jt8bme\nu33TSrK772vKjuppzB6SeG13Cs08H+BIeD106G27h7ufsO00pvsxoSDL+uc4slnr\npBL+2TAL7nSFnB9QHWmRIK27SPqJE+lESdb0pse11x1wjvqKy2Q7EjL9fpqJdHzX\nNLKHXd2r024TOORTa05DFTNR+kQEKKV96XfpYdtSBomXNQ44cisiPBJjFtYvfnFE\nwgrHa8fogn/b0C+A+HAoICN12wIDAQABo4IC4jCCAt4wHQYDVR0OBBYEFCF+gkUp\nXQ6xGc0kRWXuDFxzA14zMEMGA1UdEQQ8MDqgIwYKKwYBBAGCNxQCA6AVDBNyLm1l\naWVyQHNpZW1lbnMuY29tgRNyLm1laWVyQHNpZW1lbnMuY29tMA4GA1UdDwEB/wQE\nAwIHgDAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwQwgcoGA1UdHwSBwjCB\nvzCBvKCBuaCBtoYmaHR0cDovL2NoLnNpZW1lbnMuY29tL3BraT9aWlpaWlpBNi5j\ncmyGQWxkYXA6Ly9jbC5zaWVtZW5zLm5ldC9DTj1aWlpaWlpBNixMPVBLST9jZXJ0\naWZpY2F0ZVJldm9jYXRpb25MaXN0hklsZGFwOi8vY2wuc2llbWVucy5jb20vQ049\nWlpaWlpaQTYsbz1UcnVzdGNlbnRlcj9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0\nMEUGA1UdIAQ+MDwwOgYNKwYBBAGhaQcCAgMBAzApMCcGCCsGAQUFBwIBFhtodHRw\nOi8vd3d3LnNpZW1lbnMuY29tL3BraS8wDAYDVR0TAQH/BAIwADAfBgNVHSMEGDAW\ngBT4FV1HDGx3e3LEAheRaKK292oJRDCCAQQGCCsGAQUFBwEBBIH3MIH0MDIGCCsG\nAQUFBzAChiZodHRwOi8vYWguc2llbWVucy5jb20vcGtpP1paWlpaWkE2LmNydDBB\nBggrBgEFBQcwAoY1bGRhcDovL2FsLnNpZW1lbnMubmV0L0NOPVpaWlpaWkE2LEw9\nUEtJP2NBQ2VydGlmaWNhdGUwSQYIKwYBBQUHMAKGPWxkYXA6Ly9hbC5zaWVtZW5z\nLmNvbS9DTj1aWlpaWlpBNixvPVRydXN0Y2VudGVyP2NBQ2VydGlmaWNhdGUwMAYI\nKwYBBQUHMAGGJGh0dHA6Ly9vY3NwLnBraS1zZXJ2aWNlcy5zaWVtZW5zLmNvbTAN\nBgkqhkiG9w0BAQsFAAOCAgEAXPVcX6vaEcszJqg5IemF9aFTlwTrX5ITNIpzcqG+\nkD5haOf2mZYLjl+MKtLC1XfmIsGCUZNb8bjP6QHQEI+2d6x/ZOqPq7Kd7PwVu6x6\nxZrkDjUyhUbUntT5+RBy++l3Wf6Cq6Kx+K8ambHBP/bu90/p2U8KfFAG3Kr2gI2q\nfZrnNMOxmJfZ3/sXxssgLkhbZ7hRa+MpLfQ6uFsSiat3vlawBBvTyHnoZ/7oRc8y\nqi6QzWcd76CPpMElYWibl+hJzKbBZUWvc71AzHR6i1QeZ6wubYz7vr+FF5Y7tnxB\nVz6omPC9XAg0F+Dla6Zlz3Awj5imCzVXa+9SjtnsidmJdLcKzTAKyDewewoxYOOJ\nj3cJU7VSjJPl+2fVmDBaQwcNcUcu/TPAKApkegqO7tRF9IPhjhW8QkRnkqMetO3D\nOXmAFVIsEI0Hvb2cdb7B6jSpjGUuhaFm9TCKhQtCk2p8JCDTuaENLm1x34rrJKbT\n2vzyYN0CZtSkUdgD4yQxK9VWXGEzexRisWb4AnZjD2NAquLPpXmw8N0UwFD7MSpC\ndpaX7FktdvZmMXsnGiAdtLSbBgLVWOD1gmJFDjrhNbI8NOaOaNk4jrfGqNh5lhGU\n4DnBT2U6Cie1anLmFH/oZooAEXR2o3Nu+1mNDJChnJp0ovs08aa3zZvBdcloOvfU\nqdowggh3MIIGX6ADAgECAgQtyi/nMA0GCSqGSIb3DQEBCwUAMIGZMQswCQYDVQQG\nEwJERTEPMA0GA1UECAwGQmF5ZXJuMREwDwYDVQQHDAhNdWVuY2hlbjEQMA4GA1UE\nCgwHU2llbWVuczERMA8GA1UEBRMIWlpaWlpaQTExHTAbBgNVBAsMFFNpZW1lbnMg\nVHJ1c3QgQ2VudGVyMSIwIAYDVQQDDBlTaWVtZW5zIFJvb3QgQ0EgVjMuMCAyMDE2\nMB4XDTE2MDcyMDEzNDYxMFoXDTIyMDcyMDEzNDYxMFowgbYxCzAJBgNVBAYTAkRF\nMQ8wDQYDVQQIDAZCYXllcm4xETAPBgNVBAcMCE11ZW5jaGVuMRAwDgYDVQQKDAdT\naWVtZW5zMREwDwYDVQQFEwhaWlpaWlpBNjEdMBsGA1UECwwUU2llbWVucyBUcnVz\ndCBDZW50ZXIxPzA9BgNVBAMMNlNpZW1lbnMgSXNzdWluZyBDQSBNZWRpdW0gU3Ry\nZW5ndGggQXV0aGVudGljYXRpb24gMjAxNjCCAiIwDQYJKoZIhvcNAQEBBQADggIP\nADCCAgoCggIBAL9UfK+JAZEqVMVvECdYF9IK4KSw34AqyNl3rYP5x03dtmKaNu+2\n0fQqNESA1NGzw3s6LmrKLh1cR991nB2cvKOXu7AvEGpSuxzIcOROd4NpvRx+Ej1p\nJIPeqf+ScmVK7lMSO8QL/QzjHOpGV3is9sG+ZIxOW9U1ESooy4Hal6ZNs4DNItsz\npiCKqm6G3et4r2WqCy2RRuSqvnmMza7Y8BZsLy0ZVo5teObQ37E/FxqSrbDI8nxn\nB7nVUve5ZjrqoIGSkEOtyo11003dVO1vmWB9A0WQGDqE/q3w178hGhKfxzRaqzyi\nSoADUYS2sD/CglGTUxVq6u0pGLLsCFjItcCWqW+T9fPYfJ2CEd5b3hvqdCn+pXjZ\n/gdX1XAcdUF5lRnGWifaYpT9n4s4adzX8q6oHSJxTppuAwLRKH6eXALbGQ1I9lGQ\nDSOipD/09xkEsPw6HOepmf2U3YxZK1VU2sHqugFJboeLcHMzp6E1n2ctlNG1GKE9\nFDHmdyFzDi0Nnxtf/GgVjnHF68hByEE1MYdJ4nJLuxoT9hyjYdRW9MpeNNxxZnmz\nW3zh7QxIqP0ZfIz6XVhzrI9uZiqwwojDiM5tEOUkQ7XyW6grNXe75yt6mTj89LlB\nH5fOW2RNmCy/jzBXDjgyskgK7kuCvUYTuRv8ITXbBY5axFA+CpxZqokpAgMBAAGj\nggKmMIICojCCAQUGCCsGAQUFBwEBBIH4MIH1MEEGCCsGAQUFBzAChjVsZGFwOi8v\nYWwuc2llbWVucy5uZXQvQ049WlpaWlpaQTEsTD1QS0k/Y0FDZXJ0aWZpY2F0ZTAy\nBggrBgEFBQcwAoYmaHR0cDovL2FoLnNpZW1lbnMuY29tL3BraT9aWlpaWlpBMS5j\ncnQwSgYIKwYBBQUHMAKGPmxkYXA6Ly9hbC5zaWVtZW5zLmNvbS91aWQ9WlpaWlpa\nQTEsbz1UcnVzdGNlbnRlcj9jQUNlcnRpZmljYXRlMDAGCCsGAQUFBzABhiRodHRw\nOi8vb2NzcC5wa2ktc2VydmljZXMuc2llbWVucy5jb20wHwYDVR0jBBgwFoAUcG2g\nUOyp0CxnnRkV/v0EczXD4tQwEgYDVR0TAQH/BAgwBgEB/wIBADBABgNVHSAEOTA3\nMDUGCCsGAQQBoWkHMCkwJwYIKwYBBQUHAgEWG2h0dHA6Ly93d3cuc2llbWVucy5j\nb20vcGtpLzCBxwYDVR0fBIG/MIG8MIG5oIG2oIGzhj9sZGFwOi8vY2wuc2llbWVu\ncy5uZXQvQ049WlpaWlpaQTEsTD1QS0k/YXV0aG9yaXR5UmV2b2NhdGlvbkxpc3SG\nJmh0dHA6Ly9jaC5zaWVtZW5zLmNvbS9wa2k/WlpaWlpaQTEuY3JshkhsZGFwOi8v\nY2wuc2llbWVucy5jb20vdWlkPVpaWlpaWkExLG89VHJ1c3RjZW50ZXI/YXV0aG9y\naXR5UmV2b2NhdGlvbkxpc3QwJwYDVR0lBCAwHgYIKwYBBQUHAwIGCCsGAQUFBwME\nBggrBgEFBQcDCTAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFPgVXUcMbHd7csQC\nF5Foorb3aglEMA0GCSqGSIb3DQEBCwUAA4ICAQBw+sqMp3SS7DVKcILEmXbdRAg3\nlLO1r457KY+YgCT9uX4VG5EdRKcGfWXK6VHGCi4Dos5eXFV34Mq/p8nu1sqMuoGP\nYjHn604eWDprhGy6GrTYdxzcE/GGHkpkuE3Ir/45UcmZlOU41SJ9SNjuIVrSHMOf\nccSY42BCspR/Q1Z/ykmIqQecdT3/Kkx02GzzSN2+HlW6cEO4GBW5RMqsvd2n0h2d\nfe2zcqOgkLtx7u2JCR/U77zfyxG3qXtcymoz0wgSHcsKIl+GUjITLkHfS9Op8V7C\nGr/dX437sIg5pVHmEAWadjkIzqdHux+EF94Z6kaHywohc1xG0KvPYPX7iSNjkvhz\n4NY53DHmxl4YEMLffZnaS/dqyhe1GTpcpyN8WiR4KuPfxrkVDOsuzWFtMSvNdlOV\ngdI0MXcLMP+EOeANZWX6lGgJ3vWyemo58nzgshKd24MY3w3i6masUkxJH2KvI7UH\n/1Db3SC8oOUjInvSRej6M3ZhYWgugm6gbpUgFoDw/o9Cg6Qm71hY0JtcaPC13rzm\nN8a2Br0+Fa5e2VhwLmAxyfe1JKzqPwuHT0S5u05SQghL5VdzqfA8FCL/j4XC9yI6\ncsZTAQi73xFQYVjZt3+aoSz84lOlTmVo/jgvGMY/JzH9I4mETGgAJRNj34Z/0meh\nM+pKWCojNH/dgyJSwDGCAlIwggJOAgEBMIG/MIG2MQswCQYDVQQGEwJERTEPMA0G\nA1UECAwGQmF5ZXJuMREwDwYDVQQHDAhNdWVuY2hlbjEQMA4GA1UECgwHU2llbWVu\nczERMA8GA1UEBRMIWlpaWlpaQTYxHTAbBgNVBAsMFFNpZW1lbnMgVHJ1c3QgQ2Vu\ndGVyMT8wPQYDVQQDDDZTaWVtZW5zIElzc3VpbmcgQ0EgTWVkaXVtIFN0cmVuZ3Ro\nIEF1dGhlbnRpY2F0aW9uIDIwMTYCBBXXLOIwCwYJYIZIAWUDBAIBoGkwHAYJKoZI\nhvcNAQkFMQ8XDTE5MTEyMDE0NTYyMFowLwYJKoZIhvcNAQkEMSIEIJDnZUpcVLzC\nOdtpkH8gtxwLPIDE0NmAmFC9uM8q2z+OMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0B\nBwEwCwYJKoZIhvcNAQEBBIIBAH/Pqv2xp3a0jSPkwU1K3eGA/1lfoNJMUny4d/PS\nLVWlkgrmedXdLmuBzAGEaaZOJS0lEpNd01pR/reHs7xxZ+RZ0olTs2ufM0CijQSx\nOL9HDl2O3OoD77NWx4tl3Wy1yJCeV3XH/cEI7AkKHCmKY9QMoMYWh16ORBtr+YcS\nYK+gONOjpjgcgTJgZ3HSFgQ50xiD4WT1kFBHsuYsLqaOSbTfTN6Ayyg4edjrPQqa\nVcVf1OQcIrfWA3yMQrnEZfOYfN/D4EPjTfxBV+VCi/F2bdZmMbJ7jNk1FbewSwWO\nSDH1i0K32NyFbnh0BSos7njq7ELqKlYBsoB/sZfaH2vKy5U=\n-----END SIGNED MESSAGE-----"),
+ MessageSize: 6494,
+ Tagger: &gitalypb.CommitAuthor{
+ Name: []byte("Roger Meier"),
+ Email: []byte("r.meier@siemens.com"),
+ Date: &timestamp.Timestamp{Seconds: 1574261780},
+ Timezone: []byte("+0100"),
+ },
+ SignatureType: gitalypb.SignatureType_X509,
+ },
+ {
Name: []byte("v1.2.0"),
Id: string(annotatedTagID),
Message: []byte("Blob tag"),
diff --git a/internal/service/ref/testhelper_test.go b/internal/service/ref/testhelper_test.go
index 609150b26..865143d18 100644
--- a/internal/service/ref/testhelper_test.go
+++ b/internal/service/ref/testhelper_test.go
@@ -56,6 +56,7 @@ var (
Date: &timestamp.Timestamp{Seconds: 1393491698},
Timezone: []byte("+0200"),
},
+ SignatureType: gitalypb.SignatureType_PGP,
},
"refs/heads/'test'": {
Id: "e56497bb5f03a90a51293fc6d516788730953899",
diff --git a/proto/go/gitalypb/shared.pb.go b/proto/go/gitalypb/shared.pb.go
index ed780309f..4e080c35d 100644
--- a/proto/go/gitalypb/shared.pb.go
+++ b/proto/go/gitalypb/shared.pb.go
@@ -56,6 +56,34 @@ func (ObjectType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_d8a4e87e678c5ced, []int{0}
}
+type SignatureType int32
+
+const (
+ SignatureType_NONE SignatureType = 0
+ SignatureType_PGP SignatureType = 1
+ SignatureType_X509 SignatureType = 2
+)
+
+var SignatureType_name = map[int32]string{
+ 0: "NONE",
+ 1: "PGP",
+ 2: "X509",
+}
+
+var SignatureType_value = map[string]int32{
+ "NONE": 0,
+ "PGP": 1,
+ "X509": 2,
+}
+
+func (x SignatureType) String() string {
+ return proto.EnumName(SignatureType_name, int32(x))
+}
+
+func (SignatureType) EnumDescriptor() ([]byte, []int) {
+ return fileDescriptor_d8a4e87e678c5ced, []int{1}
+}
+
type OperationMsg_Operation int32
const (
@@ -294,10 +322,11 @@ type GitCommit struct {
// If body exceeds a certain threshold, it will be nullified,
// but its size will be set in body_size so we can know if
// a commit had a body in the first place.
- BodySize int64 `protobuf:"varint,7,opt,name=body_size,json=bodySize,proto3" json:"body_size,omitempty"`
- XXX_NoUnkeyedLiteral struct{} `json:"-"`
- XXX_unrecognized []byte `json:"-"`
- XXX_sizecache int32 `json:"-"`
+ BodySize int64 `protobuf:"varint,7,opt,name=body_size,json=bodySize,proto3" json:"body_size,omitempty"`
+ SignatureType SignatureType `protobuf:"varint,8,opt,name=signature_type,json=signatureType,proto3,enum=gitaly.SignatureType" json:"signature_type,omitempty"`
+ XXX_NoUnkeyedLiteral struct{} `json:"-"`
+ XXX_unrecognized []byte `json:"-"`
+ XXX_sizecache int32 `json:"-"`
}
func (m *GitCommit) Reset() { *m = GitCommit{} }
@@ -374,6 +403,13 @@ func (m *GitCommit) GetBodySize() int64 {
return 0
}
+func (m *GitCommit) GetSignatureType() SignatureType {
+ if m != nil {
+ return m.SignatureType
+ }
+ return SignatureType_NONE
+}
+
type CommitAuthor struct {
Name []byte `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
Email []byte `protobuf:"bytes,2,opt,name=email,proto3" json:"email,omitempty"`
@@ -534,6 +570,7 @@ type Tag struct {
Message []byte `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"`
MessageSize int64 `protobuf:"varint,5,opt,name=message_size,json=messageSize,proto3" json:"message_size,omitempty"`
Tagger *CommitAuthor `protobuf:"bytes,6,opt,name=tagger,proto3" json:"tagger,omitempty"`
+ SignatureType SignatureType `protobuf:"varint,7,opt,name=signature_type,json=signatureType,proto3,enum=gitaly.SignatureType" json:"signature_type,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@@ -606,6 +643,13 @@ func (m *Tag) GetTagger() *CommitAuthor {
return nil
}
+func (m *Tag) GetSignatureType() SignatureType {
+ if m != nil {
+ return m.SignatureType
+ }
+ return SignatureType_NONE
+}
+
type User struct {
GlId string `protobuf:"bytes,1,opt,name=gl_id,json=glId,proto3" json:"gl_id,omitempty"`
Name []byte `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
@@ -728,6 +772,7 @@ var E_Storage = &proto.ExtensionDesc{
func init() {
proto.RegisterEnum("gitaly.ObjectType", ObjectType_name, ObjectType_value)
+ proto.RegisterEnum("gitaly.SignatureType", SignatureType_name, SignatureType_value)
proto.RegisterEnum("gitaly.OperationMsg_Operation", OperationMsg_Operation_name, OperationMsg_Operation_value)
proto.RegisterEnum("gitaly.OperationMsg_Scope", OperationMsg_Scope_name, OperationMsg_Scope_value)
proto.RegisterType((*OperationMsg)(nil), "gitaly.OperationMsg")
@@ -746,65 +791,69 @@ func init() {
func init() { proto.RegisterFile("shared.proto", fileDescriptor_d8a4e87e678c5ced) }
var fileDescriptor_d8a4e87e678c5ced = []byte{
- // 956 bytes of a gzipped FileDescriptorProto
- 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x55, 0xdd, 0x6e, 0xe4, 0x34,
- 0x14, 0xde, 0x64, 0xfe, 0xcf, 0x64, 0x4b, 0x30, 0x45, 0x84, 0xae, 0xba, 0x3b, 0x04, 0x09, 0x55,
- 0x08, 0xa6, 0x55, 0x57, 0x5a, 0x89, 0x45, 0x42, 0x4c, 0xcb, 0x50, 0x75, 0xd9, 0x36, 0x95, 0x27,
- 0x05, 0xc1, 0x4d, 0xe4, 0x99, 0xb8, 0x1e, 0xa3, 0x64, 0x1c, 0x39, 0x9e, 0x8a, 0xf6, 0x12, 0xf1,
- 0x3c, 0x3c, 0x07, 0x17, 0x3c, 0x01, 0x77, 0x5c, 0xf1, 0x18, 0x20, 0xdb, 0xc9, 0xcc, 0x6c, 0x5b,
- 0x10, 0x77, 0x3e, 0xc7, 0xdf, 0xf9, 0xce, 0xbf, 0x0d, 0x5e, 0x39, 0x27, 0x92, 0xa6, 0xc3, 0x42,
- 0x0a, 0x25, 0x50, 0x9b, 0x71, 0x45, 0xb2, 0x9b, 0x9d, 0x67, 0x4c, 0x08, 0x96, 0xd1, 0x7d, 0xa3,
- 0x9d, 0x2e, 0xaf, 0xf6, 0x15, 0xcf, 0x69, 0xa9, 0x48, 0x5e, 0x58, 0xe0, 0xce, 0xe0, 0x2e, 0x20,
- 0xa5, 0xe5, 0x4c, 0xf2, 0x42, 0x09, 0x69, 0x11, 0xe1, 0x1f, 0x2e, 0x78, 0x51, 0x41, 0x25, 0x51,
- 0x5c, 0x2c, 0xce, 0x4a, 0x86, 0x86, 0xe0, 0x8a, 0x22, 0x70, 0x06, 0xce, 0xde, 0xd6, 0xe1, 0xd3,
- 0xa1, 0x75, 0x34, 0xdc, 0x44, 0xac, 0x05, 0xec, 0x8a, 0x02, 0x7d, 0x0e, 0xfd, 0x72, 0x26, 0x0a,
- 0x9a, 0x64, 0xf4, 0x9a, 0x66, 0x81, 0x6b, 0x0c, 0x77, 0x1e, 0x34, 0x9c, 0x68, 0x1c, 0x06, 0x03,
- 0x7f, 0xad, 0xd1, 0xe8, 0x05, 0xbc, 0xa7, 0x88, 0x64, 0x54, 0x25, 0x92, 0x16, 0xa2, 0xe4, 0x4a,
- 0xc8, 0x9b, 0xe4, 0x8a, 0xd3, 0x2c, 0x0d, 0x1a, 0x03, 0x67, 0xaf, 0x87, 0xdf, 0xb5, 0xd7, 0x78,
- 0x75, 0xfb, 0xb5, 0xbe, 0x44, 0x5f, 0xc0, 0x13, 0x92, 0xa6, 0x5c, 0x13, 0x93, 0xec, 0xbe, 0x6d,
- 0xd3, 0xd8, 0xbe, 0xbf, 0x86, 0xdc, 0xb1, 0x0f, 0x9f, 0x43, 0x6f, 0x15, 0x19, 0xea, 0x43, 0xe7,
- 0xf2, 0xfc, 0x9b, 0xf3, 0xe8, 0xbb, 0x73, 0xff, 0x91, 0x16, 0xce, 0x2e, 0xe3, 0x51, 0x1c, 0x61,
- 0xdf, 0x41, 0x1e, 0x74, 0x47, 0xc7, 0xc7, 0xe3, 0xc9, 0x24, 0xc2, 0xbe, 0x1b, 0x1e, 0x40, 0xcb,
- 0x64, 0x80, 0xb6, 0x00, 0xf0, 0xf8, 0x22, 0x9a, 0x9c, 0xc6, 0x11, 0xfe, 0xde, 0x7f, 0x84, 0x00,
- 0xda, 0x93, 0x31, 0xfe, 0x76, 0xac, 0x4d, 0xfa, 0xd0, 0x99, 0xc4, 0x11, 0x1e, 0x9d, 0x8c, 0x7d,
- 0x37, 0xfc, 0xd5, 0x05, 0x58, 0xbb, 0x46, 0x1f, 0x80, 0x57, 0x2a, 0x21, 0x09, 0xa3, 0xc9, 0x82,
- 0xe4, 0xd4, 0xd4, 0xaa, 0x87, 0xfb, 0x95, 0xee, 0x9c, 0xe4, 0x14, 0x7d, 0x08, 0x8f, 0x25, 0xcd,
- 0x88, 0xe2, 0xd7, 0x34, 0x29, 0x88, 0x9a, 0x57, 0x65, 0xf0, 0x6a, 0xe5, 0x05, 0x51, 0x73, 0x74,
- 0x00, 0xdb, 0x8c, 0xab, 0x44, 0x4c, 0x7f, 0xa4, 0x33, 0x95, 0xa4, 0x5c, 0xd2, 0x99, 0xe6, 0xaf,
- 0xd2, 0x46, 0x8c, 0xab, 0xc8, 0x5c, 0x7d, 0x55, 0xdf, 0xa0, 0x13, 0x18, 0x68, 0x0b, 0x92, 0x29,
- 0x2a, 0x17, 0x44, 0xd1, 0xbb, 0xb6, 0x9c, 0x96, 0x41, 0x6b, 0xd0, 0xd8, 0xeb, 0xe1, 0x5d, 0xc6,
- 0xd5, 0xa8, 0x86, 0xbd, 0x49, 0xc3, 0x69, 0xa9, 0xe3, 0x63, 0x9b, 0x05, 0x0f, 0xda, 0x36, 0x3e,
- 0xb6, 0x51, 0x62, 0xf4, 0x11, 0xbc, 0xc5, 0xb2, 0xa4, 0x90, 0xc2, 0xf8, 0x30, 0x69, 0x74, 0x0d,
- 0xec, 0x31, 0xcb, 0x2e, 0xac, 0x56, 0xe7, 0xf1, 0xaa, 0xd9, 0x75, 0x7c, 0xf7, 0x55, 0xb3, 0xdb,
- 0xf1, 0xbb, 0xb8, 0xa9, 0x61, 0xe1, 0x5f, 0x0e, 0xf4, 0x4e, 0xb8, 0x3a, 0x16, 0x79, 0xce, 0x15,
- 0xda, 0x02, 0x97, 0xa7, 0x66, 0x14, 0x7b, 0xd8, 0xe5, 0x29, 0x0a, 0xa0, 0x53, 0x2e, 0x4d, 0x48,
- 0xa6, 0x74, 0x1e, 0xae, 0x45, 0x84, 0xa0, 0x39, 0x15, 0xe9, 0x8d, 0xa9, 0x96, 0x87, 0xcd, 0x19,
- 0x7d, 0x02, 0x6d, 0xb2, 0x54, 0x73, 0x21, 0x4d, 0x5d, 0xfa, 0x87, 0xdb, 0xf5, 0x4c, 0x5a, 0xf6,
- 0x91, 0xb9, 0xc3, 0x15, 0x06, 0x1d, 0x42, 0x6f, 0x66, 0xf4, 0x8a, 0xca, 0xa0, 0xf5, 0x1f, 0x06,
- 0x6b, 0x18, 0xda, 0x05, 0x28, 0x88, 0xa4, 0x0b, 0x95, 0xf0, 0xb4, 0x0c, 0xda, 0xa6, 0x7e, 0x3d,
- 0xab, 0x39, 0x4d, 0x4b, 0xf4, 0x04, 0x7a, 0x3a, 0x90, 0xa4, 0xe4, 0xb7, 0x34, 0xe8, 0x0c, 0x9c,
- 0xbd, 0x06, 0xee, 0x6a, 0xc5, 0x84, 0xdf, 0xd2, 0xf0, 0x17, 0x07, 0xbc, 0x4d, 0x5e, 0x9d, 0x82,
- 0x19, 0x0a, 0xc7, 0xa6, 0xa0, 0xcf, 0x68, 0x1b, 0x5a, 0x34, 0x27, 0x3c, 0xab, 0xd2, 0xb5, 0x02,
- 0x1a, 0x42, 0x33, 0x25, 0x8a, 0x9a, 0x64, 0xfb, 0x7a, 0xd5, 0xcc, 0x8e, 0x0f, 0xeb, 0x1d, 0x1f,
- 0xc6, 0xf5, 0x23, 0x80, 0x0d, 0x0e, 0xed, 0x40, 0x57, 0xbf, 0x0b, 0xb7, 0x62, 0x41, 0x4d, 0x29,
- 0x3c, 0xbc, 0x92, 0xc3, 0x10, 0x60, 0xfc, 0x13, 0x57, 0x13, 0x45, 0xd4, 0xb2, 0xd4, 0xfe, 0xae,
- 0x49, 0xb6, 0xb4, 0x41, 0xb4, 0xb0, 0x15, 0xc2, 0x18, 0xda, 0x47, 0x92, 0x2c, 0x66, 0xf3, 0x07,
- 0x63, 0x7c, 0x01, 0x8f, 0xab, 0x15, 0xb6, 0x85, 0x31, 0xb1, 0xf6, 0x0f, 0xdf, 0xae, 0x8b, 0xb7,
- 0x6a, 0x27, 0xf6, 0x2c, 0xce, 0x4a, 0xe1, 0xef, 0x0e, 0x34, 0x62, 0xc2, 0x1e, 0xe4, 0xb4, 0x8d,
- 0x77, 0x57, 0x8d, 0xbf, 0xe7, 0xa3, 0xf1, 0xbf, 0x7c, 0xe8, 0x81, 0xc9, 0x69, 0x59, 0x12, 0x56,
- 0x27, 0x5e, 0x8b, 0x7a, 0x15, 0xab, 0xa3, 0x6d, 0x4f, 0xcb, 0xb4, 0xa7, 0x5f, 0xe9, 0x74, 0x87,
- 0xf4, 0xfc, 0x28, 0xc2, 0x18, 0x95, 0x66, 0xc6, 0xff, 0x75, 0x7e, 0x2c, 0x26, 0xbc, 0x82, 0xe6,
- 0x65, 0x49, 0x25, 0x7a, 0x07, 0x5a, 0x2c, 0x4b, 0x56, 0x63, 0xdb, 0x64, 0xd9, 0x69, 0xba, 0xca,
- 0xd1, 0x7d, 0xa8, 0xb7, 0x8d, 0xcd, 0xde, 0x3e, 0x83, 0x3e, 0xcb, 0x92, 0x65, 0xa9, 0xf7, 0x2f,
- 0xa7, 0xd5, 0x46, 0x03, 0xcb, 0x2e, 0x2b, 0x4d, 0xf8, 0x25, 0x80, 0xdd, 0xca, 0x0b, 0x21, 0x32,
- 0x74, 0x08, 0xb0, 0xb1, 0x8b, 0x8e, 0x89, 0x13, 0xd5, 0x71, 0xae, 0x37, 0x12, 0x6f, 0xa0, 0x3e,
- 0x3e, 0xaa, 0x19, 0xe2, 0x9b, 0x82, 0xbe, 0xf9, 0xf8, 0x01, 0xb4, 0x8f, 0xa3, 0xb3, 0xb3, 0xd3,
- 0xd8, 0x77, 0x50, 0x17, 0x9a, 0x47, 0xaf, 0xa3, 0x23, 0xdf, 0xd5, 0xa7, 0x18, 0x8f, 0xc7, 0x7e,
- 0x03, 0x75, 0xa0, 0x11, 0x8f, 0x4e, 0xfc, 0xe6, 0xcb, 0x08, 0x3a, 0xa2, 0x48, 0x94, 0x26, 0x78,
- 0x7a, 0x6f, 0xfe, 0xce, 0xa8, 0x9a, 0x8b, 0x34, 0x2a, 0xf4, 0xe3, 0x5a, 0x06, 0x7f, 0xff, 0x7c,
- 0x67, 0x9b, 0x36, 0xbf, 0x04, 0xdc, 0x16, 0x85, 0x0e, 0xe3, 0xe5, 0x67, 0xd0, 0xa9, 0x9e, 0x41,
- 0xb4, 0x7b, 0x8f, 0xd0, 0xbc, 0xd9, 0x35, 0xdf, 0x9f, 0xbf, 0x69, 0xbe, 0x2e, 0xae, 0xf1, 0x47,
- 0x07, 0x3f, 0x68, 0xe6, 0x8c, 0x4c, 0x87, 0x33, 0x91, 0xef, 0xdb, 0xe3, 0xa7, 0x42, 0xb2, 0x7d,
- 0xeb, 0xcf, 0xfe, 0x7d, 0xfb, 0x4c, 0x54, 0x72, 0x31, 0x9d, 0xb6, 0x8d, 0xea, 0xf9, 0x3f, 0x01,
- 0x00, 0x00, 0xff, 0xff, 0x74, 0x65, 0xe0, 0xf9, 0x55, 0x07, 0x00, 0x00,
+ // 1019 bytes of a gzipped FileDescriptorProto
+ 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0xdd, 0x6e, 0x23, 0x35,
+ 0x14, 0x6e, 0x26, 0xff, 0x27, 0x69, 0x19, 0x4c, 0x57, 0x84, 0xae, 0xba, 0x1b, 0x82, 0x84, 0xaa,
+ 0x55, 0x49, 0xab, 0xac, 0x58, 0x69, 0x17, 0x84, 0x48, 0x4b, 0xa8, 0xba, 0x6c, 0x33, 0x91, 0x33,
+ 0xe5, 0xef, 0x66, 0xe4, 0x64, 0x5c, 0xc7, 0x68, 0x12, 0x8f, 0x6c, 0xa7, 0xa2, 0xbd, 0x44, 0x5c,
+ 0xf1, 0x1e, 0xdc, 0xf2, 0x1c, 0x3c, 0x03, 0x77, 0x3c, 0x09, 0xc8, 0xf6, 0x4c, 0x9a, 0xfe, 0x80,
+ 0xe0, 0xce, 0xe7, 0x9c, 0xef, 0xfc, 0xf8, 0x9b, 0xcf, 0x67, 0xa0, 0xa9, 0x66, 0x44, 0xd2, 0xb8,
+ 0x9b, 0x4a, 0xa1, 0x05, 0xaa, 0x30, 0xae, 0x49, 0x72, 0xb5, 0xf3, 0x94, 0x09, 0xc1, 0x12, 0x7a,
+ 0x60, 0xbd, 0x93, 0xe5, 0xc5, 0x81, 0xe6, 0x73, 0xaa, 0x34, 0x99, 0xa7, 0x0e, 0xb8, 0xd3, 0xbe,
+ 0x0b, 0x88, 0xa9, 0x9a, 0x4a, 0x9e, 0x6a, 0x21, 0x1d, 0xa2, 0xf3, 0x87, 0x07, 0xcd, 0x20, 0xa5,
+ 0x92, 0x68, 0x2e, 0x16, 0x67, 0x8a, 0xa1, 0x2e, 0x78, 0x22, 0x6d, 0x15, 0xda, 0x85, 0xbd, 0xad,
+ 0xde, 0x93, 0xae, 0x6b, 0xd4, 0x5d, 0x47, 0xdc, 0x18, 0xd8, 0x13, 0x29, 0xfa, 0x04, 0x1a, 0x6a,
+ 0x2a, 0x52, 0x1a, 0x25, 0xf4, 0x92, 0x26, 0x2d, 0xcf, 0x26, 0xee, 0x3c, 0x98, 0x38, 0x36, 0x38,
+ 0x0c, 0x16, 0xfe, 0xc6, 0xa0, 0xd1, 0x0b, 0x78, 0x57, 0x13, 0xc9, 0xa8, 0x8e, 0x24, 0x4d, 0x85,
+ 0xe2, 0x5a, 0xc8, 0xab, 0xe8, 0x82, 0xd3, 0x24, 0x6e, 0x15, 0xdb, 0x85, 0xbd, 0x3a, 0x7e, 0xe4,
+ 0xc2, 0x78, 0x15, 0xfd, 0xd2, 0x04, 0xd1, 0x67, 0xf0, 0x98, 0xc4, 0x31, 0x37, 0x85, 0x49, 0x72,
+ 0x3f, 0xb7, 0x64, 0x73, 0xdf, 0xbb, 0x81, 0xdc, 0xc9, 0xef, 0x3c, 0x87, 0xfa, 0x6a, 0x32, 0xd4,
+ 0x80, 0xea, 0xf9, 0xf0, 0xab, 0x61, 0xf0, 0xcd, 0xd0, 0xdf, 0x30, 0xc6, 0xd9, 0x79, 0xd8, 0x0f,
+ 0x03, 0xec, 0x17, 0x50, 0x13, 0x6a, 0xfd, 0xe3, 0xe3, 0xc1, 0x78, 0x1c, 0x60, 0xdf, 0xeb, 0x1c,
+ 0x42, 0xd9, 0xde, 0x00, 0x6d, 0x01, 0xe0, 0xc1, 0x28, 0x18, 0x9f, 0x86, 0x01, 0xfe, 0xce, 0xdf,
+ 0x40, 0x00, 0x95, 0xf1, 0x00, 0x7f, 0x3d, 0x30, 0x29, 0x0d, 0xa8, 0x8e, 0xc3, 0x00, 0xf7, 0x4f,
+ 0x06, 0xbe, 0xd7, 0xf9, 0xcd, 0x03, 0xb8, 0x69, 0x8d, 0xde, 0x87, 0xa6, 0xd2, 0x42, 0x12, 0x46,
+ 0xa3, 0x05, 0x99, 0x53, 0xcb, 0x55, 0x1d, 0x37, 0x32, 0xdf, 0x90, 0xcc, 0x29, 0xfa, 0x00, 0x36,
+ 0x25, 0x4d, 0x88, 0xe6, 0x97, 0x34, 0x4a, 0x89, 0x9e, 0x65, 0x34, 0x34, 0x73, 0xe7, 0x88, 0xe8,
+ 0x19, 0x3a, 0x84, 0x6d, 0xc6, 0x75, 0x24, 0x26, 0x3f, 0xd0, 0xa9, 0x8e, 0x62, 0x2e, 0xe9, 0xd4,
+ 0xd4, 0xcf, 0xae, 0x8d, 0x18, 0xd7, 0x81, 0x0d, 0x7d, 0x91, 0x47, 0xd0, 0x09, 0xb4, 0x4d, 0x06,
+ 0x49, 0x34, 0x95, 0x0b, 0xa2, 0xe9, 0xdd, 0x5c, 0x4e, 0x55, 0xab, 0xdc, 0x2e, 0xee, 0xd5, 0xf1,
+ 0x2e, 0xe3, 0xba, 0x9f, 0xc3, 0x6e, 0x97, 0xe1, 0x54, 0x99, 0xf9, 0xd8, 0x3a, 0xe1, 0xad, 0x8a,
+ 0x9b, 0x8f, 0xad, 0x51, 0x8c, 0x3e, 0x84, 0xb7, 0x58, 0x12, 0xa5, 0x52, 0xd8, 0x1e, 0xf6, 0x1a,
+ 0x35, 0x0b, 0xdb, 0x64, 0xc9, 0xc8, 0x79, 0xcd, 0x3d, 0x5e, 0x97, 0x6a, 0x05, 0xdf, 0x7b, 0x5d,
+ 0xaa, 0x55, 0xfd, 0x1a, 0x2e, 0x19, 0x58, 0xe7, 0x57, 0x0f, 0xea, 0x27, 0x5c, 0x1f, 0x8b, 0xf9,
+ 0x9c, 0x6b, 0xb4, 0x05, 0x1e, 0x8f, 0xad, 0x14, 0xeb, 0xd8, 0xe3, 0x31, 0x6a, 0x41, 0x55, 0x2d,
+ 0xed, 0x48, 0x96, 0xba, 0x26, 0xce, 0x4d, 0x84, 0xa0, 0x34, 0x11, 0xf1, 0x95, 0x65, 0xab, 0x89,
+ 0xed, 0x19, 0xed, 0x43, 0x85, 0x2c, 0xf5, 0x4c, 0x48, 0xcb, 0x4b, 0xa3, 0xb7, 0x9d, 0x6b, 0xd2,
+ 0x55, 0xef, 0xdb, 0x18, 0xce, 0x30, 0xa8, 0x07, 0xf5, 0xa9, 0xf5, 0x6b, 0x2a, 0x5b, 0xe5, 0x7f,
+ 0x49, 0xb8, 0x81, 0xa1, 0x5d, 0x80, 0x94, 0x48, 0xba, 0xd0, 0x11, 0x8f, 0x55, 0xab, 0x62, 0xf9,
+ 0xab, 0x3b, 0xcf, 0x69, 0xac, 0xd0, 0x63, 0xa8, 0x9b, 0x41, 0x22, 0xc5, 0xaf, 0x69, 0xab, 0xda,
+ 0x2e, 0xec, 0x15, 0x71, 0xcd, 0x38, 0xc6, 0xfc, 0x9a, 0xa2, 0x4f, 0x61, 0x4b, 0x71, 0xb6, 0x20,
+ 0x7a, 0x29, 0x69, 0xa4, 0xaf, 0x52, 0x6a, 0x29, 0xda, 0xea, 0x3d, 0xca, 0x9b, 0x8e, 0xf3, 0x68,
+ 0x78, 0x95, 0x52, 0xbc, 0xa9, 0xd6, 0xcd, 0xce, 0xcf, 0x05, 0x68, 0xae, 0x4f, 0x65, 0x08, 0xb0,
+ 0x92, 0x2a, 0x38, 0x02, 0xcc, 0x19, 0x6d, 0x43, 0x99, 0xce, 0x09, 0x4f, 0x32, 0xb2, 0x9c, 0x81,
+ 0xba, 0x50, 0x8a, 0x89, 0xa6, 0x96, 0xaa, 0x86, 0x79, 0xa8, 0x76, 0x43, 0x74, 0xf3, 0x0d, 0xd1,
+ 0x0d, 0xf3, 0x15, 0x82, 0x2d, 0x0e, 0xed, 0x40, 0xcd, 0x6c, 0x95, 0x6b, 0xb1, 0xa0, 0x96, 0xc8,
+ 0x26, 0x5e, 0xd9, 0x9d, 0x0e, 0xc0, 0xe0, 0x47, 0xae, 0xc7, 0x9a, 0xe8, 0xa5, 0x32, 0xfd, 0x2e,
+ 0x49, 0xb2, 0x74, 0x43, 0x94, 0xb1, 0x33, 0x3a, 0x21, 0x54, 0x8e, 0x24, 0x59, 0x4c, 0x67, 0x0f,
+ 0xce, 0xf8, 0x02, 0x36, 0xb3, 0x05, 0xe0, 0x68, 0xb5, 0xb3, 0x36, 0x7a, 0x6f, 0xe7, 0x2c, 0xac,
+ 0xc4, 0x80, 0x9b, 0x0e, 0xe7, 0xac, 0xce, 0x2f, 0x1e, 0x14, 0x43, 0xc2, 0x1e, 0xac, 0xe9, 0x64,
+ 0xe3, 0xad, 0x64, 0x73, 0xaf, 0x47, 0xf1, 0x3f, 0xf5, 0x30, 0x72, 0x9b, 0x53, 0xa5, 0x08, 0xcb,
+ 0x2f, 0x9e, 0x9b, 0xe6, 0x21, 0x67, 0x47, 0xf7, 0x71, 0xcb, 0xf6, 0xe3, 0x36, 0x32, 0x9f, 0xfd,
+ 0xbe, 0xfb, 0x50, 0xd1, 0x84, 0x31, 0x2a, 0xed, 0x0b, 0xf9, 0x47, 0xf5, 0x39, 0xcc, 0x03, 0x6a,
+ 0xa8, 0xfe, 0x0f, 0x35, 0x5c, 0x40, 0xe9, 0x5c, 0x51, 0x89, 0xde, 0x81, 0x32, 0x4b, 0xa2, 0xd5,
+ 0x93, 0x29, 0xb1, 0xe4, 0x34, 0x5e, 0x31, 0xe4, 0x3d, 0xa4, 0x8c, 0xe2, 0xba, 0x32, 0x9e, 0x42,
+ 0x83, 0x25, 0xd1, 0x52, 0x99, 0xb7, 0x3f, 0xa7, 0xd9, 0x36, 0x01, 0x96, 0x9c, 0x67, 0x9e, 0xce,
+ 0xe7, 0x00, 0x6e, 0x23, 0x8c, 0x84, 0x48, 0x50, 0x0f, 0x60, 0x6d, 0x0f, 0x14, 0xec, 0x2d, 0x51,
+ 0x3e, 0xef, 0xcd, 0x36, 0xc0, 0x6b, 0xa8, 0x67, 0x47, 0x79, 0x05, 0x33, 0xf7, 0xed, 0xc5, 0x0b,
+ 0x50, 0x39, 0x0e, 0xce, 0xce, 0x4e, 0x43, 0xbf, 0x80, 0x6a, 0x50, 0x3a, 0x7a, 0x13, 0x1c, 0xf9,
+ 0x9e, 0x39, 0x85, 0x78, 0x30, 0xf0, 0x8b, 0xa8, 0x0a, 0xc5, 0xb0, 0x7f, 0xe2, 0x97, 0x9e, 0xed,
+ 0xc3, 0xe6, 0x2d, 0x36, 0x0c, 0x66, 0x18, 0x0c, 0x07, 0xfe, 0x86, 0xc1, 0x8c, 0x4e, 0x46, 0xae,
+ 0xc0, 0xb7, 0x1f, 0x1f, 0xbe, 0xf4, 0xbd, 0x57, 0x01, 0x54, 0x45, 0x6a, 0x29, 0x45, 0x4f, 0xee,
+ 0x69, 0xfd, 0x8c, 0xea, 0x99, 0x88, 0x83, 0xd4, 0xfc, 0x06, 0x54, 0xeb, 0xaf, 0x9f, 0xee, 0xbc,
+ 0xfb, 0xf5, 0x9f, 0x17, 0xae, 0x88, 0xd4, 0x74, 0x7b, 0xf5, 0x12, 0xaa, 0xd9, 0xc2, 0x46, 0xbb,
+ 0xf7, 0x0a, 0xda, 0xbf, 0x4b, 0x5e, 0xef, 0xcf, 0xdf, 0x4d, 0xbd, 0x1a, 0xce, 0xf1, 0x47, 0x87,
+ 0xdf, 0x9b, 0xca, 0x09, 0x99, 0x74, 0xa7, 0x62, 0x7e, 0xe0, 0x8e, 0x1f, 0x09, 0xc9, 0x0e, 0x5c,
+ 0x3f, 0xf7, 0x97, 0x3e, 0x60, 0x22, 0xb3, 0xd3, 0xc9, 0xa4, 0x62, 0x5d, 0xcf, 0xff, 0x0e, 0x00,
+ 0x00, 0xff, 0xff, 0x5b, 0x3d, 0x69, 0x61, 0xff, 0x07, 0x00, 0x00,
}
diff --git a/proto/shared.proto b/proto/shared.proto
index ea8d79c8a..2d04c4dd3 100644
--- a/proto/shared.proto
+++ b/proto/shared.proto
@@ -53,6 +53,13 @@ enum ObjectType {
TAG = 4;
}
+enum SignatureType {
+ NONE = 0;
+ PGP = 1;
+ X509 = 2;
+ // maybe add X509+TSA or other combinations at a later step
+}
+
extend google.protobuf.MethodOptions {
// Random high number..
OperationMsg op_type = 82303;
@@ -101,6 +108,7 @@ message GitCommit {
// but its size will be set in body_size so we can know if
// a commit had a body in the first place.
int64 body_size = 7;
+ SignatureType signature_type = 8;
}
message CommitAuthor {
@@ -130,6 +138,7 @@ message Tag {
bytes message = 4;
int64 message_size = 5;
CommitAuthor tagger = 6;
+ SignatureType signature_type = 7;
}
message User {
diff --git a/ruby/proto/gitaly/shared_pb.rb b/ruby/proto/gitaly/shared_pb.rb
index d6dd836b6..d76b28db8 100644
--- a/ruby/proto/gitaly/shared_pb.rb
+++ b/ruby/proto/gitaly/shared_pb.rb
@@ -37,6 +37,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
optional :committer, :message, 5, "gitaly.CommitAuthor"
repeated :parent_ids, :string, 6
optional :body_size, :int64, 7
+ optional :signature_type, :enum, 8, "gitaly.SignatureType"
end
add_message "gitaly.CommitAuthor" do
optional :name, :bytes, 1
@@ -58,6 +59,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
optional :message, :bytes, 4
optional :message_size, :int64, 5
optional :tagger, :message, 6, "gitaly.CommitAuthor"
+ optional :signature_type, :enum, 7, "gitaly.SignatureType"
end
add_message "gitaly.User" do
optional :gl_id, :string, 1
@@ -75,6 +77,11 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
value :TREE, 3
value :TAG, 4
end
+ add_enum "gitaly.SignatureType" do
+ value :NONE, 0
+ value :PGP, 1
+ value :X509, 2
+ end
end
module Gitaly
@@ -90,4 +97,5 @@ module Gitaly
User = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.User").msgclass
ObjectPool = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.ObjectPool").msgclass
ObjectType = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.ObjectType").enummodule
+ SignatureType = Google::Protobuf::DescriptorPool.generated_pool.lookup("gitaly.SignatureType").enummodule
end