summaryrefslogtreecommitdiff
path: root/connect.c
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <gitster@pobox.com>2018-05-23 14:38:15 +0900
committerLibravatar Junio C Hamano <gitster@pobox.com>2018-05-23 14:38:15 +0900
commit41267e96972d5a158298f777caecd7433a1b1a94 (patch)
treec2203a195e741d750bfb5d65057f1fe06d140b00 /connect.c
parentMerge branch 'nd/repack-keep-pack' (diff)
parentfetch: send server options when using protocol v2 (diff)
downloadtgif-41267e96972d5a158298f777caecd7433a1b1a94.tar.xz
Merge branch 'bw/server-options'
The transport protocol v2 is getting updated further. * bw/server-options: fetch: send server options when using protocol v2 ls-remote: send server options when using protocol v2 serve: introduce the server-option capability
Diffstat (limited to 'connect.c')
-rw-r--r--connect.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/connect.c b/connect.c
index b34dc80451..31aa9c8433 100644
--- a/connect.c
+++ b/connect.c
@@ -408,7 +408,8 @@ out:
struct ref **get_remote_refs(int fd_out, struct packet_reader *reader,
struct ref **list, int for_push,
- const struct argv_array *ref_prefixes)
+ const struct argv_array *ref_prefixes,
+ const struct string_list *server_options)
{
int i;
*list = NULL;
@@ -419,6 +420,12 @@ struct ref **get_remote_refs(int fd_out, struct packet_reader *reader,
if (server_supports_v2("agent", 0))
packet_write_fmt(fd_out, "agent=%s", git_user_agent_sanitized());
+ if (server_options && server_options->nr &&
+ server_supports_v2("server-option", 1))
+ for (i = 0; i < server_options->nr; i++)
+ packet_write_fmt(fd_out, "server-option=%s",
+ server_options->items[i].string);
+
packet_delim(fd_out);
/* When pushing we don't want to request the peeled tags */
if (!for_push)