summaryrefslogtreecommitdiff
path: root/src/engine/server.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/server.cpp')
-rw-r--r--src/engine/server.cpp50
1 files changed, 2 insertions, 48 deletions
diff --git a/src/engine/server.cpp b/src/engine/server.cpp
index 29761e1..c23e4fa 100644
--- a/src/engine/server.cpp
+++ b/src/engine/server.cpp
@@ -5,29 +5,6 @@
#define LOGSTRLEN 512
-static FILE *logfile = NULL;
-
-void closelogfile() {
- if(logfile) {
- fclose(logfile);
- logfile = NULL;
- }
-}
-
-FILE *getlogfile() {
- return logfile ? logfile : stdout;
-}
-
-void setlogfile(const char *fname) {
- closelogfile();
- if(fname && fname[0]) {
- fname = findfile(fname, "w");
- if(fname) logfile = fopen(fname, "w");
- }
- FILE *f = getlogfile();
- if(f) setvbuf(f, NULL, _IOLBF, BUFSIZ);
-}
-
void logoutf(const char *fmt, ...) {
va_list args;
va_start(args, fmt);
@@ -35,7 +12,6 @@ void logoutf(const char *fmt, ...) {
va_end(args);
}
-
static void writelog(FILE *file, const char *buf) {
static uchar ubuf[512];
size_t len = strlen(buf), carry = 0;
@@ -57,9 +33,8 @@ void fatal(const char *fmt, ...) {
void cleanupserver();
cleanupserver();
defvformatstring(msg,fmt,fmt);
- if(logfile) logoutf("%s", msg);
+ logoutf("%s", msg);
fprintf(stderr, "server error: %s\n", msg);
- closelogfile();
exit(EXIT_FAILURE);
}
@@ -596,7 +571,7 @@ void localconnect() {
#endif
void logoutfv(const char *fmt, va_list args) {
- FILE *f = getlogfile();
+ FILE *f = stdout;
if(f) writelogv(f, fmt, args);
}
@@ -686,32 +661,11 @@ void stoplistenserver() {
COMMAND(stoplistenserver, "");
#endif
-bool serveroption(char *opt) {
- switch(opt[1]) {
- case 'u': setvar("serveruprate", atoi(opt+2)); return true;
- case 'c': setvar("maxclients", atoi(opt+2)); return true;
- case 'i': setsvar("serverip", opt+2); return true;
- case 'j': setvar("serverport", atoi(opt+2)); return true;
- case 'm': setsvar("mastername", opt+2); setvar("updatemaster", mastername[0] ? 1 : 0); return true;
-#ifdef STANDALONE
- case 'q': logoutf("Using home directory: %s", opt); sethomedir(opt+2); return true;
- case 'k': logoutf("Adding package directory: %s", opt); addpackagedir(opt+2); return true;
- case 'g': logoutf("Setting log file: %s", opt); setlogfile(opt+2); return true;
-#endif
- default: return false;
- }
-}
-
-vector<const char *> gameargs;
-
#ifdef STANDALONE
int main(int argc, char **argv) {
- setlogfile(NULL);
if(enet_initialize()<0) fatal("Unable to initialise network module");
atexit(enet_deinitialize);
enet_time_set(0);
- for(int i = 1; i<argc; i++) if(argv[i][0]!='-' || !serveroption(argv[i])) gameargs.add(argv[i]);
- game::parseoptions(gameargs);
initserver(true, true);
return EXIT_SUCCESS;
}