From: Hervé COMMOWICK Date: Fri, 10 Jun 2011 12:05:59 +0000 (+0200) Subject: [BUG] checks: fix support of Mysqld >= 5.5 for mysql-check X-Git-Tag: v1.5-dev8~220 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=212f778d6a7ffe270cdeaed7fc9a29891c4962cd;p=thirdparty%2Fhaproxy.git [BUG] checks: fix support of Mysqld >= 5.5 for mysql-check mysqld >= 5.5 want the client to announce 4.1+ authentication support, even if we have no password, so we do this. I also check on a debian potato mysqld 3.22 and it works too so i assume we are good from 3.22 to 5.5. [WT: this must be backported to 1.4] --- diff --git a/doc/configuration.txt b/doc/configuration.txt index b22ac98935..dde0c5411c 100644 --- a/doc/configuration.txt +++ b/doc/configuration.txt @@ -3583,7 +3583,7 @@ option mysql-check [ user ] Remember that this does not check database presence nor database consistency. To do this, you can use an external check with xinetd for example. - The check requires MySQL >=4.0, for older version, please use TCP check. + The check requires MySQL >=3.22, for older version, please use TCP check. Most often, an incoming MySQL server needs to see the client's IP address for various purposes, including IP privilege matching and connection logging. diff --git a/src/cfgparse.c b/src/cfgparse.c index 7a572fbdf1..2a08594440 100644 --- a/src/cfgparse.c +++ b/src/cfgparse.c @@ -3476,6 +3476,7 @@ stats_error_parsing: ((unsigned char) (packetlen >> 16) & 0xff)); curproxy->check_req[3] = 1; + curproxy->check_req[5] = 128; curproxy->check_req[8] = 1; memcpy(&curproxy->check_req[9], mysqluser, userlen); curproxy->check_req[9 + userlen + 1 + 1] = 1;