summaryrefslogtreecommitdiff
path: root/libmysql/libmysql.c
diff options
context:
space:
mode:
authortnurnberg@sin.intern.azundris.com <>2007-09-15 04:45:20 +0200
committertnurnberg@sin.intern.azundris.com <>2007-09-15 04:45:20 +0200
commit7451aaf48cd13d4bd2e8f3f46c2a15e35b04a104 (patch)
tree28572ba8a4ea5db35b3b2971f18422597f5a6511 /libmysql/libmysql.c
parent9fead4bd6acd003be5402254f9dc0292a83ab272 (diff)
parent3c6ca8d6edf55764df93a831f61dc3855e82d91c (diff)
downloadmariadb-git-7451aaf48cd13d4bd2e8f3f46c2a15e35b04a104.tar.gz
Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into mysql.com:/home/tnurnberg/15327/50-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 85c56a7ea40..fc20296e6cb 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
}