This commit is contained in:
aleos89 2015-12-08 14:40:00 -05:00
commit f04156756d
2 changed files with 23 additions and 3 deletions

View File

@ -8,12 +8,14 @@ debug: no
// How long can a socket stall before closing the connection (in seconds)
stall_time: 60
// Maximum allowed size for clients packets in bytes (default: 24576).
// Maximum allowed size for clients packets in bytes (default: 65535).
// NOTE: To reduce the size of reported packets, lower the values of defines, which
// have been customized, such as MAX_STORAGE, MAX_GUILD_STORAGE or MAX_CART.
// NOTE: Do not modify this setting, unless the client has been modified to support
// larger packets. The client will crash, when it receives larger packets.
socket_max_client_packet: 24576
socket_max_client_packet: 65535
// For clients before 2013-12-23 uncomment this
//socket_max_client_packet: 24576
//----- IP Rules Settings -----

View File

@ -212,7 +212,11 @@ int naddr_ = 0; // # of ip addresses
// Maximum packet size in bytes, which the client is able to handle.
// Larger packets cause a buffer overflow and stack corruption.
#if PACKETVER < 20131223
static size_t socket_max_client_packet = 24576;
#else
static size_t socket_max_client_packet = USHRT_MAX;
#endif
#ifdef SHOW_SERVER_STATS
// Data I/O statistics
@ -1171,8 +1175,22 @@ int socket_config_read(const char* cfgName)
ddos_autoreset = atoi(w2);
else if (!strcmpi(w1,"debug"))
access_debug = config_switch(w2);
else if (!strcmpi(w1,"socket_max_client_packet"))
else if (!strcmpi(w1,"socket_max_client_packet")){
socket_max_client_packet = strtoul(w2, NULL, 0);
#if PACKETVER < 20131223
if( socket_max_client_packet > 24576 ){
ShowWarning( "socket_max_client_packet: Value %u is to high. Defaulting to %u.\n", socket_max_client_packet, 24576 );
ShowWarning( "socket_max_client_packet: If you want to use this value consider upgrading your client to 2013-12-23 or newer.\n" );
socket_max_client_packet = 24576;
}
#else
if( socket_max_client_packet > USHRT_MAX ){
ShowWarning( "socket_max_client_packet: Value %u is to high. Defaulting to %u.\n", socket_max_client_packet, USHRT_MAX );
socket_max_client_packet = USHRT_MAX;
}
#endif
}
#endif
else if (!strcmpi(w1, "import"))
socket_config_read(w2);