* Added option to turn off login server logging

* Moved char server starting logging to after we've read the configuration file first

git-svn-id: https://svn.code.sf.net/p/rathena/svn/branches/stable@513 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
celest 2004-12-08 17:24:24 +00:00
parent f29a741c3f
commit 7ef9c70b13
4 changed files with 34 additions and 21 deletions

View File

@ -1,5 +1,8 @@
Date Added
12/8
* Added option to turn off login server logging [celest]
* Moved char server starting logging to after we've read the configuration
file first [celest]
* Fixed crash with supernovices with 100% base exp [celest]
* Updated the readme a little. [Mass Zero]

View File

@ -55,6 +55,9 @@ gm_account_filename_check_timer: 15
// Log Filename. All operations received by the server are logged in this file.
login_log_filename: log/login.log
// To log the login server?
log_login: 1
// Name of the file of that logs the unknown packets (for debug or hack check)
login_log_unknown_packets_filename: log/login_unknown_packets.log

View File

@ -3348,13 +3348,14 @@ void do_final(void) {
int do_init(int argc, char **argv) {
int i;
// a newline in the log...
char_log("");
char_log("The char-server starting..." RETCODE);
char_config_read((argc < 2) ? CHAR_CONF_NAME : argv[1]);
lan_config_read((argc > 1) ? argv[1] : LOGIN_LAN_CONF_NAME);
// a newline in the log...
char_log("");
// moved behind char_config_read in case we changed the filename [celest]
char_log("The char-server starting..." RETCODE);
if ((naddr_ != 0) && (login_ip_set_ == 0 || char_ip_set_ == 0)) {
// The char server should know what IP address it is running on
// - MouseJstr

View File

@ -69,6 +69,8 @@ int save_unknown_packets = 0;
long creation_time_GM_account_file;
int gm_account_filename_check_timer = 15; // Timer to check if GM_account file has been changed and reload GM account automaticaly (in seconds; default: 15)
int log_login = 1;
int display_parse_login = 0; // 0: no, 1: yes
int display_parse_admin = 0; // 0: no, 1: yes
int display_parse_fromchar = 0; // 0: no, 1: yes (without packet 0x2714), 2: all packets
@ -169,26 +171,28 @@ int console = 0;
// Writing function of logs file
//------------------------------
int login_log(char *fmt, ...) {
va_list ap;
struct timeval tv;
char tmpstr[2048];
if (log_login) {
va_list ap;
struct timeval tv;
char tmpstr[2048];
if(!log_fp)
log_fp = fopen(login_log_filename, "a");
if(!log_fp)
log_fp = fopen(login_log_filename, "a");
log_fp = fopen(login_log_filename, "a");
if (log_fp) {
if (fmt[0] == '\0') // jump a line if no message
fprintf(log_fp, RETCODE);
else {
va_start(ap, fmt);
gettimeofday(&tv, NULL);
strftime(tmpstr, 24, date_format, localtime(&(tv.tv_sec)));
sprintf(tmpstr + strlen(tmpstr), ".%03d: %s", (int)tv.tv_usec / 1000, fmt);
vfprintf(log_fp, tmpstr, ap);
va_end(ap);
if (log_fp) {
if (fmt[0] == '\0') // jump a line if no message
fprintf(log_fp, RETCODE);
else {
va_start(ap, fmt);
gettimeofday(&tv, NULL);
strftime(tmpstr, 24, date_format, localtime(&(tv.tv_sec)));
sprintf(tmpstr + strlen(tmpstr), ".%03d: %s", (int)tv.tv_usec / 1000, fmt);
vfprintf(log_fp, tmpstr, ap);
va_end(ap);
}
fflush(log_fp); // under cygwin or windows, if software is stopped, data are not written in the file -> fflush at every line
}
fflush(log_fp); // under cygwin or windows, if software is stopped, data are not written in the file -> fflush at every line
}
return 0;
@ -3416,6 +3420,8 @@ int login_config_read(const char *cfgName) {
memset(login_log_filename, 0, sizeof(login_log_filename));
strncpy(login_log_filename, w2, sizeof(login_log_filename));
login_log_filename[sizeof(login_log_filename)-1] = '\0';
} else if (strcmpi(w1, "log_login") == 0) {
log_login = atoi(w2);
} else if (strcmpi(w1, "login_log_unknown_packets_filename") == 0) {
memset(login_log_unknown_packets_filename, 0, sizeof(login_log_unknown_packets_filename));
strncpy(login_log_unknown_packets_filename, w2, sizeof(login_log_unknown_packets_filename));