mirror of
https://git.do.srb2.org/KartKrew/Kart-Public.git
synced 2024-12-26 12:21:19 +00:00
TCP: remove BADSOCKET
This commit is contained in:
parent
97af30ae4b
commit
e2b604fdfd
5 changed files with 47 additions and 51 deletions
21
src/i_tcp.c
21
src/i_tcp.c
|
@ -215,7 +215,6 @@ static UINT8 UPNP_support = TRUE;
|
||||||
|
|
||||||
#if defined (USE_WINSOCK) && !defined (NONET)
|
#if defined (USE_WINSOCK) && !defined (NONET)
|
||||||
typedef SOCKET SOCKET_TYPE;
|
typedef SOCKET SOCKET_TYPE;
|
||||||
#define BADSOCKET INVALID_SOCKET
|
|
||||||
#define ERRSOCKET (SOCKET_ERROR)
|
#define ERRSOCKET (SOCKET_ERROR)
|
||||||
#else
|
#else
|
||||||
#if (defined (__unix__) && !defined (MSDOS)) || defined (__APPLE__) || defined (__HAIKU__) || defined(_PS3)
|
#if (defined (__unix__) && !defined (MSDOS)) || defined (__APPLE__) || defined (__HAIKU__) || defined(_PS3)
|
||||||
|
@ -223,7 +222,6 @@ typedef int SOCKET_TYPE;
|
||||||
#else
|
#else
|
||||||
typedef unsigned long SOCKET_TYPE;
|
typedef unsigned long SOCKET_TYPE;
|
||||||
#endif
|
#endif
|
||||||
#define BADSOCKET (SOCKET_TYPE)(~0)
|
|
||||||
#define ERRSOCKET (-1)
|
#define ERRSOCKET (-1)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -232,10 +230,10 @@ typedef int socklen_t;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef NONET
|
#ifndef NONET
|
||||||
static SOCKET_TYPE mysockets[MAXNETNODES+1] = {BADSOCKET};
|
static SOCKET_TYPE mysockets[MAXNETNODES+1] = {ERRSOCKET};
|
||||||
static size_t mysocketses = 0;
|
static size_t mysocketses = 0;
|
||||||
static int myfamily[MAXNETNODES+1] = {0};
|
static int myfamily[MAXNETNODES+1] = {0};
|
||||||
static SOCKET_TYPE nodesocket[MAXNETNODES+1] = {BADSOCKET};
|
static SOCKET_TYPE nodesocket[MAXNETNODES+1] = {ERRSOCKET};
|
||||||
static mysockaddr_t clientaddress[MAXNETNODES+1];
|
static mysockaddr_t clientaddress[MAXNETNODES+1];
|
||||||
static mysockaddr_t broadcastaddress[MAXNETNODES+1];
|
static mysockaddr_t broadcastaddress[MAXNETNODES+1];
|
||||||
static size_t broadcastaddresses = 0;
|
static size_t broadcastaddresses = 0;
|
||||||
|
@ -647,7 +645,7 @@ static boolean FD_CPY(fd_set *src, fd_set *dst, SOCKET_TYPE *fd, size_t len)
|
||||||
FD_ZERO(dst);
|
FD_ZERO(dst);
|
||||||
for (i = 0; i < len;i++)
|
for (i = 0; i < len;i++)
|
||||||
{
|
{
|
||||||
if(fd[i] != BADSOCKET && fd[i] != (SOCKET_TYPE)ERRSOCKET &&
|
if(fd[i] != (SOCKET_TYPE)ERRSOCKET &&
|
||||||
FD_ISSET(fd[i], src) && !FD_ISSET(fd[i], dst)) // no checking for dups
|
FD_ISSET(fd[i], src) && !FD_ISSET(fd[i], dst)) // no checking for dups
|
||||||
{
|
{
|
||||||
FD_SET(fd[i], dst);
|
FD_SET(fd[i], dst);
|
||||||
|
@ -725,7 +723,7 @@ static void SOCK_Send(void)
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else if (nodesocket[doomcom->remotenode] == BADSOCKET)
|
else if (nodesocket[doomcom->remotenode] == (SOCKET_TYPE)ERRSOCKET)
|
||||||
{
|
{
|
||||||
for (i = 0; i < mysocketses; i++)
|
for (i = 0; i < mysocketses; i++)
|
||||||
{
|
{
|
||||||
|
@ -777,7 +775,7 @@ static void SOCK_FreeNodenum(INT32 numnode)
|
||||||
DEBFILE(va("Free node %d (%s)\n", numnode, SOCK_GetNodeAddress(numnode)));
|
DEBFILE(va("Free node %d (%s)\n", numnode, SOCK_GetNodeAddress(numnode)));
|
||||||
|
|
||||||
nodeconnected[numnode] = false;
|
nodeconnected[numnode] = false;
|
||||||
nodesocket[numnode] = BADSOCKET;
|
nodesocket[numnode] = ERRSOCKET;
|
||||||
|
|
||||||
// put invalid address
|
// put invalid address
|
||||||
memset(&clientaddress[numnode], 0, sizeof (clientaddress[numnode]));
|
memset(&clientaddress[numnode], 0, sizeof (clientaddress[numnode]));
|
||||||
|
@ -804,7 +802,7 @@ static SOCKET_TYPE UDP_Bind(int family, struct sockaddr *addr, socklen_t addrlen
|
||||||
#endif
|
#endif
|
||||||
mysockaddr_t straddr;
|
mysockaddr_t straddr;
|
||||||
|
|
||||||
if (s == (SOCKET_TYPE)ERRSOCKET || s == BADSOCKET)
|
if (s == (SOCKET_TYPE)ERRSOCKET)
|
||||||
return (SOCKET_TYPE)ERRSOCKET;
|
return (SOCKET_TYPE)ERRSOCKET;
|
||||||
#ifdef USE_WINSOCK
|
#ifdef USE_WINSOCK
|
||||||
{ // Alam_GBC: disable the new UDP connection reset behavior for Win2k and up
|
{ // Alam_GBC: disable the new UDP connection reset behavior for Win2k and up
|
||||||
|
@ -911,9 +909,9 @@ static boolean UDP_Socket(void)
|
||||||
|
|
||||||
|
|
||||||
for (s = 0; s < mysocketses; s++)
|
for (s = 0; s < mysocketses; s++)
|
||||||
mysockets[s] = BADSOCKET;
|
mysockets[s] = ERRSOCKET;
|
||||||
for (s = 0; s < MAXNETNODES+1; s++)
|
for (s = 0; s < MAXNETNODES+1; s++)
|
||||||
nodesocket[s] = BADSOCKET;
|
nodesocket[s] = ERRSOCKET;
|
||||||
FD_ZERO(&masterset);
|
FD_ZERO(&masterset);
|
||||||
s = 0;
|
s = 0;
|
||||||
|
|
||||||
|
@ -1250,7 +1248,6 @@ static void SOCK_CloseSocket(void)
|
||||||
for (i=0; i < MAXNETNODES+1; i++)
|
for (i=0; i < MAXNETNODES+1; i++)
|
||||||
{
|
{
|
||||||
if (mysockets[i] != (SOCKET_TYPE)ERRSOCKET
|
if (mysockets[i] != (SOCKET_TYPE)ERRSOCKET
|
||||||
&& mysockets[i] != BADSOCKET
|
|
||||||
&& FD_ISSET(mysockets[i], &masterset))
|
&& FD_ISSET(mysockets[i], &masterset))
|
||||||
{
|
{
|
||||||
#if !defined (__DJGPP__) || defined (WATTCP)
|
#if !defined (__DJGPP__) || defined (WATTCP)
|
||||||
|
@ -1258,7 +1255,7 @@ static void SOCK_CloseSocket(void)
|
||||||
close(mysockets[i]);
|
close(mysockets[i]);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
mysockets[i] = BADSOCKET;
|
mysockets[i] = ERRSOCKET;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
64
src/mserv.c
64
src/mserv.c
|
@ -102,35 +102,35 @@
|
||||||
#define PACKET_SIZE 1024
|
#define PACKET_SIZE 1024
|
||||||
|
|
||||||
|
|
||||||
#define MS_NO_ERROR 0
|
#define MS_NO_ERROR 0
|
||||||
#define MS_SOCKET_ERROR -201
|
#define MS_SOCKET_ERROR -201
|
||||||
#define MS_CONNECT_ERROR -203
|
#define MS_CONNECT_ERROR -203
|
||||||
#define MS_WRITE_ERROR -210
|
#define MS_WRITE_ERROR -210
|
||||||
#define MS_READ_ERROR -211
|
#define MS_READ_ERROR -211
|
||||||
#define MS_CLOSE_ERROR -212
|
#define MS_CLOSE_ERROR -212
|
||||||
#define MS_GETHOSTBYNAME_ERROR -220
|
#define MS_GETHOSTBYNAME_ERROR -220
|
||||||
#define MS_GETHOSTNAME_ERROR -221
|
#define MS_GETHOSTNAME_ERROR -221
|
||||||
#define MS_TIMEOUT_ERROR -231
|
#define MS_TIMEOUT_ERROR -231
|
||||||
|
|
||||||
// see master server code for the values
|
// see master server code for the values
|
||||||
#define ADD_SERVER_MSG 101
|
#define ADD_SERVER_MSG 101
|
||||||
#define REMOVE_SERVER_MSG 103
|
#define REMOVE_SERVER_MSG 103
|
||||||
#define ADD_SERVERv2_MSG 104
|
#define ADD_SERVERv2_MSG 104
|
||||||
#define GET_SERVER_MSG 200
|
#define GET_SERVER_MSG 200
|
||||||
#define GET_SHORT_SERVER_MSG 205
|
#define GET_SHORT_SERVER_MSG 205
|
||||||
#define ASK_SERVER_MSG 206
|
#define ASK_SERVER_MSG 206
|
||||||
#define ANSWER_ASK_SERVER_MSG 207
|
#define ANSWER_ASK_SERVER_MSG 207
|
||||||
#define ASK_SERVER_MSG 206
|
#define ASK_SERVER_MSG 206
|
||||||
#define ANSWER_ASK_SERVER_MSG 207
|
#define ANSWER_ASK_SERVER_MSG 207
|
||||||
#define GET_MOTD_MSG 208
|
#define GET_MOTD_MSG 208
|
||||||
#define SEND_MOTD_MSG 209
|
#define SEND_MOTD_MSG 209
|
||||||
#define GET_ROOMS_MSG 210
|
#define GET_ROOMS_MSG 210
|
||||||
#define SEND_ROOMS_MSG 211
|
#define SEND_ROOMS_MSG 211
|
||||||
#define GET_ROOMS_HOST_MSG 212
|
#define GET_ROOMS_HOST_MSG 212
|
||||||
#define GET_VERSION_MSG 213
|
#define GET_VERSION_MSG 213
|
||||||
#define SEND_VERSION_MSG 214
|
#define SEND_VERSION_MSG 214
|
||||||
#define GET_BANNED_MSG 215 // Someone's been baaaaaad!
|
#define GET_BANNED_MSG 215 // Someone's been baaaaaad!
|
||||||
#define PING_SERVER_MSG 216
|
#define PING_SERVER_MSG 216
|
||||||
|
|
||||||
#define HEADER_SIZE (sizeof (INT32)*4)
|
#define HEADER_SIZE (sizeof (INT32)*4)
|
||||||
|
|
||||||
|
@ -217,7 +217,6 @@ UINT16 current_port = 0;
|
||||||
|
|
||||||
#if (defined (_WIN32) || defined (_WIN32_WCE) || defined (_WIN32)) && !defined (NONET)
|
#if (defined (_WIN32) || defined (_WIN32_WCE) || defined (_WIN32)) && !defined (NONET)
|
||||||
typedef SOCKET SOCKET_TYPE;
|
typedef SOCKET SOCKET_TYPE;
|
||||||
#define BADSOCKET INVALID_SOCKET
|
|
||||||
#define ERRSOCKET (SOCKET_ERROR)
|
#define ERRSOCKET (SOCKET_ERROR)
|
||||||
#else
|
#else
|
||||||
#if (defined (__unix__) && !defined (MSDOS)) || defined (__APPLE__) || defined (__HAIKU__) || defined (_PS3)
|
#if (defined (__unix__) && !defined (MSDOS)) || defined (__APPLE__) || defined (__HAIKU__) || defined (_PS3)
|
||||||
|
@ -225,7 +224,6 @@ typedef int SOCKET_TYPE;
|
||||||
#else
|
#else
|
||||||
typedef unsigned long SOCKET_TYPE;
|
typedef unsigned long SOCKET_TYPE;
|
||||||
#endif
|
#endif
|
||||||
#define BADSOCKET (SOCKET_TYPE)(~0)
|
|
||||||
#define ERRSOCKET (-1)
|
#define ERRSOCKET (-1)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -234,7 +232,7 @@ typedef int socklen_t;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef NONET
|
#ifndef NONET
|
||||||
static SOCKET_TYPE socket_fd = BADSOCKET; // WINSOCK socket
|
static SOCKET_TYPE socket_fd = ERRSOCKET; // WINSOCK socket
|
||||||
static struct timeval select_timeout;
|
static struct timeval select_timeout;
|
||||||
static fd_set wset;
|
static fd_set wset;
|
||||||
static size_t recvfull(SOCKET_TYPE s, char *buf, size_t len, int flags);
|
static size_t recvfull(SOCKET_TYPE s, char *buf, size_t len, int flags);
|
||||||
|
@ -265,9 +263,9 @@ void AddMServCommands(void)
|
||||||
static void CloseConnection(void)
|
static void CloseConnection(void)
|
||||||
{
|
{
|
||||||
#ifndef NONET
|
#ifndef NONET
|
||||||
if (socket_fd != (SOCKET_TYPE)ERRSOCKET && socket_fd != BADSOCKET)
|
if (socket_fd != (SOCKET_TYPE)ERRSOCKET)
|
||||||
close(socket_fd);
|
close(socket_fd);
|
||||||
socket_fd = BADSOCKET;
|
socket_fd = ERRSOCKET;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -385,7 +383,7 @@ static INT32 MS_Connect(const char *ip_addr, const char *str_port, INT32 async)
|
||||||
while (runp != NULL)
|
while (runp != NULL)
|
||||||
{
|
{
|
||||||
socket_fd = socket(runp->ai_family, runp->ai_socktype, runp->ai_protocol);
|
socket_fd = socket(runp->ai_family, runp->ai_socktype, runp->ai_protocol);
|
||||||
if (socket_fd != BADSOCKET && socket_fd != (SOCKET_TYPE)ERRSOCKET)
|
if (socket_fd != (SOCKET_TYPE)ERRSOCKET)
|
||||||
{
|
{
|
||||||
if (async) // do asynchronous connection
|
if (async) // do asynchronous connection
|
||||||
{
|
{
|
||||||
|
|
|
@ -244,7 +244,7 @@ static LRESULT CALLBACK MainWndproc(HWND hWnd, UINT message, WPARAM wParam, LPAR
|
||||||
D_PostEvent(&ev);
|
D_PostEvent(&ev);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
case WM_XBUTTONDOWN:
|
case WM_XBUTTONDOWN:
|
||||||
if (nodinput)
|
if (nodinput)
|
||||||
{
|
{
|
||||||
|
@ -253,7 +253,7 @@ static LRESULT CALLBACK MainWndproc(HWND hWnd, UINT message, WPARAM wParam, LPAR
|
||||||
D_PostEvent(&ev);
|
D_PostEvent(&ev);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
case WM_MOUSEWHEEL:
|
case WM_MOUSEWHEEL:
|
||||||
//I_OutputMsg("MW_WHEEL dispatched.\n");
|
//I_OutputMsg("MW_WHEEL dispatched.\n");
|
||||||
ev.type = ev_keydown;
|
ev.type = ev_keydown;
|
||||||
|
|
|
@ -2581,7 +2581,7 @@ acquire:
|
||||||
UINT64 newbuttons = joybuttons ^ lastjoybuttons;
|
UINT64 newbuttons = joybuttons ^ lastjoybuttons;
|
||||||
lastjoybuttons = joybuttons;
|
lastjoybuttons = joybuttons;
|
||||||
|
|
||||||
for (i = 0; i < JOYBUTTONS && i < JOYBUTTONS_MAX; i++, j <<= 1)
|
for (i = 0; i < JOYBUTTONS_MIN; i++, j <<= 1)
|
||||||
{
|
{
|
||||||
if (newbuttons & j) // button changed state?
|
if (newbuttons & j) // button changed state?
|
||||||
{
|
{
|
||||||
|
@ -2601,7 +2601,7 @@ acquire:
|
||||||
UINT64 newhats = joyhats ^ lastjoyhats;
|
UINT64 newhats = joyhats ^ lastjoyhats;
|
||||||
lastjoyhats = joyhats;
|
lastjoyhats = joyhats;
|
||||||
|
|
||||||
for (i = 0; i < JOYHATS*4 && i < JOYHATS_MAX*4; i++, j <<= 1)
|
for (i = 0; i < JOYHATS_MIN*4; i++, j <<= 1)
|
||||||
{
|
{
|
||||||
if (newhats & j) // button changed state?
|
if (newhats & j) // button changed state?
|
||||||
{
|
{
|
||||||
|
@ -2825,7 +2825,7 @@ acquire:
|
||||||
UINT64 newbuttons = joybuttons ^ lastjoy2buttons;
|
UINT64 newbuttons = joybuttons ^ lastjoy2buttons;
|
||||||
lastjoy2buttons = joybuttons;
|
lastjoy2buttons = joybuttons;
|
||||||
|
|
||||||
for (i = 0; i < JOYBUTTONS && i < JOYBUTTONS_MAX; i++, j <<= 1)
|
for (i = 0; i < JOYBUTTONS_MIN; i++, j <<= 1)
|
||||||
{
|
{
|
||||||
if (newbuttons & j) // button changed state?
|
if (newbuttons & j) // button changed state?
|
||||||
{
|
{
|
||||||
|
@ -2845,7 +2845,7 @@ acquire:
|
||||||
UINT64 newhats = joyhats ^ lastjoy2hats;
|
UINT64 newhats = joyhats ^ lastjoy2hats;
|
||||||
lastjoy2hats = joyhats;
|
lastjoy2hats = joyhats;
|
||||||
|
|
||||||
for (i = 0; i < JOYHATS*4 && i < JOYHATS_MAX*4; i++, j <<= 1)
|
for (i = 0; i < JOYHATS_MIN*4; i++, j <<= 1)
|
||||||
{
|
{
|
||||||
if (newhats & j) // button changed state?
|
if (newhats & j) // button changed state?
|
||||||
{
|
{
|
||||||
|
|
|
@ -322,6 +322,7 @@ static inline boolean I_SkipFrame(void)
|
||||||
case GS_LEVEL:
|
case GS_LEVEL:
|
||||||
if (!paused)
|
if (!paused)
|
||||||
return false;
|
return false;
|
||||||
|
/* FALLTHRU */
|
||||||
case GS_TIMEATTACK:
|
case GS_TIMEATTACK:
|
||||||
#ifndef CLIENT_LOADINGSCREEN
|
#ifndef CLIENT_LOADINGSCREEN
|
||||||
case GS_WAITINGPLAYERS:
|
case GS_WAITINGPLAYERS:
|
||||||
|
|
Loading…
Reference in a new issue