Only use valid server credentials
The server credentials are only used if both the monuser and monpw parameters are defined. This is a sort of a bugfix as a monitor connection could use a username from server but a password from the monitor.
This commit is contained in:
parent
c08a637564
commit
bbd3e13a54
@ -1058,8 +1058,15 @@ mon_connect_to_db(MONITOR* mon, MONITOR_SERVERS *database)
|
||||
|
||||
if ((database->con = mysql_init(NULL)))
|
||||
{
|
||||
char *uname = database->server->monuser ? database->server->monuser : mon->user;
|
||||
char *passwd = database->server->monpw ? database->server->monpw : mon->password;
|
||||
char *uname = mon->user;
|
||||
char *passwd = mon->password;
|
||||
|
||||
if (database->server->monuser[0] && database->server->monpw[0])
|
||||
{
|
||||
uname = database->server->monuser;
|
||||
passwd = database->server->monpw;
|
||||
}
|
||||
|
||||
char *dpwd = decryptPassword(passwd);
|
||||
|
||||
mysql_options(database->con, MYSQL_OPT_CONNECT_TIMEOUT, (void *) &mon->connect_timeout);
|
||||
|
@ -688,15 +688,9 @@ monitorDatabase(MONITOR *mon, MONITOR_SERVERS *database)
|
||||
MYSQL_MONITOR* handle = mon->handle;
|
||||
MYSQL_ROW row;
|
||||
MYSQL_RES *result;
|
||||
char *uname = mon->user;
|
||||
unsigned long int server_version = 0;
|
||||
char *server_string;
|
||||
|
||||
if (!database->server->monuser[0])
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
/* Don't probe servers in maintenance mode */
|
||||
if (SERVER_IN_MAINT(database->server))
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user