changes since v3: - improve readability of prereq setup code by using heredoc and some variables changes since v2: - fix swich/case indentation - BUG() on unknown payload types - improve test prereq by actually validating ssh-keygen functionality changes since v1: - struct signature_check is now used to input payload data into check_function - payload metadata parsing is completely internal to check_signature. the caller only need to set the payload type in the sigc struct - small nits and readability fixes - removed payload_signer parameter. since we now use the struct we can extend this later. Fabian Stelzer (7): ssh signing: use sigc struct to pass payload ssh signing: add key lifetime test prereqs ssh signing: make verify-commit consider key lifetime ssh signing: make git log verify key lifetime ssh signing: make verify-tag consider key lifetime ssh signing: make fmt-merge-msg consider key lifetime ssh signing: verify ssh-keygen in test prereq Documentation/config/gpg.txt | 5 ++ builtin/receive-pack.c | 6 ++- commit.c | 6 ++- fmt-merge-msg.c | 5 +- gpg-interface.c | 90 +++++++++++++++++++++++++------- gpg-interface.h | 15 ++++-- log-tree.c | 10 ++-- t/lib-gpg.sh | 62 ++++++++++++++++++---- t/t4202-log.sh | 43 +++++++++++++++ t/t6200-fmt-merge-msg.sh | 54 +++++++++++++++++++ t/t7031-verify-tag-signed-ssh.sh | 42 +++++++++++++++ t/t7528-signed-commit-ssh.sh | 42 +++++++++++++++ tag.c | 5 +- 13 files changed, 341 insertions(+), 44 deletions(-) Range-diff against v3: 1: 9f71fd8639 = 1: c4447d30f2 ssh signing: use sigc struct to pass payload 2: 5ee143bc38 = 2: 0bb1617529 ssh signing: add key lifetime test prereqs 3: 3183e84e2e = 3: f60bd1efd0 ssh signing: make verify-commit consider key lifetime 4: e35515867c = 4: 5fc0ad5c37 ssh signing: make git log verify key lifetime 5: e20177d950 = 5: f1c225871f ssh signing: make verify-tag consider key lifetime 6: 2af2b6d098 = 6: 1cbd4dbb6b ssh signing: make fmt-merge-msg consider key lifetime 7: e6e2236a52 < -: ---------- ssh signing: verify ssh-keygen in test prereq -: ---------- > 7: d60f4ec82c ssh signing: verify ssh-keygen in test prereq base-commit: abe6bb3905392d5eb6b01fa6e54d7e784e0522aa -- 2.31.1