summaryrefslogtreecommitdiff
path: root/libmysql/libmysql.c
diff options
context:
space:
mode:
authortnurnberg@sin.intern.azundris.com <>2007-09-15 04:09:38 +0200
committertnurnberg@sin.intern.azundris.com <>2007-09-15 04:09:38 +0200
commitd5174aad89e82cc0140150144bde581842238c2e (patch)
treee53fd604dfbb3db1190c5c65e2a83a9faa64e25c /libmysql/libmysql.c
parent8e22343c583651a48fe5dbb45711ed960e49b708 (diff)
parent3c6ca8d6edf55764df93a831f61dc3855e82d91c (diff)
downloadmariadb-git-d5174aad89e82cc0140150144bde581842238c2e.tar.gz
Merge mysql.com:/home/tnurnberg/15327/50-15327
into mysql.com:/home/tnurnberg/15327/51-15327
Diffstat (limited to 'libmysql/libmysql.c')
-rw-r--r--libmysql/libmysql.c21
1 files changed, 17 insertions, 4 deletions
diff --git a/libmysql/libmysql.c b/libmysql/libmysql.c
index a05d061204b..b7568851b5b 100644
--- a/libmysql/libmysql.c
+++ b/libmysql/libmysql.c
@@ -133,10 +133,23 @@ int STDCALL mysql_server_init(int argc __attribute__((unused)),
{
struct servent *serv_ptr;
char *env;
- if ((serv_ptr = getservbyname("mysql", "tcp")))
- mysql_port = (uint) ntohs((ushort) serv_ptr->s_port);
- if ((env = getenv("MYSQL_TCP_PORT")))
- mysql_port =(uint) atoi(env);
+
+ /*
+ if builder specifically requested a default port, use that
+ (even if it coincides with our factory default).
+ only if they didn't do we check /etc/services (and, failing
+ on that, fall back to the factory default of 3306).
+ either default can be overridden by the environment variable
+ MYSQL_TCP_PORT, which in turn can be overridden with command
+ line options.
+ */
+
+#if MYSQL_PORT_DEFAULT == 0
+ if ((serv_ptr = getservbyname("mysql", "tcp")))
+ mysql_port = (uint) ntohs((ushort) serv_ptr->s_port);
+#endif
+ if ((env = getenv("MYSQL_TCP_PORT")))
+ mysql_port =(uint) atoi(env);
}
#endif
}