From: Junio C Hamano <gitster@pobox.com>
To: git@vger.kernel.org
Subject: [PATCH v6 00/23] Signed push
Date: Wed, 17 Sep 2014 15:45:35 -0700 [thread overview]
Message-ID: <1410993958-32394-1-git-send-email-gitster@pobox.com> (raw)
No changes to the earlier 20 patches in the series since the last
round ($gmane/257087). The last three patches in the series have
been reworked and reordered to:
- plug a small leak in replay prevention code;
- smart HTTP integration and test are in a single patch;
- handling of a stale nonce in smart HTTP mode was reworked.
I think this round is ready for 'next'. Those who work on various
reimplementations of Git may want to start thinking about adding
support for the "push-cert" feature in their receive-pack, and those
who use server-side pre-receive/post-receive hooks (Gitolite, I am
looking at you ;-) may want to start planning to take advantage of
it.
Junio C Hamano (23):
receive-pack: do not overallocate command structure
receive-pack: parse feature request a bit earlier
receive-pack: do not reuse old_sha1[] for other things
receive-pack: factor out queueing of command
send-pack: move REF_STATUS_REJECT_NODELETE logic a bit higher
send-pack: refactor decision to send update per ref
send-pack: always send capabilities
send-pack: factor out capability string generation
receive-pack: factor out capability string generation
send-pack: rename "new_refs" to "need_pack_data"
send-pack: refactor inspecting and resetting status and sending commands
send-pack: clarify that cmds_sent is a boolean
gpg-interface: move parse_gpg_output() to where it should be
gpg-interface: move parse_signature() to where it should be
pack-protocol doc: typofix for PKT-LINE
push: the beginning of "git push --signed"
receive-pack: GPG-validate push certificates
send-pack: send feature request on push-cert packet
signed push: remove duplicated protocol info
signed push: add "pushee" header to push certificate
signed push: fortify against replay attacks
signed push: teach smart-HTTP to pass "git push --signed" around
signed push: allow stale nonce in stateless mode
Documentation/config.txt | 19 ++
Documentation/git-push.txt | 9 +-
Documentation/git-receive-pack.txt | 65 +++-
Documentation/technical/pack-protocol.txt | 49 ++-
Documentation/technical/protocol-capabilities.txt | 13 +-
builtin/push.c | 1 +
builtin/receive-pack.c | 393 +++++++++++++++++++---
builtin/send-pack.c | 4 +
commit.c | 36 --
gpg-interface.c | 57 ++++
gpg-interface.h | 17 +-
remote-curl.c | 13 +-
send-pack.c | 201 ++++++++---
send-pack.h | 2 +
t/lib-httpd/apache.conf | 1 +
t/t5534-push-signed.sh | 127 +++++++
t/t5541-http-push-smart.sh | 41 +++
t/test-lib.sh | 3 +-
tag.c | 20 --
tag.h | 1 -
transport-helper.c | 9 +-
transport.c | 5 +
transport.h | 5 +
23 files changed, 932 insertions(+), 159 deletions(-)
create mode 100755 t/t5534-push-signed.sh
--
2.1.0-403-g099cf47
next reply other threads:[~2014-09-17 22:46 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-17 22:45 Junio C Hamano [this message]
2014-09-17 22:45 ` [PATCH v6 01/23] receive-pack: do not overallocate command structure Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 02/23] receive-pack: parse feature request a bit earlier Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 03/23] receive-pack: do not reuse old_sha1[] for other things Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 04/23] receive-pack: factor out queueing of command Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 05/23] send-pack: move REF_STATUS_REJECT_NODELETE logic a bit higher Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 06/23] send-pack: refactor decision to send update per ref Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 07/23] send-pack: always send capabilities Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 08/23] send-pack: factor out capability string generation Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 09/23] receive-pack: " Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 10/23] send-pack: rename "new_refs" to "need_pack_data" Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 11/23] send-pack: refactor inspecting and resetting status and sending commands Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 12/23] send-pack: clarify that cmds_sent is a boolean Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 13/23] gpg-interface: move parse_gpg_output() to where it should be Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 14/23] gpg-interface: move parse_signature() " Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 15/23] pack-protocol doc: typofix for PKT-LINE Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 16/23] push: the beginning of "git push --signed" Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 17/23] receive-pack: GPG-validate push certificates Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 18/23] send-pack: send feature request on push-cert packet Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 19/23] signed push: remove duplicated protocol info Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 20/23] signed push: add "pushee" header to push certificate Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 21/23] signed push: fortify against replay attacks Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 22/23] signed push: teach smart-HTTP to pass "git push --signed" around Junio C Hamano
2014-09-17 22:45 ` [PATCH v6 23/23] signed push: allow stale nonce in stateless mode Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1410993958-32394-1-git-send-email-gitster@pobox.com \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).