update prefix header to also declare tempOps(halpOps)

This commit is contained in:
pandaemonium 2007-08-13 10:00:12 +00:00
parent b25ccaf642
commit 66393533a7
12 changed files with 86 additions and 23 deletions

View file

@ -14,7 +14,7 @@ bnetd_SOURCES = account.cpp account_wrap.cpp adbanner.cpp alias_command.cpp anon
sql_mysql.cpp sql_odbc.cpp sql_pgsql.cpp sql_sqlite3.cpp storage.cpp \
storage_file.cpp storage_sql.cpp support.cpp team.cpp tick.cpp timer.cpp topic.cpp \
tournament.cpp tracker.cpp udptest_send.cpp versioncheck.cpp watch.cpp \
storage_sql2.cpp sql_common.cpp handle_wol.cpp handle_irc_common.cpp
storage_sql2.cpp sql_common.cpp handle_wol.cpp handle_irc_common.cpp handle_apireg.cpp
bnetd_LDADD = $(top_builddir)/src/common/libcommon.a \
$(top_builddir)/src/compat/libcompat.a \
@ -33,4 +33,4 @@ noinst_HEADERS = account.h account_wrap.h adbanner.h alias_command.h \
sql_dbcreator.h sql_mysql.h sql_odbc.h sql_pgsql.h sql_sqlite3.h \
storage_file.h storage.h storage_sql.h support.h team.h tick.h \
timer.h topic.h tournament.h udptest_send.h versioncheck.h watch.h \
tracker.h storage_sql2.h sql_common.h handle_wol.h handle_irc_common.h
tracker.h storage_sql2.h sql_common.h handle_wol.h handle_irc_common.h handle_apireg.h

View file

@ -278,16 +278,18 @@ extern char const * conn_class_get_str(t_conn_class cclass)
return "telnet";
case conn_class_irc:
return "irc";
case conn_class_wol:
return "wol";
case conn_class_wserv:
return "wserv";
case conn_class_wgameres:
return "wgameres";
case conn_class_wol:
return "wol";
case conn_class_wserv:
return "wserv";
case conn_class_apireg:
return "apireg";
case conn_class_wgameres:
return "wgameres";
case conn_class_none:
return "none";
case conn_class_w3route:
return "w3route";
return "none";
case conn_class_w3route:
return "w3route";
default:
return "UNKNOWN";
}

View file

@ -75,6 +75,7 @@ typedef enum
conn_class_wol, /* Westwood IRC */
conn_class_wserv, /* Westwood servserv */
conn_class_wgameres, /* Westwood gameres */
conn_class_apireg, /* Westwood API Register */
conn_class_d2cs_bnetd,
conn_class_w3route,
conn_class_none

View file

@ -85,6 +85,7 @@
#include "team.h"
#include "realm.h"
#include "topic.h"
#include "handle_apireg.h"
#include "common/setup_after.h"
/* out of memory safety */
@ -319,6 +320,7 @@ int pre_server_startup(void)
timerlist_create();
server_set_hostname();
channellist_create();
apireglist_create();
if (helpfile_init(prefs_get_helpfile())<0)
eventlog(eventlog_level_error,__FUNCTION__,"could not load helpfile");
ipbanlist_create();
@ -392,6 +394,7 @@ void post_server_shutdown(int status)
ipbanlist_save(prefs_get_ipbanfile());
ipbanlist_destroy();
helpfile_unload();
apireglist_destroy();
channellist_destroy();
server_clear_hostname();
timerlist_destroy();

View file

