#include "timeq.h"
#include "EventLogger.h"
#include "ModeNode.h"
+#include "lib/ini.h"
time_t start_time;
free_lang();
}
+static int load_mysql_config() {
+ char mysql_host[MAXLEN], mysql_port_str[MAXLEN], mysql_user[MAXLEN], mysql_pass[MAXLEN], mysql_base[MAXLEN];
+ 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");
+ return 0;
+ }
+ mysql_port_str[0] = '\0';
+ ReadString("MySQL", "port", mysql_port_str);
+ mysql_serverport = atoi(mysql_port_str);
+ 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");
+ return 0;
+ }
+ mysql_pass[0] = '\0';
+ ReadString("MySQL", "pass", mysql_pass);
+ if(!*mysql_pass) {
+ perror("invalid neonserv.ini: missing MySQL pass");
+ return 0;
+ }
+ mysql_base[0] = '\0';
+ ReadString("MySQL", "base", mysql_base);
+ if(!*mysql_base) {
+ perror("invalid neonserv.ini: missing MySQL base");
+ return 0;
+ }
+ } else {
+ perror("Unable to load neonserv.ini");
+ return 0;
+ }
+ init_mysql(mysql_host, mysql_serverport, mysql_user, mysql_pass, mysql_base);
+ return 1;
+}
+
int main(void)
{
+
start_time = time(0);
- init_mysql();
+ #ifdef WIN32
+ int res;
+ WSADATA wsadata;
+ // Start Windows Sockets.
+ res = WSAStartup(MAKEWORD(2, 0), &wsadata);
+ if (res)
+ {
+ perror("Unable to start Windows Sockets");
+ return 0;
+ }
+ #endif
+
+ if(!load_mysql_config()) return 0;
+
init_lang();
init_parser();
init_UserNode();