summaryrefslogtreecommitdiff
path: root/src/login_sql/login.h
diff options
context:
space:
mode:
authorultramage <ultramage@54d463be-8e91-2dee-dedb-b68131a5f0ec>2008-07-26 20:45:57 +0000
committerultramage <ultramage@54d463be-8e91-2dee-dedb-b68131a5f0ec>2008-07-26 20:45:57 +0000
commit1624d1d57db3cfde3b4f42a55580f5a1e742f28e (patch)
treeaedd8d2afa77616e61bf8f50249575294b06a528 /src/login_sql/login.h
parente3879120d578c07cc6ca2dfeeec577e8461a6c52 (diff)
downloadhercules-1624d1d57db3cfde3b4f42a55580f5a1e742f28e.tar.gz
hercules-1624d1d57db3cfde3b4f42a55580f5a1e742f28e.tar.bz2
hercules-1624d1d57db3cfde3b4f42a55580f5a1e742f28e.tar.xz
hercules-1624d1d57db3cfde3b4f42a55580f5a1e742f28e.zip
Merged the /loginmerge branch (topic:192754)
* the login server storage, ipban and logging systems have been abstracted and now provide a common interface; the rest has been merged into a single login server core (no more login/login_sql duplicity) * storage systems are now added via compiler options (WITH_SQL / WITH_TXT) * multiple storage engines can be compiled in at the same time, and the config option account.engine defines which one will be used. * due to MySQL autoincrement limitations, accounts with id '0' will not be supported; account IDs from this point on should start from '1'. * login_log() functions now again record IP addresses in dotted format, not as 4-byte integers (undo from r6868). * removed config options that defined column names in the login table * removed `memo` and `error message` columns from login db/savefile * moved `loginlog` table to the logs database * added sql files upgrade_svn12975.sql and upgrade_svn12975_log.sql * due to changes to the login table layout, I added an !optional! sql file (upgrade_svn12975_view.sql) that will provide a certain degree of backwards compatibility with existing software; read the instructions inside carefully! * moved third-party includes/libs to a separate directory * updated project files / makefiles Changed the way GM levels are handled * removed conf/gm_account.txt * added the gm level column to the txt savefile (after 'email' column) * gm level information is now transferred along with account data For open problems see bugreport:1889. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13000 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/login_sql/login.h')
-rw-r--r--src/login_sql/login.h94
1 files changed, 0 insertions, 94 deletions
diff --git a/src/login_sql/login.h b/src/login_sql/login.h
deleted file mode 100644
index d343c0905..000000000
--- a/src/login_sql/login.h
+++ /dev/null
@@ -1,94 +0,0 @@
-// Copyright (c) Athena Dev Teams - Licensed under GNU GPL
-// For more information, see LICENCE in the main folder
-
-#ifndef _LOGIN_SQL_H_
-#define _LOGIN_SQL_H_
-
-#include "../common/mmo.h" // NAME_LENGTH
-
-#define LOGIN_CONF_NAME "conf/login_athena.conf"
-#define SQL_CONF_NAME "conf/inter_athena.conf"
-#define LAN_CONF_NAME "conf/subnet_athena.conf"
-
-// supported encryption types: 1- passwordencrypt, 2- passwordencrypt2, 3- both
-#define PASSWORDENC 3
-
-struct login_session_data {
-
- int account_id;
- long login_id1;
- long login_id2;
- char sex;
-
- char userid[NAME_LENGTH];
- char passwd[NAME_LENGTH];
- int passwdenc;
- char md5key[20];
- uint16 md5keylen;
-
- char lastlogin[24];
- uint8 level;
- int version;
-
- int fd;
-};
-
-struct mmo_char_server {
- char name[20];
- int fd;
- uint32 ip;
- uint16 port;
- int users;
- int maintenance;
- int new_;
-};
-
-struct Login_Config {
-
- uint32 login_ip; // the address to bind to
- uint16 login_port; // the port to bind to
- unsigned int ip_sync_interval; // interval (in minutes) to execute a DNS/IP update (for dynamic IPs)
- bool log_login; // whether to log login server actions or not
- char date_format[32]; // date format used in messages
- bool console; // console input system enabled?
- bool new_account_flag; // autoregistration via _M/_F ?
- int start_limited_time; // new account expiration time (-1: unlimited)
- bool case_sensitive; // are logins case sensitive ?
- bool use_md5_passwds; // work with password hashes instead of plaintext passwords?
- bool login_gm_read; // should the login server handle info about gm accounts?
- int min_level_to_connect; // minimum level of player/GM (0: player, 1-99: GM) to connect
- bool online_check; // reject incoming players that are already registered as online ?
- bool check_client_version; // check the clientversion set in the clientinfo ?
- int client_version_to_connect; // the client version needed to connect (if checking is enabled)
-
- bool ipban; // perform IP blocking (via contents of `ipbanlist`) ?
- bool dynamic_pass_failure_ban; // automatic IP blocking due to failed login attemps ?
- unsigned int dynamic_pass_failure_ban_interval; // how far to scan the loginlog for password failures
- unsigned int dynamic_pass_failure_ban_limit; // number of failures needed to trigger the ipban
- unsigned int dynamic_pass_failure_ban_duration; // duration of the ipban
- bool use_dnsbl; // dns blacklist blocking ?
- char dnsbl_servs[1024]; // comma-separated list of dnsbl servers
-
-};
-
-struct mmo_account {
-
- int account_id;
- char sex;
- char userid[24];
- char pass[32+1]; // 23+1 for normal, 32+1 for md5-ed passwords
- char lastlogin[24];
- int logincount;
- uint32 state; // packet 0x006a value + 1 (0: compte OK)
- char email[40]; // e-mail (by default: a@a.com)
- char error_message[20]; // Message of error code #6 = Your are Prohibited to log in until %s (packet 0x006a)
- time_t unban_time; // # of seconds 1/1/1970 (timestamp): ban time limit of the account (0 = no ban)
- time_t expiration_time; // # of seconds 1/1/1970 (timestamp): Validity limit of the account (0 = unlimited)
- char last_ip[16]; // save of last IP of connection
- char memo[255]; // a memo field
- int account_reg2_num;
- struct global_reg account_reg2[ACCOUNT_REG2_NUM]; // account script variables (stored on login server)
-};
-
-
-#endif /* _LOGIN_SQL_H_ */