git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v4 0/7] X509 (gpgsm) commit signing support

From
Henning Schild <henning.schild@siemens.com>
Date
Jul 17, 2018, 12:50 UTC
Message-ID
<cover.1531831244.git.henning.schild@siemens.com>
Changes in v4:
 - make gpg.format matching case sensitive
 - (final?) coding style and wording changes
Changes in v3:
 - drop patches 1 and 2 known from < v3, see pu hs/push-cert-check-cleanup
 - dropped some testcases from p6, added two t7004 bad key/sig
 - ship a binary x509 certificate for tests, no generation anymore
 - silence gpgsm in tests
 - switch all tests to use test_config instead of "git config"
 - p4 deal with invalid input
 - p3 several refactorings, see "PATCH v2 5/9" discussion
Changes in v2:
 - removed trailing commas in array initializers and add leading space
 - replaced assert(0) with BUG in p5
 - consolidated 2 format lookups reusing get_format_data p5
 - changed from format "PGP" to "openpgp", later X509 to "x509"
 - use strcasecmp instead of strcmp for format matching
 - introduce gpg.<format>.program in p8, no gpg.programX509 anymore
 - moved t/7510 patch inbetween the two patches changing validation code
 - changed t/7510 patch to use test_config and test_must_fail
This series adds support for signing commits with gpgsm.

The first 5 patches prepare for the introduction of the actual feature in patch 6. Finally patch 7 extends the testsuite to cover the new feature.

This series can be seen as a follow up of a series that appeared under the name "gpg-interface: Multiple signing tools" in april 2018 [1]. After that series was not merged i decided to get my patches ready. The original series aimed at being generic for any sort of signing tool, while this series just introduced the X509 variant of gpg. (gpgsm) I collected authors and reviewers of that first series and already put them on cc.

[1] https://public-inbox.org/git/20180409204129.43537-1-mastahyeti@gmail.com/
Henning Schild (7):
  gpg-interface: add new config to select how to sign a commit
  t/t7510: check the validation of the new config gpg.format
  gpg-interface: introduce an abstraction for multiple gpg formats
  gpg-interface: do not hardcode the key string len anymore
  gpg-interface: introduce new config to select per gpg format program
  gpg-interface: introduce new signature format "x509" using gpgsm
  gpg-interface t: extend the existing GPG tests with GPGSM
 Documentation/config.txt   |  10 +++++
 gpg-interface.c            | 108 +++++++++++++++++++++++++++++++++++++--------
 t/lib-gpg.sh               |  28 +++++++++++-
 t/lib-gpg/gpgsm-gen-key.in |   8 ++++
 t/lib-gpg/gpgsm_cert.p12   | Bin 0 -> 2652 bytes
 t/t4202-log.sh             |  39 ++++++++++++++++
 t/t5534-push-signed.sh     |  52 ++++++++++++++++++++++
 t/t7004-tag.sh             |  13 ++++++
 t/t7030-verify-tag.sh      |  33 ++++++++++++++
 t/t7510-signed-commit.sh   |   9 ++++
 10 files changed, 281 insertions(+), 19 deletions(-)
 create mode 100644 t/lib-gpg/gpgsm-gen-key.in
 create mode 100644 t/lib-gpg/gpgsm_cert.p12
-- 
2.16.4
Next: Henning Schild
Message 1 of 24 in “X509 (gpgsm) commit signing support”
  1. 0/7 X509 (gpgsm) commit signing supportHenning Schild, Jul 17, 2018
  2. 2/7 t/t7510: check the validation of the new config gpg.formatHenning Schild, Jul 17, 2018
  3. Junio C HamanoJul 17, 2018
  4. Henning SchildJul 18, 2018
  5. 2/7 t/t7510: check the validation of the new config gpg.formatHenning Schild, Jul 18, 2018
  6. 4/7 gpg-interface: do not hardcode the key string len anymoreHenning Schild, Jul 17, 2018
  7. Junio C HamanoJul 17, 2018
  8. 3/7 gpg-interface: introduce an abstraction for multiple gpg formatsHenning Schild, Jul 17, 2018
  9. Junio C HamanoJul 17, 2018
  10. 5/7 gpg-interface: introduce new config to select per gpg format programHenning Schild, Jul 17, 2018
  11. 1/7 gpg-interface: add new config to select how to sign a commitHenning Schild, Jul 17, 2018
  12. 7/7 gpg-interface t: extend the existing GPG tests with GPGSMHenning Schild, Jul 17, 2018
  13. Junio C HamanoJul 17, 2018
  14. Henning SchildJul 18, 2018
  15. Junio C HamanoJul 18, 2018
  16. t/t5534: do not unset GIT_COMMITTER_EMAIL for other testsHenning Schild, Jul 19, 2018
  17. Henning SchildJul 19, 2018
  18. Junio C HamanoJul 19, 2018
  19. Henning SchildJul 20, 2018
  20. Taylor BlauJul 19, 2018
  21. 7/7 gpg-interface t: extend the existing GPG tests with GPGSMHenning Schild, Jul 18, 2018
  22. 7/7 gpg-interface t: extend the existing GPG tests with GPGSMHenning Schild, Jul 20, 2018
  23. Junio C HamanoJul 20, 2018
  24. 6/7 gpg-interface: introduce new signature format "x509" using gpgsmHenning Schild, Jul 17, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.