patches: updated 1.13.6 balancer_status_code.patch and added patch for 1.13.8 as well.
Signed-off-by: Yichun Zhang (agentzh) <agentzh@gmail.com>
This commit is contained in:
parent
ee6b26e347
commit
30fa60ad5d
|
@ -1,8 +1,8 @@
|
||||||
diff --git a/src/http/ngx_http_upstream.c b/src/http/ngx_http_upstream.c
|
diff --git a/src/http/ngx_http_upstream.c b/src/http/ngx_http_upstream.c
|
||||||
index 0f6b3ae..56d44fc 100644
|
index f8d5707d..6efe0047 100644
|
||||||
--- a/src/http/ngx_http_upstream.c
|
--- a/src/http/ngx_http_upstream.c
|
||||||
+++ b/src/http/ngx_http_upstream.c
|
+++ b/src/http/ngx_http_upstream.c
|
||||||
@@ -1368,6 +1368,11 @@ ngx_http_upstream_connect(ngx_http_request_t *r, ngx_http_upstream_t *u)
|
@@ -1515,6 +1515,11 @@ ngx_http_upstream_connect(ngx_http_request_t *r, ngx_http_upstream_t *u)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -15,13 +15,58 @@ index 0f6b3ae..56d44fc 100644
|
||||||
|
|
||||||
if (rc == NGX_BUSY) {
|
if (rc == NGX_BUSY) {
|
||||||
diff --git a/src/http/ngx_http_upstream.h b/src/http/ngx_http_upstream.h
|
diff --git a/src/http/ngx_http_upstream.h b/src/http/ngx_http_upstream.h
|
||||||
index b288f28..9b60e12 100644
|
index 3e714e5b..dfbb25e0 100644
|
||||||
--- a/src/http/ngx_http_upstream.h
|
--- a/src/http/ngx_http_upstream.h
|
||||||
+++ b/src/http/ngx_http_upstream.h
|
+++ b/src/http/ngx_http_upstream.h
|
||||||
@@ -418,5 +418,6 @@ extern ngx_module_t ngx_http_upstream_module;
|
@@ -427,4 +427,9 @@ extern ngx_conf_bitmask_t ngx_http_upstream_cache_method_mask[];
|
||||||
extern ngx_conf_bitmask_t ngx_http_upstream_cache_method_mask[];
|
|
||||||
extern ngx_conf_bitmask_t ngx_http_upstream_ignore_headers_masks[];
|
extern ngx_conf_bitmask_t ngx_http_upstream_ignore_headers_masks[];
|
||||||
|
|
||||||
+#define HAVE_BALANCER_STATUS_CODE_PATCH
|
|
||||||
|
|
||||||
|
+#ifndef HAVE_BALANCER_STATUS_CODE_PATCH
|
||||||
|
+#define HAVE_BALANCER_STATUS_CODE_PATCH
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+
|
||||||
#endif /* _NGX_HTTP_UPSTREAM_H_INCLUDED_ */
|
#endif /* _NGX_HTTP_UPSTREAM_H_INCLUDED_ */
|
||||||
|
diff --git a/src/stream/ngx_stream.h b/src/stream/ngx_stream.h
|
||||||
|
index 09d24593..d8b4b584 100644
|
||||||
|
--- a/src/stream/ngx_stream.h
|
||||||
|
+++ b/src/stream/ngx_stream.h
|
||||||
|
@@ -27,6 +27,7 @@ typedef struct ngx_stream_session_s ngx_stream_session_t;
|
||||||
|
|
||||||
|
|
||||||
|
#define NGX_STREAM_OK 200
|
||||||
|
+#define NGX_STREAM_SPECIAL_RESPONSE 300
|
||||||
|
#define NGX_STREAM_BAD_REQUEST 400
|
||||||
|
#define NGX_STREAM_FORBIDDEN 403
|
||||||
|
#define NGX_STREAM_INTERNAL_SERVER_ERROR 500
|
||||||
|
diff --git a/src/stream/ngx_stream_proxy_module.c b/src/stream/ngx_stream_proxy_module.c
|
||||||
|
index 818d7329..329dcdc6 100644
|
||||||
|
--- a/src/stream/ngx_stream_proxy_module.c
|
||||||
|
+++ b/src/stream/ngx_stream_proxy_module.c
|
||||||
|
@@ -691,6 +691,11 @@ ngx_stream_proxy_connect(ngx_stream_session_t *s)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ if (rc >= NGX_STREAM_SPECIAL_RESPONSE) {
|
||||||
|
+ ngx_stream_proxy_finalize(s, rc);
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
u->state->peer = u->peer.name;
|
||||||
|
|
||||||
|
if (rc == NGX_BUSY) {
|
||||||
|
diff --git a/src/stream/ngx_stream_upstream.h b/src/stream/ngx_stream_upstream.h
|
||||||
|
index 73947f46..21bc0ad7 100644
|
||||||
|
--- a/src/stream/ngx_stream_upstream.h
|
||||||
|
+++ b/src/stream/ngx_stream_upstream.h
|
||||||
|
@@ -151,4 +151,9 @@ ngx_stream_upstream_srv_conf_t *ngx_stream_upstream_add(ngx_conf_t *cf,
|
||||||
|
extern ngx_module_t ngx_stream_upstream_module;
|
||||||
|
|
||||||
|
|
||||||
|
+#ifndef HAVE_BALANCER_STATUS_CODE_PATCH
|
||||||
|
+#define HAVE_BALANCER_STATUS_CODE_PATCH
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+
|
||||||
|
#endif /* _NGX_STREAM_UPSTREAM_H_INCLUDED_ */
|
||||||
|
|
|
@ -0,0 +1,72 @@
|
||||||
|
diff --git a/src/http/ngx_http_upstream.c b/src/http/ngx_http_upstream.c
|
||||||
|
index f8d5707d..6efe0047 100644
|
||||||
|
--- a/src/http/ngx_http_upstream.c
|
||||||
|
+++ b/src/http/ngx_http_upstream.c
|
||||||
|
@@ -1515,6 +1515,11 @@ ngx_http_upstream_connect(ngx_http_request_t *r, ngx_http_upstream_t *u)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ if (rc >= NGX_HTTP_SPECIAL_RESPONSE) {
|
||||||
|
+ ngx_http_upstream_finalize_request(r, u, rc);
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
u->state->peer = u->peer.name;
|
||||||
|
|
||||||
|
if (rc == NGX_BUSY) {
|
||||||
|
diff --git a/src/http/ngx_http_upstream.h b/src/http/ngx_http_upstream.h
|
||||||
|
index 3e714e5b..dfbb25e0 100644
|
||||||
|
--- a/src/http/ngx_http_upstream.h
|
||||||
|
+++ b/src/http/ngx_http_upstream.h
|
||||||
|
@@ -427,4 +427,9 @@ extern ngx_conf_bitmask_t ngx_http_upstream_cache_method_mask[];
|
||||||
|
extern ngx_conf_bitmask_t ngx_http_upstream_ignore_headers_masks[];
|
||||||
|
|
||||||
|
|
||||||
|
+#ifndef HAVE_BALANCER_STATUS_CODE_PATCH
|
||||||
|
+#define HAVE_BALANCER_STATUS_CODE_PATCH
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+
|
||||||
|
#endif /* _NGX_HTTP_UPSTREAM_H_INCLUDED_ */
|
||||||
|
diff --git a/src/stream/ngx_stream.h b/src/stream/ngx_stream.h
|
||||||
|
index 09d24593..d8b4b584 100644
|
||||||
|
--- a/src/stream/ngx_stream.h
|
||||||
|
+++ b/src/stream/ngx_stream.h
|
||||||
|
@@ -27,6 +27,7 @@ typedef struct ngx_stream_session_s ngx_stream_session_t;
|
||||||
|
|
||||||
|
|
||||||
|
#define NGX_STREAM_OK 200
|
||||||
|
+#define NGX_STREAM_SPECIAL_RESPONSE 300
|
||||||
|
#define NGX_STREAM_BAD_REQUEST 400
|
||||||
|
#define NGX_STREAM_FORBIDDEN 403
|
||||||
|
#define NGX_STREAM_INTERNAL_SERVER_ERROR 500
|
||||||
|
diff --git a/src/stream/ngx_stream_proxy_module.c b/src/stream/ngx_stream_proxy_module.c
|
||||||
|
index 818d7329..329dcdc6 100644
|
||||||
|
--- a/src/stream/ngx_stream_proxy_module.c
|
||||||
|
+++ b/src/stream/ngx_stream_proxy_module.c
|
||||||
|
@@ -691,6 +691,11 @@ ngx_stream_proxy_connect(ngx_stream_session_t *s)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ if (rc >= NGX_STREAM_SPECIAL_RESPONSE) {
|
||||||
|
+ ngx_stream_proxy_finalize(s, rc);
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
u->state->peer = u->peer.name;
|
||||||
|
|
||||||
|
if (rc == NGX_BUSY) {
|
||||||
|
diff --git a/src/stream/ngx_stream_upstream.h b/src/stream/ngx_stream_upstream.h
|
||||||
|
index 73947f46..21bc0ad7 100644
|
||||||
|
--- a/src/stream/ngx_stream_upstream.h
|
||||||
|
+++ b/src/stream/ngx_stream_upstream.h
|
||||||
|
@@ -151,4 +151,9 @@ ngx_stream_upstream_srv_conf_t *ngx_stream_upstream_add(ngx_conf_t *cf,
|
||||||
|
extern ngx_module_t ngx_stream_upstream_module;
|
||||||
|
|
||||||
|
|
||||||
|
+#ifndef HAVE_BALANCER_STATUS_CODE_PATCH
|
||||||
|
+#define HAVE_BALANCER_STATUS_CODE_PATCH
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+
|
||||||
|
#endif /* _NGX_STREAM_UPSTREAM_H_INCLUDED_ */
|
Loading…
Reference in New Issue