[CLEANUP] proxy: move PR_O_SSL3_CHK to options2 to release one flag
We'll need another flag in the 'options' member close to PR_O_TPXY_*,
and all are used, so let's move this easy one to options2 (which are
already used for SQL checks).
diff --git a/include/types/proxy.h b/include/types/proxy.h
index 53c00f7..13b5f2a 100644
--- a/include/types/proxy.h
+++ b/include/types/proxy.h
@@ -94,7 +94,6 @@
#define PR_O_FORCE_CLO 0x00200000 /* enforce the connection close immediately after server response */
#define PR_O_TCP_NOLING 0x00400000 /* disable lingering on client and server connections */
#define PR_O_ABRT_CLOSE 0x00800000 /* immediately abort request when client closes */
-#define PR_O_SSL3_CHK 0x01000000 /* use SSLv3 CLIENT_HELLO packets for server health */
/* TPXY: exclusive values */
#define PR_O_TPXY_ADDR 0x02000000 /* bind to this non-local address when connect()ing */
@@ -137,6 +136,7 @@
#define PR_O2_MYSQL_CHK 0x00020000 /* use MYSQL check for server health */
#define PR_O2_USE_PXHDR 0x00040000 /* use Proxy-Connection for proxy requests */
#define PR_O2_CHK_SNDST 0x00080000 /* send the state of each server along with HTTP health checks */
+#define PR_O2_SSL3_CHK 0x00100000 /* use SSLv3 CLIENT_HELLO packets for server health */
/* end of proxy->options2 */
/* bits for sticking rules */
diff --git a/src/cfgparse.c b/src/cfgparse.c
index 645c631..b647ff2 100644
--- a/src/cfgparse.c
+++ b/src/cfgparse.c
@@ -2667,8 +2667,8 @@
/* use HTTP request to check servers' health */
free(curproxy->check_req);
curproxy->check_req = NULL;
- curproxy->options &= ~PR_O_SSL3_CHK;
curproxy->options &= ~PR_O_SMTP_CHK;
+ curproxy->options2 &= ~PR_O2_SSL3_CHK;
curproxy->options2 &= ~PR_O2_MYSQL_CHK;
curproxy->options |= PR_O_HTTP_CHK;
if (!*args[2]) { /* no argument */
@@ -2701,14 +2701,14 @@
curproxy->options &= ~PR_O_HTTP_CHK;
curproxy->options &= ~PR_O_SMTP_CHK;
curproxy->options2 &= ~PR_O2_MYSQL_CHK;
- curproxy->options |= PR_O_SSL3_CHK;
+ curproxy->options2 |= PR_O2_SSL3_CHK;
}
else if (!strcmp(args[1], "smtpchk")) {
/* use SMTP request to check servers' health */
free(curproxy->check_req);
curproxy->check_req = NULL;
curproxy->options &= ~PR_O_HTTP_CHK;
- curproxy->options &= ~PR_O_SSL3_CHK;
+ curproxy->options2 &= ~PR_O2_SSL3_CHK;
curproxy->options2 &= ~PR_O2_MYSQL_CHK;
curproxy->options |= PR_O_SMTP_CHK;
@@ -2734,8 +2734,8 @@
free(curproxy->check_req);
curproxy->check_req = NULL;
curproxy->options &= ~PR_O_HTTP_CHK;
- curproxy->options &= ~PR_O_SSL3_CHK;
curproxy->options &= ~PR_O_SMTP_CHK;
+ curproxy->options2 &= ~PR_O2_SSL3_CHK;
curproxy->options2 |= PR_O2_MYSQL_CHK;
}
else if (!strcmp(args[1], "forwardfor")) {
@@ -4915,7 +4915,7 @@
}
}
- if (curproxy->options & PR_O_SSL3_CHK) {
+ if (curproxy->options2 & PR_O2_SSL3_CHK) {
curproxy->check_len = sizeof(sslv3_client_hello_pkt) - 1;
curproxy->check_req = (char *)malloc(curproxy->check_len);
memcpy(curproxy->check_req, sslv3_client_hello_pkt, curproxy->check_len);
diff --git a/src/checks.c b/src/checks.c
index e6fec7d..d326625 100644
--- a/src/checks.c
+++ b/src/checks.c
@@ -741,8 +741,8 @@
if (!(s->result & SRV_CHK_ERROR)) {
/* we don't want to mark 'UP' a server on which we detected an error earlier */
if ((s->proxy->options & PR_O_HTTP_CHK) ||
- (s->proxy->options & PR_O_SSL3_CHK) ||
(s->proxy->options & PR_O_SMTP_CHK) ||
+ (s->proxy->options2 & PR_O2_SSL3_CHK) ||
(s->proxy->options2 & PR_O2_MYSQL_CHK)) {
int ret;
const char *check_req = s->proxy->check_req;
@@ -752,7 +752,7 @@
* so we'll send the request, and won't wake the checker up now.
*/
- if (s->proxy->options & PR_O_SSL3_CHK) {
+ if (s->proxy->options2 & PR_O2_SSL3_CHK) {
/* SSL requires that we put Unix time in the request */
int gmt_time = htonl(date.tv_sec);
memcpy(s->proxy->check_req + 11, &gmt_time, 4);
@@ -956,7 +956,7 @@
set_server_check_status(s, HCHK_STATUS_L7STS, desc);
}
}
- else if (s->proxy->options & PR_O_SSL3_CHK) {
+ else if (s->proxy->options2 & PR_O2_SSL3_CHK) {
if (!done && s->check_data_len < 5)
goto wait_more_data;
@@ -1359,7 +1359,7 @@
if (!EV_FD_ISSET(fd, DIR_RD)) {
set_server_check_status(s, HCHK_STATUS_L4TOUT, NULL);
} else {
- if (s->proxy->options & PR_O_SSL3_CHK)
+ if (s->proxy->options2 & PR_O2_SSL3_CHK)
set_server_check_status(s, HCHK_STATUS_L6TOUT, NULL);
else /* HTTP, SMTP */
set_server_check_status(s, HCHK_STATUS_L7TOUT, NULL);