summaryrefslogtreecommitdiff
path: root/src/login/login.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/login/login.h')
-rw-r--r--src/login/login.h43
1 files changed, 15 insertions, 28 deletions
diff --git a/src/login/login.h b/src/login/login.h
index 1147d6bb6..8ffa06eec 100644
--- a/src/login/login.h
+++ b/src/login/login.h
@@ -7,6 +7,7 @@
#include "../common/mmo.h" // NAME_LENGTH
#define LOGIN_CONF_NAME "conf/login_athena.conf"
+#define INTER_CONF_NAME "conf/inter_athena.conf"
#define LAN_CONF_NAME "conf/subnet_athena.conf"
// supported encryption types: 1- passwordencrypt, 2- passwordencrypt2, 3- both
@@ -38,9 +39,9 @@ struct mmo_char_server {
int fd;
uint32 ip;
uint16 port;
- uint16 users; // user count on this server
- uint16 maintenance; // in maintenance mode?
- uint16 new_; // allows creating new chars?
+ uint16 users; // user count on this server
+ uint16 maintenance; // in maintenance mode?
+ uint16 new_; // should display as 'new'?
};
struct Login_Config {
@@ -53,42 +54,28 @@ struct Login_Config {
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 admin_state; // is ladmin support enabled?
+ char admin_pass[24]; // security password for ladmin
+ char admin_allowed_host[32]; // host/ip that is allowed to connect as ladmin
+
+ 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
+ char account_engine[256]; // name of the engine to use (defaults to auto, for the first available engine)
};
-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)
-};
+extern struct Login_Config login_config;
#endif /* _LOGIN_H_ */