summaryrefslogtreecommitdiff
path: root/sql/mysqld.cc
diff options
context:
space:
mode:
authorAlexander Nozdrin <alexander.nozdrin@oracle.com>2012-04-27 21:14:35 +0400
committerAlexander Nozdrin <alexander.nozdrin@oracle.com>2012-04-27 21:14:35 +0400
commitbcc3d5ce252cbc90b2c190f12484ca453c69538a (patch)
tree1fe4b1f52215d3ed7c2d295115bc3537b291c827 /sql/mysqld.cc
parent5f4c6942bfc6b88a8e934decfcf2f991bce6628e (diff)
downloadmariadb-git-bcc3d5ce252cbc90b2c190f12484ca453c69538a.tar.gz
Third attempt to do a follow-up for Bug#12762885 - 61713: MYSQL WILL NOT BIND
TO "LOCALHOST" IF LOCALHOST IS BOTH IPV4/IPV6 ENABLED. Previous commit comments were wrong. The default value has always been NULL. The original patch for Bug#12762885 just makes it visible in the logs. This patch uses "0.0.0.0" string if bind-address is not set.
Diffstat (limited to 'sql/mysqld.cc')
-rw-r--r--sql/mysqld.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/sql/mysqld.cc b/sql/mysqld.cc
index 547378d4661..63656460f42 100644
--- a/sql/mysqld.cc
+++ b/sql/mysqld.cc
@@ -1840,9 +1840,13 @@ static void network_init(void)
{
struct addrinfo *ai, *a;
struct addrinfo hints;
+ const char *bind_address= my_bind_addr_str;
+
+ if (!bind_address)
+ bind_address= "0.0.0.0";
sql_print_information("Server hostname (bind-address): '%s'; port: %d",
- my_bind_addr_str, mysqld_port);
+ bind_address, mysqld_port);
// Get list of IP-addresses associated with the server hostname.
bzero(&hints, sizeof (hints));
@@ -1851,7 +1855,7 @@ static void network_init(void)
hints.ai_family= AF_UNSPEC;
my_snprintf(port_buf, NI_MAXSERV, "%d", mysqld_port);
- if (getaddrinfo(my_bind_addr_str, port_buf, &hints, &ai))
+ if (getaddrinfo(bind_address, port_buf, &hints, &ai))
{
sql_perror(ER_DEFAULT(ER_IPSOCK_ERROR)); /* purecov: tested */
sql_print_error("Can't start server: cannot resolve hostname!");
@@ -1871,7 +1875,7 @@ static void network_init(void)
}
sql_print_information(" - '%s' resolves to '%s';",
- my_bind_addr_str, ip_addr);
+ bind_address, ip_addr);
}
/*