added new self-made config parser with new config style
[NeonServV5.git] / src / main.c
index d6258a7598e5fce77fdb7b4116f27c68a681d30b..183ebaedb3e1e205215b51ed0a8c7395d9beb91d 100644 (file)
@@ -34,7 +34,7 @@
 #include "IRCQueue.h"
 #include "DBHelper.h"
 #include "commands.h"
-#include "lib/ini.h"
+#include "ConfigParser.h"
 
 time_t start_time;
 
@@ -53,40 +53,34 @@ void cleanup() {
 }
 
 static int load_mysql_config() {
-    char mysql_host[MAXLEN], mysql_port_str[MAXLEN], mysql_user[MAXLEN], mysql_pass[MAXLEN], mysql_base[MAXLEN];
+    char *mysql_host, *mysql_user, *mysql_pass, *mysql_base;
     int mysql_serverport;
-    if(loadINI("neonserv.ini") == FILE_SUCCESS) {
-        mysql_host[0] = '\0';
-        ReadString("MySQL", "host", mysql_host);
-        if(!*mysql_host) {
-            perror("invalid neonserv.ini: missing MySQL host");
+    if(loadConfig("neonserv.conf")) {
+        mysql_host = get_string_field("MySQL.host");
+        if(!mysql_host) {
+            perror("invalid neonserv.conf: missing MySQL.host");
             return 0;
         }
-        mysql_port_str[0] = '\0';
-        ReadString("MySQL", "port", mysql_port_str);
-        mysql_serverport = atoi(mysql_port_str);
+        mysql_serverport = get_int_field("MySQL.port");
         if(!mysql_serverport)
             mysql_serverport = 3306;
-        mysql_user[0] = '\0';
-        ReadString("MySQL", "user", mysql_user);
-        if(!*mysql_user) {
-            perror("invalid neonserv.ini: missing MySQL user");
+        mysql_user = get_string_field("MySQL.user");
+        if(!mysql_user) {
+            perror("invalid neonserv.conf: missing MySQL.user");
             return 0;
         }
-        mysql_pass[0] = '\0';
-        ReadString("MySQL", "pass", mysql_pass);
-        if(!*mysql_pass) {
-            perror("invalid neonserv.ini: missing MySQL pass");
+        mysql_pass = get_string_field("MySQL.pass");
+        if(!mysql_pass) {
+            perror("invalid neonserv.conf: missing MySQL.pass");
             return 0;
         }
-        mysql_base[0] = '\0';
-        ReadString("MySQL", "base", mysql_base);
-        if(!*mysql_base) {
-            perror("invalid neonserv.ini: missing MySQL base");
+        mysql_base = get_string_field("MySQL.base");
+        if(!mysql_base) {
+            perror("invalid neonserv.conf: missing MySQL base");
             return 0;
         }
     } else {
-        perror("Unable to load neonserv.ini");
+        perror("Unable to load neonserv.conf");
         return 0;
     }
     init_mysql(mysql_host, mysql_serverport, mysql_user, mysql_pass, mysql_base);