Commit 956ba48bdd488d4e22dd5a468df952765b8c9824

Edward Thomson 2019-03-14T10:36:40

http: increase the replay count Increase the permissible replay count; with multiple-step authentication schemes (NTLM, Negotiate), proxy authentication and redirects, we need to be mindful of the number of steps it takes to get connected. 7 seems high but can be exhausted quickly with just a single authentication failure over a redirected multi-state authentication pipeline.

diff --git a/src/transports/http.c b/src/transports/http.c
index d4156da..bd3f812 100644
--- a/src/transports/http.c
+++ b/src/transports/http.c
@@ -108,7 +108,7 @@ typedef struct {
 	int parse_error;
 	int error;
 	unsigned parse_finished : 1,
-	    replay_count : 3;
+	    replay_count : 4;
 } http_subtransport;
 
 typedef struct {
diff --git a/src/transports/http.h b/src/transports/http.h
index b094757..ddaab0b 100644
--- a/src/transports/http.h
+++ b/src/transports/http.h
@@ -10,7 +10,7 @@
 
 #include "buffer.h"
 
-#define GIT_HTTP_REPLAY_MAX 7
+#define GIT_HTTP_REPLAY_MAX 15
 
 GIT_INLINE(int) git_http__user_agent(git_buf *buf)
 {