From e42d5a20fd7b898a2a2143d0899078961d46a3fb Mon Sep 17 00:00:00 2001
From: Mark Spencer <markster@digium.com>
Date: Thu, 4 Sep 2003 04:20:43 +0000
Subject: [PATCH] More mysql patches

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1472 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 apps/Makefile         |  7 ++++++-
 apps/app_voicemail2.c | 12 +++++++++---
 2 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/apps/Makefile b/apps/Makefile
index cf728cfb4a..1fec5c14b6 100755
--- a/apps/Makefile
+++ b/apps/Makefile
@@ -11,10 +11,11 @@
 # the GNU General Public License
 #
 
-USE_MYSQL_VM_INTERFACE=0
+USE_MYSQL_VM_INTERFACE=1
 
 MLFLAGS=
 ifeq ($(USE_MYSQL_VM_INTERFACE),1)
+CFLAGS+=-DUSEMYSQLVM
 CFLAGS+=$(shell if [ -d /usr/local/mysql/include ]; then echo "-I/usr/local/mysql/include"; fi)
 CFLAGS+=$(shell if [ -d /usr/include/mysql ]; then echo "-I/usr/include/mysql"; fi)
 CFLAGS+=$(shell if [ -d /usr/local/include/mysql ]; then echo "-I/usr/local/include/mysql"; fi)
@@ -65,7 +66,11 @@ app_todd.so: app_todd.o
 	$(CC) -shared -Xlinker -x -o $@ $< -L/usr/local/ssl/lib -lssl -lcrypto
 
 app_voicemail2.so : app_voicemail2.o
+ifeq ($(USE_MYSQL_VM_INTERFACE),1)
+	$(CC) -shared -Xlinker -x -o $@ $(MLFLAGS) $< -lmysqlclient -lz
+else
 	$(CC) -shared -Xlinker -x -o $@ $(MLFLAGS) $<
+endif
 
 app_sql_postgres.o: app_sql_postgres.c
 	$(CC) -pipe -I/usr/local/pgsql/include $(CFLAGS) -c -o app_sql_postgres.o app_sql_postgres.c
diff --git a/apps/app_voicemail2.c b/apps/app_voicemail2.c
index 9e00869b40..7fb3b4388f 100755
--- a/apps/app_voicemail2.c
+++ b/apps/app_voicemail2.c
@@ -35,7 +35,7 @@
 #include <sys/stat.h>
 #include <time.h>
 #ifdef USEMYSQLVM
-#include <mysql/mysql.h>
+#include <mysql.h>
 #endif
 
 #include <pthread.h>
@@ -186,6 +186,7 @@ MYSQL *dbhandler=NULL;
 ast_mutex_t mysqllock;
 char dbuser[80];
 char dbpass[80];
+char dbhost[80];
 char dbname[80];
 
 static int mysql_login(void)
@@ -193,11 +194,11 @@ static int mysql_login(void)
 	ast_verbose( VERBOSE_PREFIX_3 "Logging into database with user %s, password %s, and database %s\n", dbuser, dbpass, dbname);
 
 	dbhandler=mysql_init(NULL);
-	if (!mysql_real_connect(dbhandler, NULL, dbuser, dbpass, dbname, 0, NULL, 0)) {
+	if (!mysql_real_connect(dbhandler, dbhost[0] ? dbhost : NULL, dbuser, dbpass, dbname, 0, NULL, 0)) {
 		ast_log(LOG_WARNING, "Error Logging into database\n");
 		return(-1);
 	}
-	ast_mutex_init(&mysqllock, NULL);
+	ast_mutex_init(&mysqllock);
 	return(0);
 }
 
@@ -2968,6 +2969,11 @@ static int load_config(void)
 		} else {
 			strcpy(dbpass, s);
 		}
+		if (!(s=ast_variable_retrieve(cfg, "general", "dbhost"))) {
+			strcpy(dbhost, "");
+		} else {
+			strcpy(dbhost, s);
+		}
 		if (!(s=ast_variable_retrieve(cfg, "general", "dbname"))) {
 			strcpy(dbname, "vmdb");
 		} else {
-- 
GitLab