@ -159,6 +159,7 @@ static struct {
unsigned int sync_on_logoff;
char const * irc_network_name;
char const * apiregaddrs;
char const * woladdrs;
char const * wservaddrs;
char const * wgameresaddrs;
@ -635,6 +636,10 @@ static int conf_setdef_irc_network_name(void);
static int conf_set_irc_network_name(const char *valstr);
static const char *conf_get_irc_network_name(void);
static int conf_setdef_apireg_addrs(void);
static int conf_set_apireg_addrs(const char *valstr);
static const char *conf_get_apireg_addrs(void);
static int conf_setdef_wgameres_addrs(void);
static int conf_set_wgameres_addrs(const char *valstr);
static const char *conf_get_wgameres_addrs(void);
@ -780,6 +785,7 @@ static t_conf_entry conf_table[] =
{ "ladder_prefix", conf_set_ladder_prefix, conf_get_ladder_prefix,conf_setdef_ladder_prefix},
{ "irc_network_name", conf_set_irc_network_name, conf_get_irc_network_name, conf_setdef_irc_network_name},
{ "apiregaddrs", conf_set_apireg_addrs, conf_get_apireg_addrs, conf_setdef_apireg_addrs},
{ "wgameresaddrs", conf_set_wgameres_addrs, conf_get_wgameres_addrs, conf_setdef_wgameres_addrs},
{ "wservaddrs", conf_set_wserv_addrs, conf_get_wserv_addrs, conf_setdef_wserv_addrs},
{ "woladdrs", conf_set_wol_addrs, conf_get_wol_addrs, conf_setdef_wol_addrs},
@ -3326,6 +3332,26 @@ static const char* conf_get_irc_network_name(void)
/**
* Westwood Online Extensions
*/
extern char const * prefs_get_apireg_addrs(void)
{
return prefs_runtime_config.apiregaddrs;
}
static int conf_set_apireg_addrs(const char *valstr)
{
return conf_set_str(&prefs_runtime_config.apiregaddrs,valstr,NULL);
}
static int conf_setdef_apireg_addrs(void)
{
return conf_set_str(&prefs_runtime_config.apiregaddrs,NULL,BNETD_APIREG_ADDRS);
}
static const char* conf_get_apireg_addrs(void)
{
return prefs_runtime_config.apiregaddrs;
}
extern char const * prefs_get_wgameres_addrs(void)
{
return prefs_runtime_config.wgameresaddrs;

View file

@ -181,6 +181,7 @@ extern char const * prefs_get_irc_network_name(void);
/**
* Westwood Online Extensions
*/
extern char const * prefs_get_apireg_addrs(void);
extern char const * prefs_get_wgameres_addrs(void);
extern char const * prefs_get_wserv_addrs(void);
extern char const * prefs_get_wol_addrs(void);

View file

@ -61,6 +61,7 @@
#include "handle_d2cs.h"
#include "handle_irc_common.h"
#include "handle_udp.h"
#include "handle_apireg.h"
#include "anongame.h"
#include "clan.h"
#include "attrlayer.h"
@ -203,6 +204,8 @@ static char const * laddr_type_get_str(t_laddr_type laddr_type)
return "wol";
case laddr_type_wserv:
return "wserv";
case laddr_type_apireg:
return "apireg";
case laddr_type_wgameres:
return "wgameres";
case laddr_type_telnet:
@ -345,6 +348,10 @@ static int sd_accept(t_addr const * curr_laddr, t_laddr_info const * laddr_info,
conn_set_class(c,conn_class_ircinit);
conn_set_state(c,conn_state_connected);
break;
case laddr_type_apireg:
conn_set_class(c,conn_class_apireg);
conn_set_state(c,conn_state_connected);
break;
case laddr_type_wgameres:
conn_set_class(c,conn_class_wgameres);
conn_set_state(c,conn_state_connected);
@ -522,6 +529,7 @@ static int sd_tcpinput(t_connection * c)
case conn_class_irc:
case conn_class_wol:
case conn_class_wserv:
case conn_class_apireg:
case conn_class_wgameres:
case conn_class_telnet:
if (!(packet = packet_create(packet_class_raw)))
@ -641,6 +649,9 @@ static int sd_tcpinput(t_connection * c)
case conn_class_wgameres: /* NOTICE: Will be handled in other file */
ret = handle_irc_common_packet(c,packet);
break;
case conn_class_apireg:
ret = handle_apireg_packet(c,packet);
break;
case conn_class_w3route:
ret = handle_w3route_packet(c,packet);
break;
@ -1454,7 +1465,7 @@ extern int server_process(void)
_shutdown_addrs(laddrs);
return -1;
}
/* Append list of addresses to listen for WSERV IRC connections */
if (_setup_add_addrs(&laddrs, prefs_get_wserv_addrs(),INADDR_ANY,BNETD_WSERV_PORT, laddr_type_wserv))
{
@ -1462,7 +1473,15 @@ extern int server_process(void)
_shutdown_addrs(laddrs);
return -1;
}
/* Append list of addresses to listen for APIREGISER connections */
if (_setup_add_addrs(&laddrs, prefs_get_apireg_addrs(),INADDR_ANY,BNETD_APIREG_PORT, laddr_type_apireg))
{
eventlog(eventlog_level_error,__FUNCTION__,"could not create %s server address list from \"%s\"",laddr_type_get_str(laddr_type_apireg),prefs_get_apireg_addrs());
_shutdown_addrs(laddrs);
return -1;
}
/* Append list of addresses to listen for WGAMERES connections */
if (_setup_add_addrs(&laddrs, prefs_get_wgameres_addrs(),INADDR_ANY,BNETD_WGAMERES_PORT, laddr_type_wgameres))
{

View file

@ -36,6 +36,7 @@ typedef enum
laddr_type_irc, /* Internet Relay Chat service (port is varying; mostly on port 6667 or 7000) */
laddr_type_wol, /* Westwood Online (IRC) Chat Services (port is 4000) */
laddr_type_wserv, /* Westwood servserv (IRC) Services (port is 4005) */
laddr_type_apireg, /* Westwood API Register Services (port is 5700) */
laddr_type_wgameres,/* Westwood gameres Services (port is 4807) */
laddr_type_telnet /* telnet service (usually on port 23) */
} t_laddr_type;

View file

@ -1,8 +1,13 @@
AM_CPPFLAGS=-I$(top_srcdir)/src
bin_PROGRAMS = bnpass
bin_PROGRAMS = bnpass sha1pass
bnpass_SOURCES = bnpass.cpp
bnpass_LDADD = $(top_builddir)/src/common/libcommon.a \
$(top_builddir)/src/compat/libcompat.a
sha1pass_SOURCES = sha1pass.cpp
sha1pass_LDADD = $(top_builddir)/src/common/libcommon.a \
$(top_builddir)/src/compat/libcompat.a

View file

@ -8,7 +8,7 @@ libcommon_a_SOURCES = conf.cpp list.cpp eventlog.cpp hexdump.cpp bn_type.cpp uti
fdwatch.cpp fdwatch_epoll.cpp fdwatch_kqueue.cpp fdwatch_poll.cpp \
fdwatch_select.cpp give_up_root_privileges.cpp hashtable.cpp \
proginfo.cpp queue.cpp rcm.cpp rlimit.cpp tag.cpp token.cpp trans.cpp \
fdwbackend.cpp xstr.cpp systemerror.cpp
fdwbackend.cpp xstr.cpp systemerror.cpp wolhash.cpp
noinst_HEADERS = addr.h anongame_protocol.h asnprintf.h bnethashconv.h \
bnethash.h bnet_protocol.h bnettime.h bn_type.h bot_protocol.h \
@ -21,4 +21,4 @@ noinst_HEADERS = addr.h anongame_protocol.h asnprintf.h bnethashconv.h \
trans.h udp_protocol.h util.h version.h xalloc.h xstring.h \
d2cs_bnetd_protocol.h d2cs_d2dbs_ladder.h d2cs_d2gs_character.h \
d2cs_d2gs_protocol.h d2cs_protocol.h scoped_array.h scoped_ptr.h \
fdwbackend.h xstr.h systemerror.h
fdwbackend.h xstr.h systemerror.h wolhash.h

View file

@ -33,7 +33,7 @@
/* IRC Defines */
#define WOL_NICKNAME_LEN 9
#define CHANNEL_PREFIX "(ov)@+"
#define CHANNEL_PREFIX "(ohv)@%+"
#define CHANNEL_TYPE "#"
/* Reply Defines */

View file

@ -170,6 +170,17 @@ const char * const BNETD_WAR3_ICON_FILE = "icons-WAR3.bni";
const char * const BNETD_STAR_ICON_FILE = "icons_STAR.bni";
const char * const BNETD_MPQ_FILE = "autoupdate";
/* Westwood Online default configuration values */
const char * const BNETD_APIREG_ADDRS = "";
const int BNETD_APIREG_PORT = 5400;
const char * const BNETD_WOL_ADDRS = "";
const int BNETD_WOL_PORT = 4000;
const char * const BNETD_WSERV_ADDRS = "";
const int BNETD_WSERV_PORT = 4005;
const char * const BNETD_WGAMERES_ADDRS = "";
const int BNETD_WGAMERES_PORT = 4807;
/* other default configuration values */
const char * const BNETD_LOG_LEVELS = "warn,error";
const char * const BNETD_SERV_ADDRS = ""; /* this means none */
@ -180,12 +191,6 @@ const char * const BNETD_SERVERNAME = "PvPGN Realm";
const char * const BNETD_IRC_ADDRS = ""; /* this means none */
const int BNETD_IRC_PORT = 6667; /* used if port not specified */
const char * const BNETD_IRC_NETWORK_NAME = "PvPGN";
const char * const BNETD_WOL_ADDRS = "";
const int BNETD_WOL_PORT = 4000;
const char * const BNETD_WSERV_ADDRS = "";
const int BNETD_WSERV_PORT = 4005;
const char * const BNETD_WGAMERES_ADDRS = "";
const int BNETD_WGAMERES_PORT = 4807;
const char * const BNETD_TRACK_ADDRS = "track.pvpgn.org";
const int BNETD_TRACK_PORT = 6114; /* use this port if not specified */
const int BNETD_DEF_TEST_PORT = 6112; /* default guess for UDP test port */