From 86fab91ae6c4a40af24b1d3f98601ba5d6ca9adb Mon Sep 17 00:00:00 2001 From: Haru Date: Sun, 23 Mar 2014 20:54:56 +0100 Subject: Added GPL information on interactive server startup --- src/char/char.c | 1 + src/common/console.c | 11 +++++++++++ src/common/console.h | 1 + src/login/login.c | 4 ++++ src/map/map.c | 2 ++ 5 files changed, 19 insertions(+) diff --git a/src/char/char.c b/src/char/char.c index d9626c500..e99e044ad 100644 --- a/src/char/char.c +++ b/src/char/char.c @@ -5977,6 +5977,7 @@ int do_init(int argc, char **argv) { Sql_HerculesUpdateCheck(inter->sql_handle); #ifdef CONSOLE_INPUT console->input->setSQL(inter->sql_handle); + console->display_gplnotice(); #endif ShowStatus("The char-server is "CL_GREEN"ready"CL_RESET" (Server is listening on the port %d).\n\n", chr->port); diff --git a/src/common/console.c b/src/common/console.c index 477141b48..cc0e920c4 100644 --- a/src/common/console.c +++ b/src/common/console.c @@ -75,6 +75,16 @@ void display_title(void) { ShowInfo("Compiled with %s\n", sysinfo->compiler()); ShowInfo("Compile Flags: %s\n", sysinfo->cflags()); } + +/** + * Shows a license notice as per GNU GPL recommendation. + */ +void display_gplnotice(void) +{ + ShowInfo("Hercules, Copyright (C) 2012-2015, Hercules Dev Team and others.\n"); + ShowInfo("Licensed under the GNU General Public License, version 3 or later.\n"); +} + #ifdef CONSOLE_INPUT int console_parse_key_pressed(void) { @@ -532,6 +542,7 @@ void console_defaults(void) console->init = console_init; console->final = console_final; console->display_title = display_title; + console->display_gplnotice = display_gplnotice; #ifdef CONSOLE_INPUT console->input = &console_input_s; console->input->parse_init = console_parse_init; diff --git a/src/common/console.h b/src/common/console.h index 102a1beaf..676747465 100644 --- a/src/common/console.h +++ b/src/common/console.h @@ -84,6 +84,7 @@ struct console_interface { void (*init) (void); void (*final) (void); void (*display_title) (void); + void (*display_gplnotice) (void); struct console_input_interface *input; }; diff --git a/src/login/login.c b/src/login/login.c index 3ec60f0aa..53c203a42 100644 --- a/src/login/login.c +++ b/src/login/login.c @@ -2033,6 +2033,10 @@ int do_init(int argc, char** argv) core->runflag = LOGINSERVER_ST_RUNNING; } +#ifdef CONSOLE_INPUT + console->display_gplnotice(); +#endif // CONSOLE_INPUT + ShowStatus("The login-server is "CL_GREEN"ready"CL_RESET" (Server is listening on the port %u).\n\n", login_config.login_port); login_log(0, "login server", 100, "login server started"); diff --git a/src/map/map.c b/src/map/map.c index 149a50a7f..adbe75b20 100644 --- a/src/map/map.c +++ b/src/map/map.c @@ -5959,6 +5959,8 @@ int do_init(int argc, char *argv[]) #ifdef CONSOLE_INPUT console->input->setSQL(map->mysql_handle); + if (!minimal && core->runflag != CORE_ST_STOP) + console->display_gplnotice(); #endif ShowStatus("Server is '"CL_GREEN"ready"CL_RESET"' and listening on port '"CL_WHITE"%d"CL_RESET"'.\n\n", map->port); -- cgit v1.2.3-60-g2f50