summaryrefslogtreecommitdiff
path: root/source/net_common.c
diff options
context:
space:
mode:
authorAndrey Nazarov <skuller@skuller.net>2008-09-24 16:24:46 +0000
committerAndrey Nazarov <skuller@skuller.net>2008-09-24 16:24:46 +0000
commit3366e11bbdb586679227494f389039e6d58f8e0e (patch)
tree3ea5f70d17bdb3369a3ff3cb0e5a232e09971bbd /source/net_common.c
parent1cbac0b239e6cad5c4b7e1d30e1d0f32b0d8062f (diff)
Com_sprintf -> Q_snprintf, Q_strncpyz -> Q_strlcpy, Q_strcat -> Q_strlcat.
Q_vsnprintf, Q_sprintf, Q_concat, Q_strlcpy, Q_strcat all return number of characters to be written into the buffer regardless of overflow. Removed COM_AppendExtension, FS_CopyFile, FS_RemoveFile, FS_CopyFile_f. Made sure Q2PRO can only write files into subdirectories of the game directory with a fixed extension. Moved `play' command implementation into main client code. Added support for `s_ambient' value of 3. Renamed `net_log_active' cvar to `net_log_enable'. Log files are now written into `logs/' subdirectory.
Diffstat (limited to 'source/net_common.c')
-rw-r--r--source/net_common.c73
1 files changed, 39 insertions, 34 deletions
diff --git a/source/net_common.c b/source/net_common.c
index e677860..497ce0d 100644
--- a/source/net_common.c
+++ b/source/net_common.c
@@ -83,7 +83,7 @@ cvar_t *net_port;
static cvar_t *net_clientport;
static cvar_t *net_dropsim;
#endif
-static cvar_t *net_log_active;
+static cvar_t *net_log_enable;
static cvar_t *net_log_name;
static cvar_t *net_log_flush;
static cvar_t *net_ignore_icmp;
@@ -168,7 +168,7 @@ static qboolean NET_StringToSockaddr( const char *s, struct sockaddr_in *sadr )
sadr->sin_family = AF_INET;
sadr->sin_port = 0;
- Q_strncpyz( copy, s, sizeof( copy ) );
+ Q_strlcpy( copy, s, sizeof( copy ) );
// strip off a trailing :port if present
p = strchr( copy, ':' );
if( p ) {
@@ -213,7 +213,7 @@ char *NET_AdrToString( const netadr_t *a ) {
return s;
case NA_IP:
case NA_BROADCAST:
- Com_sprintf( s, sizeof( s ), "%u.%u.%u.%u:%u",
+ Q_snprintf( s, sizeof( s ), "%u.%u.%u.%u:%u",
a->ip[0], a->ip[1], a->ip[2], a->ip[3], ntohs( a->port ) );
return s;
default:
@@ -253,7 +253,7 @@ qboolean NET_StringToAdr( const char *s, netadr_t *a, int port ) {
//=============================================================================
-static void NetLogFile_Close( void ) {
+static void logfile_close( void ) {
if( !net_logFile ) {
return;
}
@@ -264,38 +264,45 @@ static void NetLogFile_Close( void ) {
net_logFile = 0;
}
-static void NetLogFile_Open( void ) {
+static void logfile_open( void ) {
+ char buffer[MAX_OSPATH];
+ size_t len;
int mode;
- mode = net_log_active->integer > 1 ? FS_MODE_APPEND : FS_MODE_WRITE;
+ len = Q_concat( buffer, sizeof( buffer ), "logs/",
+ net_log_name->string, ".log", NULL );
+ if( len >= sizeof( buffer ) ) {
+ Com_WPrintf( "Oversize logfile name specified\n" );
+ Cvar_Set( "net_log_enable", "0" );
+ return;
+ }
+ mode = net_log_enable->integer > 1 ? FS_MODE_APPEND : FS_MODE_WRITE;
if( net_log_flush->integer ) {
mode |= FS_FLUSH_SYNC;
}
- FS_FOpenFile( net_log_name->string, &net_logFile, mode );
-
+ FS_FOpenFile( buffer, &net_logFile, mode );
if( !net_logFile ) {
- Com_WPrintf( "Couldn't open %s\n", net_log_name->string );
- Cvar_Set( "net_log_active", "0" );
+ Com_WPrintf( "Couldn't open %s\n", buffer );
+ Cvar_Set( "net_log_enable", "0" );
return;
}
- Com_Printf( "Logging network packets to %s\n", net_log_name->string );
+ Com_Printf( "Logging network packets to %s\n", buffer );
}
-static void net_log_active_changed( cvar_t *self ) {
- if( !self->integer ) {
- NetLogFile_Close();
- } else {
- NetLogFile_Open();
+static void net_log_enable_changed( cvar_t *self ) {
+ logfile_close();
+ if( self->integer ) {
+ logfile_open();
}
-}
+}
static void net_log_param_changed( cvar_t *self ) {
- if( net_log_active->integer ) {
- NetLogFile_Close();
- NetLogFile_Open();
+ if( net_log_enable->integer ) {
+ logfile_close();
+ logfile_open();
}
}
@@ -384,7 +391,7 @@ qboolean NET_GetLoopPacket( netsrc_t sock ) {
memcpy( msg_read_buffer, loopmsg->data, loopmsg->datalen );
- if( net_log_active->integer ) {
+ if( net_log_enable->integer ) {
NET_LogPacket( &net_from, "LP recv", loopmsg->data, loopmsg->datalen );
}
if( sock == NS_CLIENT ) {
@@ -472,7 +479,7 @@ neterr_t NET_GetPacket( netsrc_t sock ) {
return NET_AGAIN;
}
- if( net_log_active->integer ) {
+ if( net_log_enable->integer ) {
NET_LogPacket( &net_from, "UDP recv", msg_read_buffer, ret );
}
@@ -525,7 +532,7 @@ neterr_t NET_SendPacket( netsrc_t sock, const netadr_t *to, size_t length, const
memcpy( msg->data, data, length );
msg->datalen = length;
- if( net_log_active->integer ) {
+ if( net_log_enable->integer ) {
NET_LogPacket( to, "LB send", data, length );
}
if( sock == NS_CLIENT ) {
@@ -607,7 +614,7 @@ neterr_t NET_SendPacket( netsrc_t sock, const netadr_t *to, size_t length, const
NET_AdrToString( to ) );
}
- if( net_log_active->integer ) {
+ if( net_log_enable->integer ) {
NET_LogPacket( to, "UDP send", data, ret );
}
net_sent += ret;
@@ -998,7 +1005,7 @@ neterr_t NET_Run( netstream_t *s ) {
FIFO_Commit( &s->recv, ret );
- if( net_log_active->integer ) {
+ if( net_log_enable->integer ) {
NET_LogPacket( &s->address, "TCP recv", data, ret );
}
net_rcvd += ret;
@@ -1021,7 +1028,7 @@ neterr_t NET_Run( netstream_t *s ) {
FIFO_Decommit( &s->send, ret );
- if( net_log_active->integer ) {
+ if( net_log_enable->integer ) {
NET_LogPacket( &s->address, "TCP send", data, ret );
}
net_sent += ret;
@@ -1268,11 +1275,11 @@ qboolean NET_GetAddress( netsrc_t sock, netadr_t *adr ) {
}
static size_t NET_UpRate_m( char *buffer, size_t size ) {
- return Com_sprintf( buffer, size, "%"PRIz, net_rate_up );
+ return Q_snprintf( buffer, size, "%"PRIz, net_rate_up );
}
static size_t NET_DnRate_m( char *buffer, size_t size ) {
- return Com_sprintf( buffer, size, "%"PRIz, net_rate_dn );
+ return Q_snprintf( buffer, size, "%"PRIz, net_rate_dn );
}
static void net_udp_param_changed( cvar_t *self ) {
@@ -1321,9 +1328,9 @@ void NET_Init( void ) {
net_clientport->changed = net_udp_param_changed;
net_dropsim = Cvar_Get( "net_dropsim", "0", 0 );
#endif
- net_log_active = Cvar_Get( "net_log_active", "0", 0 );
- net_log_active->changed = net_log_active_changed;
- net_log_name = Cvar_Get( "net_log_name", "qnetwork.log", 0 );
+ net_log_enable = Cvar_Get( "net_log_enable", "0", 0 );
+ net_log_enable->changed = net_log_enable_changed;
+ net_log_name = Cvar_Get( "net_log_name", "network", 0 );
net_log_name->changed = net_log_param_changed;
net_log_flush = Cvar_Get( "net_log_flush", "0", 0 );
net_log_flush->changed = net_log_param_changed;
@@ -1356,9 +1363,7 @@ void NET_Init( void ) {
net_tcp_clientport = Cvar_Get( "net_tcp_clientport", PORT_ANY_STRING, 0 );
net_tcp_backlog = Cvar_Get( "net_tcp_backlog", "4", 0 );
- if( net_log_active->integer ) {
- NetLogFile_Open();
- }
+ net_log_enable_changed( net_log_enable );
net_statTime = com_eventTime;