Check if socket server is MaxScale service

We need to handle the case that a MaxScale service is used as a
server over Unix domain sockets.
This commit is contained in:
Johan Wikman
2019-06-19 16:51:14 +03:00
parent 03a7850de4
commit 1fbb57f9b2
3 changed files with 44 additions and 4 deletions

View File

@ -914,10 +914,17 @@ bool SERVER::is_mxs_service()
bool rval = false;
/** Do a coarse check for local server pointing to a MaxScale service */
if (strcmp(address, "127.0.0.1") == 0
|| strcmp(address, "::1") == 0
|| strcmp(address, "localhost") == 0
|| strcmp(address, "localhost.localdomain") == 0)
if (address[0] == '/')
{
if (service_socket_is_used(address))
{
rval = true;
}
}
else if (strcmp(address, "127.0.0.1") == 0
|| strcmp(address, "::1") == 0
|| strcmp(address, "localhost") == 0
|| strcmp(address, "localhost.localdomain") == 0)
{
if (service_port_is_used(port))
{