From aa3110d092a545c027a4c568a9158e7c1210d547 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sat, 29 Nov 2014 15:16:44 +0300 Subject: login: add ability to filter inter servers connections by ip New config option: inter_server_ip Example: inter_server_ip 127.0.0.1,127.0.0.2 --- src/login/parse.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/login/parse.c') diff --git a/src/login/parse.c b/src/login/parse.c index ba4efbd..9f1ffcb 100644 --- a/src/login/parse.c +++ b/src/login/parse.c @@ -13,6 +13,7 @@ #include "../../../login/account.h" #include "../../../login/login.h" +#include "login/config.h" #include "login/parse.h" #include "login/send.h" @@ -134,3 +135,15 @@ void elogin_parse_client_login2(int fd) return; } + +void elogin_parse_request_connection(int *fd, struct login_session_data* sd, const char *const ip) +{ + if (!inter_server_ip || !ip) + return; + if (!strstr(inter_server_ip, ip)) + { + hookStop(); + login->char_server_connection_status(*fd, sd, 3); + ShowNotice("Connection of the char-server from ip %s REFUSED.\n", ip); + } +} -- cgit v1.2.3-60-g2f50