summaryrefslogtreecommitdiff
path: root/src/ladmin
diff options
context:
space:
mode:
authorDennis Friis <peavey@inspircd.org>2009-07-07 00:52:08 +0200
committerDennis Friis <peavey@inspircd.org>2009-07-07 00:55:31 +0200
commit4673fd3ca06010e74f8223486b0f34e58c7b0a7e (patch)
treecfcc97752fd770eb1befa295e16f7aa4a2607ca9 /src/ladmin
parent03b5e644857f80a23bd8b856b78a10cf0a564a66 (diff)
downloadtmwa-4673fd3ca06010e74f8223486b0f34e58c7b0a7e.tar.gz
tmwa-4673fd3ca06010e74f8223486b0f34e58c7b0a7e.tar.bz2
tmwa-4673fd3ca06010e74f8223486b0f34e58c7b0a7e.tar.xz
tmwa-4673fd3ca06010e74f8223486b0f34e58c7b0a7e.zip
Fixes to socket system to make it cope better with fd depletion.
Also added timeout for fullconnect, secured map server from stateless connections.
Diffstat (limited to 'src/ladmin')
-rw-r--r--src/ladmin/ladmin.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/ladmin/ladmin.c b/src/ladmin/ladmin.c
index 3cea295..810be57 100644
--- a/src/ladmin/ladmin.c
+++ b/src/ladmin/ladmin.c
@@ -263,7 +263,7 @@ int ladmin_log(char *fmt, ...) {
va_start(ap, fmt);
- logfp = fopen(ladmin_log_filename, "a");
+ logfp = fopen_(ladmin_log_filename, "a");
if (logfp) {
if (fmt[0] == '\0') // jump a line if no message
fprintf(logfp, RETCODE);
@@ -273,7 +273,7 @@ int ladmin_log(char *fmt, ...) {
sprintf(tmpstr + strlen(tmpstr), ".%03d: %s", (int)tv.tv_usec / 1000, fmt);
vfprintf(logfp, tmpstr, ap);
}
- fclose(logfp);
+ fclose_(logfp);
}
va_end(ap);
@@ -4228,7 +4228,8 @@ int Connect_login_server() {
ladmin_log("Attempt to connect to login-server..." RETCODE);
}
- login_fd = make_connection(login_ip, loginserverport);
+ if ((login_fd = make_connection(login_ip, loginserverport)) < 0)
+ return 0;
#ifdef PASSWORDENC
if (passenc == 0) {
@@ -4284,7 +4285,7 @@ int ladmin_config_read(const char *cfgName) {
char line[1024], w1[1024], w2[1024];
FILE *fp;
- fp = fopen(cfgName, "r");
+ fp = fopen_(cfgName, "r");
if (fp == NULL) {
if (defaultlanguage == 'F') {
printf("\033[0mFichier de configuration (%s) non trouvé.\n", cfgName);
@@ -4356,7 +4357,7 @@ int ladmin_config_read(const char *cfgName) {
}
}
}
- fclose(fp);
+ fclose_(fp);
login_ip = inet_addr(loginserverip);