From c3733e56410d5bc73fcca0df8e062f84a0565f90 Mon Sep 17 00:00:00 2001 From: Matt Burke Date: Fri, 4 Sep 2015 08:56:26 -0400 Subject: [PATCH] Add more headers to HTTP requests --- src/transports/http.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/transports/http.c b/src/transports/http.c index 87f3ee816..f9e5da2b1 100644 --- a/src/transports/http.c +++ b/src/transports/http.c @@ -54,6 +54,7 @@ typedef struct { char *redirect_url; const char *verb; char *chunk_buffer; + git_strarray *extra_headers; unsigned chunk_buffer_len; unsigned sent_request : 1, received_response : 1, @@ -193,6 +194,7 @@ static int gen_request( { http_subtransport *t = OWNING_SUBTRANSPORT(s); const char *path = t->connection_data.path ? t->connection_data.path : "/"; + size_t i; git_buf_printf(buf, "%s %s%s HTTP/1.1\r\n", s->verb, path, s->service_url); @@ -210,6 +212,13 @@ static int gen_request( } else git_buf_puts(buf, "Accept: */*\r\n"); + if (s->extra_headers) { + for (i = 0; i < s->extra_headers->count; i++) { + git_buf_puts(buf, s->extra_headers->strings[i]); + git_buf_puts(buf, "\r\n"); + } + } + /* Apply credentials to the request */ if (apply_credentials(buf, t) < 0) return -1;