diff --git a/Code/BandTest/BandTest.cpp b/Code/BandTest/BandTest.cpp index 6732bb13..3ce21379 100644 --- a/Code/BandTest/BandTest.cpp +++ b/Code/BandTest/BandTest.cpp @@ -204,7 +204,7 @@ static int Ping_Host(unsigned long host_ip, unsigned long my_ip, int times, int static float Average_Ping(int num_pings, unsigned long *ping_times, bool ignore_low_high); static float Lowest_Ping(int num_pings, unsigned long *ping_times); static int Get_Path_To_Server(unsigned long *path, unsigned long my_ip, unsigned long server_ip); -static void Ping_Profile(SOCKADDR_IN *router_addr, unsigned long my_ip); +static void Ping_Profile(struct sockaddr_in *router_addr, unsigned long my_ip); static bool Set_Registry_Int(const char *name, int value); static int Get_Registry_Int(const char *name, int def_value); @@ -1072,7 +1072,7 @@ unsigned long Upstream_Detect(unsigned long server_ip, unsigned long my_ip, int -void Ping_Profile(SOCKADDR_IN *router_addr, unsigned long my_ip) +void Ping_Profile(struct sockaddr_in *router_addr, unsigned long my_ip) { float ping_averages[1000]; unsigned long ping_times[100]; diff --git a/Code/Commando/bioevent.cpp b/Code/Commando/bioevent.cpp index 3b1f8fe5..a5c90498 100644 --- a/Code/Commando/bioevent.cpp +++ b/Code/Commando/bioevent.cpp @@ -137,7 +137,7 @@ cBioEvent::Act(void) // Record his IP address for diagnostic purposes // WWASSERT(cNetwork::Get_Server_Rhost(SenderId) != NULL); - SOCKADDR_IN & address = cNetwork::Get_Server_Rhost(SenderId)->Get_Address(); + struct sockaddr_in & address = cNetwork::Get_Server_Rhost(SenderId)->Get_Address(); p_player->Set_Ip_Address(address.sin_addr.s_addr); // diff --git a/Code/Commando/gamedata.cpp b/Code/Commando/gamedata.cpp index 7e6dadfd..a32009e7 100644 --- a/Code/Commando/gamedata.cpp +++ b/Code/Commando/gamedata.cpp @@ -478,7 +478,7 @@ void cGameData::Rebalance_Team_Sides(void) void cGameData::Set_Ip_And_Port(void) { /* - SOCKADDR_IN local_address; + struct sockaddr_in local_address; bool retcode = cNetUtil::Get_Local_Address(&local_address); WWASSERT(retcode == true); diff --git a/Code/Commando/lanchat.h b/Code/Commando/lanchat.h index d7fbae7d..cbb7c776 100644 --- a/Code/Commando/lanchat.h +++ b/Code/Commando/lanchat.h @@ -32,7 +32,7 @@ #define LANCHAT_H #include "win.h" -#include +#include "network-typedefs.h" #include "chatshre.h" @@ -72,7 +72,7 @@ class cLanChat void Process_Position_Broadcast(cPacket & packet); SOCKET Socket; - SOCKADDR_IN LocalAddress; + struct sockaddr_in LocalAddress; DWORD LastPositionBroadcastTimeMs; int PositionBroadcastNumber; ChatLocationEnum CurrentLocation; diff --git a/Code/Commando/natsock.h b/Code/Commando/natsock.h index ce2b2190..8eb0d378 100644 --- a/Code/Commando/natsock.h +++ b/Code/Commando/natsock.h @@ -43,7 +43,7 @@ #include "assert.h" #include "vector.h" -#include +#include "network-typedefs.h" #ifndef DebugString #include "wwdebug.h" @@ -231,4 +231,4 @@ class SocketHandlerClass }; -#endif //NATSOCK_H \ No newline at end of file +#endif //NATSOCK_H diff --git a/Code/Commando/natter.cpp b/Code/Commando/natter.cpp index 073c67b3..6dfcc8a4 100644 --- a/Code/Commando/natter.cpp +++ b/Code/Commando/natter.cpp @@ -1274,7 +1274,7 @@ bool WOLNATInterfaceClass::Send_Game_Format_Packet_To(IPAddressClass *address, c #if (0) WWDEBUG_SAY(("WOLNATInterface - sendto %s\n", address->As_String())); - int result = sendto(socket_handler->Get_Socket(), full_packet.Get_Data(), full_packet.Get_Compressed_Size_Bytes(), 0, (LPSOCKADDR) &sock_address, sizeof(SOCKADDR_IN)); + int result = sendto(socket_handler->Get_Socket(), full_packet.Get_Data(), full_packet.Get_Compressed_Size_Bytes(), 0, (LPSOCKADDR) &sock_address, sizeof(struct sockaddr_in)); if (result == SOCKET_ERROR){ if (LAST_ERROR != WSAEWOULDBLOCK) { WWDEBUG_SAY(("WOLNATInterface - sendto returned error code %d\n", LAST_ERROR)); @@ -1379,7 +1379,7 @@ void WOLNATInterfaceClass::Service_Receive_Queue(SocketHandlerClass *socket) unsigned short port; int bytes = PacketManager.Get_Packet(socket->Get_Socket(), (unsigned char *)full_packet.Get_Data(), full_packet.Get_Max_Size(), ip_address, port); if (bytes > 0) { - sockaddr_in *addr_ptr = (LPSOCKADDR_IN) &full_packet.Get_From_Address_Wrapper()->FromAddress; + sockaddr_in *addr_ptr = (struct sockaddr_in*) &full_packet.Get_From_Address_Wrapper()->FromAddress; memcpy(&addr_ptr->sin_addr.s_addr, ip_address, 4); addr_ptr->sin_port = port; } diff --git a/Code/Commando/nicenum.cpp b/Code/Commando/nicenum.cpp index d36be0be..554a4fa7 100644 --- a/Code/Commando/nicenum.cpp +++ b/Code/Commando/nicenum.cpp @@ -25,7 +25,7 @@ #include "nicenum.h" -#include +#include "network-typedefs.h" #include #include "wwdebug.h" diff --git a/Code/Commando/pkthandlers.cpp b/Code/Commando/pkthandlers.cpp index 7a3b7f85..9202a61b 100644 --- a/Code/Commando/pkthandlers.cpp +++ b/Code/Commando/pkthandlers.cpp @@ -131,7 +131,7 @@ void cNetwork::Server_Packet_Handler(cPacket & packet, int rhost_id) if (object != NULL) { #ifdef WWDEBUG - //sockaddr_in *actual_from_addr_ptr = (LPSOCKADDR_IN) &packet.Get_From_Address_Wrapper()->FromAddress; + //sockaddr_in *actual_from_addr_ptr = (struct sockaddr_in*) &packet.Get_From_Address_Wrapper()->FromAddress; //sockaddr_in rhost_addr = PServerConnection->Get_Remote_Host(rhost_id)->Get_Address(); #endif //WWDEBUG diff --git a/Code/SControl/servercontrolsocket.h b/Code/SControl/servercontrolsocket.h index 3ff3685f..e71fb42d 100644 --- a/Code/SControl/servercontrolsocket.h +++ b/Code/SControl/servercontrolsocket.h @@ -42,7 +42,7 @@ #include "assert.h" #include "vector.h" -#include +#include "network-typedefs.h" #ifndef DebugString #include "wwdebug.h" @@ -209,4 +209,4 @@ class ServerControlSocketClass }; -#endif //SERVERCONTROLSOCKET_H \ No newline at end of file +#endif //SERVERCONTROLSOCKET_H diff --git a/Code/Tests/Bandy/bandy.cpp b/Code/Tests/Bandy/bandy.cpp index 1180bf9a..fc5acd72 100644 --- a/Code/Tests/Bandy/bandy.cpp +++ b/Code/Tests/Bandy/bandy.cpp @@ -39,7 +39,7 @@ * Functions: * * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ -#include +#include #include #include #include diff --git a/Code/Tests/LocalHost/main.cpp b/Code/Tests/LocalHost/main.cpp index 283d6469..eb8ccab6 100644 --- a/Code/Tests/LocalHost/main.cpp +++ b/Code/Tests/LocalHost/main.cpp @@ -32,7 +32,7 @@ #include #include -#include +#include #include //--------------------------------------------------------------------------- @@ -53,7 +53,7 @@ void main(void) int rc_ioctl = ::ioctlsocket(sock, FIONBIO, &is_nonblocking); assert(rc_ioctl == 0); - SOCKADDR_IN local_address; + struct sockaddr_in local_address; local_address.sin_family = AF_INET; local_address.sin_addr.s_addr = ::inet_addr("127.0.0.1"); // localhost local_address.sin_port = ::htons(5555); // arbitrary @@ -92,7 +92,7 @@ void main(void) { char recv_data[200]; ::memset(recv_data, 0, sizeof(recv_data)); - SOCKADDR_IN from_address; + struct sockaddr_in from_address; int from_len = sizeof(from_address); rc_recv = ::recvfrom(sock, recv_data, sizeof(recv_data), 0, (LPSOCKADDR) &from_address, &from_len); diff --git a/Code/Tools/RenRem/RenRem.cpp b/Code/Tools/RenRem/RenRem.cpp index 2f11f090..dd413b0d 100644 --- a/Code/Tools/RenRem/RenRem.cpp +++ b/Code/Tools/RenRem/RenRem.cpp @@ -39,7 +39,7 @@ * Functions: * * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ -#include +#include "network-typedefs.h" #include #include #include @@ -287,4 +287,4 @@ int main(int argc, char **argv) WSACleanup(); return(0); -} \ No newline at end of file +} diff --git a/Code/Tools/RenegadeGR/field.cpp b/Code/Tools/RenegadeGR/field.cpp index e8b80992..cdc06d15 100644 --- a/Code/Tools/RenegadeGR/field.cpp +++ b/Code/Tools/RenegadeGR/field.cpp @@ -34,7 +34,7 @@ * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ #include #include -#include +#include #include "field.h" diff --git a/Code/Tools/RenegadeGR/packet.cpp b/Code/Tools/RenegadeGR/packet.cpp index 60a6cae7..d264f570 100644 --- a/Code/Tools/RenegadeGR/packet.cpp +++ b/Code/Tools/RenegadeGR/packet.cpp @@ -39,7 +39,7 @@ #include #include #include -#include +#include #include "packet.h" diff --git a/Code/Tools/RenegadeGR/tcpmgr.h b/Code/Tools/RenegadeGR/tcpmgr.h index dde4d019..1414816b 100644 --- a/Code/Tools/RenegadeGR/tcpmgr.h +++ b/Code/Tools/RenegadeGR/tcpmgr.h @@ -32,7 +32,7 @@ #ifdef _WINDOWS #include -#include +#include #include #else //UNIX diff --git a/Code/Tools/RenegadeGR/wtime.h b/Code/Tools/RenegadeGR/wtime.h index 01a80748..74fcb1d8 100644 --- a/Code/Tools/RenegadeGR/wtime.h +++ b/Code/Tools/RenegadeGR/wtime.h @@ -35,7 +35,7 @@ wtime Neal Kettler #include #else #include -#include +#include #endif #include diff --git a/Code/Tools/wlib/wtime.h b/Code/Tools/wlib/wtime.h index 1b113e9b..ff37ab85 100644 --- a/Code/Tools/wlib/wtime.h +++ b/Code/Tools/wlib/wtime.h @@ -35,7 +35,7 @@ wtime Neal Kettler #include #else #include -#include +#include #endif #include diff --git a/Code/Tools/wlib/xtime.h b/Code/Tools/wlib/xtime.h index 72e58694..982e02c2 100644 --- a/Code/Tools/wlib/xtime.h +++ b/Code/Tools/wlib/xtime.h @@ -44,7 +44,7 @@ function :-) #include #else #include -#include +#include #endif #include diff --git a/Code/Tools/wnet/tcp.h b/Code/Tools/wnet/tcp.h index 80b837db..32cc96c2 100644 --- a/Code/Tools/wnet/tcp.h +++ b/Code/Tools/wnet/tcp.h @@ -33,7 +33,7 @@ TCP Neal Kettler neal@westwood.com #ifdef _WINDOWS -#include +#include #include #define close _close #define read _read diff --git a/Code/Tools/wnet/udp.h b/Code/Tools/wnet/udp.h index bac982a8..4557fc81 100644 --- a/Code/Tools/wnet/udp.h +++ b/Code/Tools/wnet/udp.h @@ -26,7 +26,7 @@ #include #ifdef _WINDOWS -#include +#include #include #define close _close #define read _read diff --git a/Code/WWOnline/GameResField.cpp b/Code/WWOnline/GameResField.cpp index 8c82b798..a7711054 100644 --- a/Code/WWOnline/GameResField.cpp +++ b/Code/WWOnline/GameResField.cpp @@ -41,7 +41,7 @@ // Get rid of the nameless struct/union warning #pragma warning(disable: 4201) -#include +#include #pragma warning(default: 4201) namespace WWOnline { diff --git a/Code/WWOnline/GameResPacket.cpp b/Code/WWOnline/GameResPacket.cpp index 88b3b2a6..983b0435 100644 --- a/Code/WWOnline/GameResPacket.cpp +++ b/Code/WWOnline/GameResPacket.cpp @@ -35,7 +35,7 @@ #include "GameResPacket.h" #include #include -#include +#include "network-typedefs.h" #include namespace WWOnline { diff --git a/Code/wwnet/CMakeLists.txt b/Code/wwnet/CMakeLists.txt index 7fdb7952..778fd0a8 100644 --- a/Code/wwnet/CMakeLists.txt +++ b/Code/wwnet/CMakeLists.txt @@ -31,6 +31,7 @@ set(WWNET_SRC singlepl.h wwpacket.cpp wwpacket.h + network-typedefs.h ) # Targets to build. diff --git a/Code/wwnet/connect.cpp b/Code/wwnet/connect.cpp index bb6cf0e1..9305828d 100644 --- a/Code/wwnet/connect.cpp +++ b/Code/wwnet/connect.cpp @@ -229,7 +229,7 @@ void cConnection::Init_Stats() } //------------------------------------------------------------------------------------ -void cConnection::Init_As_Client(LPSOCKADDR_IN p_server_address, unsigned short my_port) +void cConnection::Init_As_Client(struct sockaddr_in* p_server_address, unsigned short my_port) { WWASSERT(p_server_address != NULL); WWASSERT(!InitDone); @@ -285,7 +285,7 @@ void cConnection::Init_As_Client(ULONG server_ip, USHORT server_port, unsigned s WWASSERT(server_port >= MIN_SERVER_PORT && server_port <= MAX_SERVER_PORT); - SOCKADDR_IN server_address; + struct sockaddr_in server_address; ZeroMemory(&server_address, sizeof(server_address)); if (!cSinglePlayerData::Is_Single_Player()) { @@ -363,12 +363,12 @@ bool cConnection::Bind(USHORT port, ULONG addr) WWASSERT((!IsServer) || (IsServer && port >= MIN_SERVER_PORT && port <= MAX_SERVER_PORT)); - SOCKADDR_IN address; + struct sockaddr_in address; cNetUtil::Create_Local_Address(&address, port); if (addr) address.sin_addr.s_addr = htonl(addr); - if (::bind(Sock, (LPSOCKADDR) &address, sizeof(SOCKADDR_IN)) != SOCKET_ERROR) { + if (::bind(Sock, (struct sockaddr*) &address, sizeof(struct sockaddr_in)) != SOCKET_ERROR) { LocalPort = port; WWDEBUG_SAY(("Bound to local port %d.\n", LocalPort)); return true; @@ -636,7 +636,7 @@ bool cConnection::Receive_Packet() #ifndef WRAPPER_CRC if (!packet.Is_Crc_Correct()) { #ifdef WWDEBUG - sockaddr_in *addr_ptr = (LPSOCKADDR_IN) &packet.Get_From_Address_Wrapper()->FromAddress; + sockaddr_in *addr_ptr = (struct sockaddr_in*) &packet.Get_From_Address_Wrapper()->FromAddress; #endif //WWDEBUG WWDEBUG_SAY(("*** CRC FAILURE: PACKET DISCARDED ***\n")); WWDEBUG_SAY(("*** CRC FAILURE: Packet from %s\n", Addr_As_String(addr_ptr))); @@ -715,7 +715,7 @@ bool cConnection::Receive_Packet() // const int packet_id = packet.Get_Id(); const int sender_id = packet.Get_Sender_Id(); - SOCKADDR_IN * p_from_address = &packet.Get_From_Address_Wrapper()->FromAddress; + struct sockaddr_in * p_from_address = &packet.Get_From_Address_Wrapper()->FromAddress; WWASSERT(p_from_address != NULL); cRemoteHost * p_sender_rhost = NULL; if (sender_id != cPacket::UNDEFINED_ID) { @@ -990,7 +990,7 @@ bool cConnection::Receive_Packet() //----------------------------------------------------------------------------- void cConnection::Process_Connection_Request(cPacket & packet) { - LPSOCKADDR_IN p_address = &packet.Get_From_Address_Wrapper()->FromAddress; + struct sockaddr_in* p_address = &packet.Get_From_Address_Wrapper()->FromAddress; WWASSERT(InitDone); WWASSERT(IsServer); @@ -1085,7 +1085,7 @@ int cConnection::Single_Player_sendto(cPacket & packet) } //------------------------------------------------------------------------------------ -int cConnection::Address_To_Rhostid(const SOCKADDR_IN* p_address) +int cConnection::Address_To_Rhostid(const struct sockaddr_in* p_address) { WWASSERT(p_address != NULL); @@ -1114,7 +1114,7 @@ int cConnection::Address_To_Rhostid(const SOCKADDR_IN* p_address) //int last_packet_len = 0; //------------------------------------------------------------------------------------ -int cConnection::Low_Level_Send_Wrapper(cPacket & packet, LPSOCKADDR_IN p_address) +int cConnection::Low_Level_Send_Wrapper(cPacket & packet, struct sockaddr_in* p_address) { WWASSERT(p_address != NULL); @@ -1152,7 +1152,7 @@ memcpy(last_packet, packet.Get_Data(), last_packet_len); return(0); //ret_code = sendto(Sock, packet.Get_Data(), // packet.Get_Compressed_Size_Bytes(), 0, - // (LPSOCKADDR) p_address, sizeof(SOCKADDR_IN)); + // (LPSOCKADDR) p_address, sizeof(struct sockaddr_in)); } else { PacketManager.Flush(); ret_code = packet.Get_Compressed_Size_Bytes(); @@ -1173,7 +1173,7 @@ memcpy(last_packet, packet.Get_Data(), last_packet_len); } //------------------------------------------------------------------------------------ -int cConnection::Send_Wrapper(cPacket & packet, LPSOCKADDR_IN p_address) +int cConnection::Send_Wrapper(cPacket & packet, struct sockaddr_in* p_address) { WWASSERT(p_address != NULL); @@ -1259,7 +1259,7 @@ int cConnection::Low_Level_Receive_Wrapper(cPacket & packet) cRemoteHost *rhost_ptr = PRHost[i]; if (rhost_ptr) { - SOCKADDR_IN rhost_addr = rhost_ptr->Get_Address(); + struct sockaddr_in rhost_addr = rhost_ptr->Get_Address(); if (memcmp(ip_address, &rhost_addr.sin_addr.s_addr, 4) == 0) { if (rhost_addr.sin_port == port) { @@ -1285,20 +1285,20 @@ int cConnection::Low_Level_Receive_Wrapper(cPacket & packet) if (bytes) { - sockaddr_in *addr_ptr = (LPSOCKADDR_IN) &packet.Get_From_Address_Wrapper()->FromAddress; + sockaddr_in *addr_ptr = (struct sockaddr_in*) &packet.Get_From_Address_Wrapper()->FromAddress; memcpy(&addr_ptr->sin_addr.s_addr, ip_address, 4); addr_ptr->sin_port = port; } ret_code = bytes; #if (0) - int address_size = sizeof(SOCKADDR_IN); + int address_size = sizeof(struct sockaddr_in); ret_code = recvfrom(Sock, packet.Get_Data(), packet.Get_Max_Size(), 0, (LPSOCKADDR) &packet.Get_From_Address_Wrapper()->FromAddress, &address_size); if (ret_code > 0) { - //WWDEBUG_SAY(("cConnection: recvfrom %s\n", Addr_As_String((LPSOCKADDR_IN) &packet.Get_From_Address_Wrapper()->FromAddress))); + //WWDEBUG_SAY(("cConnection: recvfrom %s\n", Addr_As_String((struct sockaddr_in*) &packet.Get_From_Address_Wrapper()->FromAddress))); } #endif //(0) @@ -1427,7 +1427,7 @@ void cConnection::Handle_Send_Resource_Failure(int rhost_id) */ //------------------------------------------------------------------------------------ -void cConnection::Send_Packet_To_Address(cPacket & packet, LPSOCKADDR_IN p_address) +void cConnection::Send_Packet_To_Address(cPacket & packet, struct sockaddr_in* p_address) { WWASSERT(p_address != NULL); @@ -1649,7 +1649,7 @@ void cConnection::Send_Accept_Sc(int new_rhost_id) } //----------------------------------------------------------------------------- -void cConnection::Send_Refusal_Sc(LPSOCKADDR_IN p_address, REFUSAL_CODE refusal_code) +void cConnection::Send_Refusal_Sc(struct sockaddr_in* p_address, REFUSAL_CODE refusal_code) { WWASSERT(p_address != NULL); @@ -1683,7 +1683,7 @@ void cConnection::Send_Refusal_Sc(LPSOCKADDR_IN p_address, REFUSAL_CODE refusal_ } //----------------------------------------------------------------------------- -void cConnection::Send_Ack(LPSOCKADDR_IN p_address, int packet_id) +void cConnection::Send_Ack(struct sockaddr_in* p_address, int packet_id) { WWASSERT(p_address != NULL); WWASSERT(InitDone); @@ -2670,4 +2670,4 @@ void cConnection::Get_Latency(int &low, int &high, int ¤t) //KEEPALIVE_TIMEOUT_MS(cNetUtil::Get_Default_Keepalive_Timeout_Ms()), //MAX_RESENDS(cNetUtil::Get_Default_Max_Resends()), - //MULTI_SENDS(cNetUtil::Get_Default_Multi_Sends()), //if (!Application_Acceptance_Handler(packet)) { \ No newline at end of file + //MULTI_SENDS(cNetUtil::Get_Default_Multi_Sends()), //if (!Application_Acceptance_Handler(packet)) { diff --git a/Code/wwnet/connect.h b/Code/wwnet/connect.h index 91704276..5ba73655 100644 --- a/Code/wwnet/connect.h +++ b/Code/wwnet/connect.h @@ -154,7 +154,7 @@ class cConnection void Install_Client_Packet_Handler(Client_Packet_Handler handler); // Need to use this. ST - 8/10/2001 11:52AM - void Send_Packet_To_Address(cPacket & packet, LPSOCKADDR_IN p_address); + void Send_Packet_To_Address(cPacket & packet, struct sockaddr_in* p_address); #ifdef WWDEBUG @@ -168,20 +168,20 @@ class cConnection cConnection(const cConnection& rhs); // Disallow copy (compile/link time) cConnection& operator=(const cConnection& rhs); // Disallow assignment (compile/link time) - void Init_As_Client(LPSOCKADDR_IN p_server_address, unsigned short my_port = 0); + void Init_As_Client(struct sockaddr_in* p_server_address, unsigned short my_port = 0); bool Demultiplex_R_Or_U_Packet(cPacket * p_packet, int rhost_id); void Send_Accept_Sc(int new_rhost_id); bool Bind(USHORT port, ULONG addr = 0); bool Receive_Packet(); - int Low_Level_Send_Wrapper(cPacket & packet, LPSOCKADDR_IN p_address); - int Send_Wrapper(cPacket & packet, LPSOCKADDR_IN p_address); + int Low_Level_Send_Wrapper(cPacket & packet, struct sockaddr_in* p_address); + int Send_Wrapper(cPacket & packet, struct sockaddr_in* p_address); int Send_Wrapper(cPacket & packet, int addressee); int Low_Level_Receive_Wrapper(cPacket & packet); int Receive_Wrapper(cPacket & packet); void Set_R_And_U_Packet_Id(cPacket & packet, int addressee, BYTE send_type); void R_And_U_Send(cPacket & packet, int addressee); - void Send_Ack(LPSOCKADDR_IN p_address, int reliable_packet_id); - void Send_Refusal_Sc(LPSOCKADDR_IN p_address, REFUSAL_CODE refusal_code); + void Send_Ack(struct sockaddr_in* p_address, int reliable_packet_id); + void Send_Refusal_Sc(struct sockaddr_in* p_address, REFUSAL_CODE refusal_code); void Process_Connection_Request(cPacket & packet); void Send_Keepalives(); static LPCSTR Type_Translation(int type); @@ -189,7 +189,7 @@ class cConnection USHORT Calculate_Packet_Bits(USHORT app_bytes); int Single_Player_sendto(cPacket & packet); int Single_Player_recvfrom(char * data); - int Address_To_Rhostid(const SOCKADDR_IN* p_address); + int Address_To_Rhostid(const struct sockaddr_in* p_address); bool Is_Time_To_Resend_Packet_To_Remote_Host(const cPacket *packet, cRemoteHost *rhost); bool Is_Packet_Too_Old(const cPacket *packet, cRemoteHost *rhost); diff --git a/Code/wwnet/fromaddress.h b/Code/wwnet/fromaddress.h index c643af0c..44174421 100644 --- a/Code/wwnet/fromaddress.h +++ b/Code/wwnet/fromaddress.h @@ -32,7 +32,7 @@ #define FROMADDRESS_H #include "win.h" -#include +#include "network-typedefs.h" // // This trivial class exists solely to speed compile times. @@ -43,7 +43,7 @@ class cFromAddress public: cFromAddress& operator=(const cFromAddress& rhs) {FromAddress = rhs.FromAddress; return * this;} - SOCKADDR_IN FromAddress; + struct sockaddr_in FromAddress; }; #endif // FROMADDRESS_H diff --git a/Code/wwnet/netutil.cpp b/Code/wwnet/netutil.cpp index 6c21e304..8f936df8 100644 --- a/Code/wwnet/netutil.cpp +++ b/Code/wwnet/netutil.cpp @@ -226,7 +226,7 @@ bool cNetUtil::Would_Block(LPCSTR sFile, unsigned uLine, int ret_code) // // Returns up to max_addresses adapter addresses for the local host // -int cNetUtil::Get_Local_Tcpip_Addresses(SOCKADDR_IN ip_address[], USHORT max_addresses) +int cNetUtil::Get_Local_Tcpip_Addresses(struct sockaddr_in ip_address[], USHORT max_addresses) { WWDEBUG_SAY(("cNetUtil::Get_Local_Tcpip_Addresses:\n")); @@ -250,7 +250,7 @@ int cNetUtil::Get_Local_Tcpip_Addresses(SOCKADDR_IN ip_address[], USHORT max_add } else { while (num_adapters < max_addresses && p_hostent->h_addr_list[num_adapters] != NULL) { - ZeroMemory(&ip_address[num_adapters], sizeof(SOCKADDR_IN)); + ZeroMemory(&ip_address[num_adapters], sizeof(struct sockaddr_in)); ip_address[num_adapters].sin_family = AF_INET; ip_address[num_adapters].sin_addr.s_addr = *((u_long *) (p_hostent->h_addr_list[num_adapters])); @@ -263,7 +263,7 @@ int cNetUtil::Get_Local_Tcpip_Addresses(SOCKADDR_IN ip_address[], USHORT max_add } //----------------------------------------------------------------------------- -bool cNetUtil::Is_Same_Address(LPSOCKADDR_IN p_address1, const SOCKADDR_IN* p_address2) +bool cNetUtil::Is_Same_Address(struct sockaddr_in* p_address1, const struct sockaddr_in* p_address2) { // // C disallows comparison of structs... @@ -279,7 +279,7 @@ bool cNetUtil::Is_Same_Address(LPSOCKADDR_IN p_address1, const SOCKADDR_IN* p_ad } //------------------------------------------------------------------------------- -void cNetUtil::Address_To_String(LPSOCKADDR_IN p_address, char * str, UINT len, +void cNetUtil::Address_To_String(struct sockaddr_in* p_address, char * str, UINT len, USHORT & port) { WWASSERT(p_address != NULL); @@ -310,10 +310,10 @@ LPCSTR cNetUtil::Address_To_String(ULONG ip) } //------------------------------------------------------------------------------- -void cNetUtil::String_To_Address(LPSOCKADDR_IN p_address, LPCSTR str, USHORT port) +void cNetUtil::String_To_Address(struct sockaddr_in* p_address, LPCSTR str, USHORT port) { WWASSERT(p_address != NULL); - ZeroMemory(p_address, sizeof(SOCKADDR_IN)); + ZeroMemory(p_address, sizeof(struct sockaddr_in)); p_address->sin_family = AF_INET; p_address->sin_addr.s_addr = ::inet_addr(str); @@ -546,7 +546,7 @@ void cNetUtil::Create_Unbound_Socket(SOCKET & sock) } //------------------------------------------------------------------------------- -bool cNetUtil::Create_Bound_Socket(SOCKET & sock, USHORT port, SOCKADDR_IN & local_address) +bool cNetUtil::Create_Bound_Socket(SOCKET & sock, USHORT port, struct sockaddr_in & local_address) { // // TSS - is all this necessary or is above function OK? @@ -555,7 +555,7 @@ bool cNetUtil::Create_Bound_Socket(SOCKET & sock, USHORT port, SOCKADDR_IN & loc Create_Unbound_Socket(sock); Create_Local_Address(&local_address, port); - int result = ::bind(sock, (LPSOCKADDR) &local_address, sizeof(SOCKADDR_IN)); + int result = ::bind(sock, (LPSOCKADDR) &local_address, sizeof(struct sockaddr_in)); if (result == 0) { return true; } else { @@ -576,23 +576,23 @@ void cNetUtil::Close_Socket(SOCKET & sock) //----------------------------------------------------------------------------- void cNetUtil::Broadcast(SOCKET & sock, USHORT port, cPacket & packet) { - SOCKADDR_IN broadcast_address; + struct sockaddr_in broadcast_address; Create_Broadcast_Address(&broadcast_address, port); int bytes_sent; //WSA_CHECK(bytes_sent = sendto(sock, packet.Data, packet.SendLength, - // 0, &broadcast_address, sizeof(SOCKADDR_IN))); + // 0, &broadcast_address, sizeof(struct sockaddr_in))); bytes_sent = sendto(sock, packet.Get_Data(), packet.Get_Compressed_Size_Bytes(), - 0, (LPSOCKADDR) &broadcast_address, sizeof(SOCKADDR_IN)); + 0, (LPSOCKADDR) &broadcast_address, sizeof(struct sockaddr_in)); // FIXME (TSS) WSAENOBUFS //WWDEBUG_SAY(("Sent broadcast, length = %d bytes\n", bytes_sent)); } //------------------------------------------------------------------------------- -void cNetUtil::Create_Broadcast_Address(LPSOCKADDR_IN p_broadcast_address, +void cNetUtil::Create_Broadcast_Address(struct sockaddr_in* p_broadcast_address, USHORT port) { WWASSERT(p_broadcast_address != NULL); - ZeroMemory(p_broadcast_address, sizeof(SOCKADDR_IN)); + ZeroMemory(p_broadcast_address, sizeof(struct sockaddr_in)); p_broadcast_address->sin_family = AF_INET; p_broadcast_address->sin_addr.s_addr = INADDR_BROADCAST; // ::inet_addr("255.255.255.255"); @@ -600,10 +600,10 @@ void cNetUtil::Create_Broadcast_Address(LPSOCKADDR_IN p_broadcast_address, } //------------------------------------------------------------------------------- -void cNetUtil::Create_Local_Address(LPSOCKADDR_IN p_local_address, USHORT port) +void cNetUtil::Create_Local_Address(struct sockaddr_in* p_local_address, USHORT port) { WWASSERT(p_local_address != NULL); - ZeroMemory(p_local_address, sizeof(SOCKADDR_IN)); + ZeroMemory(p_local_address, sizeof(struct sockaddr_in)); p_local_address->sin_family = AF_INET; p_local_address->sin_addr.s_addr = INADDR_ANY; @@ -611,7 +611,7 @@ void cNetUtil::Create_Local_Address(LPSOCKADDR_IN p_local_address, USHORT port) } //------------------------------------------------------------------------------- -bool cNetUtil::Get_Local_Address(LPSOCKADDR_IN p_local_address) +bool cNetUtil::Get_Local_Address(struct sockaddr_in* p_local_address) { WWASSERT(p_local_address != NULL); @@ -623,11 +623,11 @@ bool cNetUtil::Get_Local_Address(LPSOCKADDR_IN p_local_address) */ const USHORT MAX_ADDRESSES = 10; - SOCKADDR_IN local_address[MAX_ADDRESSES]; + struct sockaddr_in local_address[MAX_ADDRESSES]; int num_addresses = Get_Local_Tcpip_Addresses(local_address, MAX_ADDRESSES); if (num_addresses > 0) { - ::memcpy(p_local_address, &local_address[0], sizeof(SOCKADDR_IN)); + ::memcpy(p_local_address, &local_address[0], sizeof(struct sockaddr_in)); } return (num_addresses > 0); @@ -642,7 +642,7 @@ void cNetUtil::Lan_Servicing(SOCKET & sock, LanPacketHandlerCallback p_callback) do { cPacket packet; - int address_len = sizeof(SOCKADDR_IN); + int address_len = sizeof(struct sockaddr_in); // // If we appear to crash INSIDE recvfrom then this tends to indicate @@ -675,4 +675,4 @@ void cNetUtil::Lan_Servicing(SOCKET & sock, LanPacketHandlerCallback p_callback) WWDEBUG_SAY(("*** cNetUtil::Lan_Servicing: Too much time (%d ms)) spent receiving lan packets.\n", time_spent)); } -} \ No newline at end of file +} diff --git a/Code/wwnet/netutil.h b/Code/wwnet/netutil.h index 18047400..0c06af3a 100644 --- a/Code/wwnet/netutil.h +++ b/Code/wwnet/netutil.h @@ -32,7 +32,7 @@ #define NETUTIL_H #include "win.h" -#include +#include "network-typedefs.h" #include "bittype.h" @@ -55,20 +55,20 @@ class cNetUtil public: static void Wsa_Init(); static bool Protocol_Init(bool is_internet); - static bool Get_Local_Address(LPSOCKADDR_IN p_local_address); + static bool Get_Local_Address(struct sockaddr_in* p_local_address); static void Wsa_Error(LPCSTR sFile, unsigned uLine); - static bool Is_Same_Address(LPSOCKADDR_IN p_address1, const SOCKADDR_IN* p_address2); + static bool Is_Same_Address(struct sockaddr_in* p_address1, const struct sockaddr_in* p_address2); static bool Would_Block(LPCSTR sFile, unsigned uLine, int ret_code); static bool Send_Resource_Failure(LPCSTR sFile, unsigned uLine, int ret_code); - static void Address_To_String(LPSOCKADDR_IN p_address, char * str, UINT len, + static void Address_To_String(struct sockaddr_in* p_address, char * str, UINT len, USHORT & port); static LPCSTR Address_To_String(ULONG ip_address); - static void String_To_Address(LPSOCKADDR_IN p_address, LPCSTR str, USHORT port); + static void String_To_Address(struct sockaddr_in* p_address, LPCSTR str, USHORT port); static void Create_Unbound_Socket(SOCKET & sock); - static bool Create_Bound_Socket(SOCKET & sock, USHORT port, SOCKADDR_IN & local_address); + static bool Create_Bound_Socket(SOCKET & sock, USHORT port, struct sockaddr_in & local_address); static void Close_Socket(SOCKET & sock); - static void Create_Broadcast_Address(LPSOCKADDR_IN p_broadcast_address, USHORT port); - static void Create_Local_Address(LPSOCKADDR_IN p_local_address, USHORT port); + static void Create_Broadcast_Address(struct sockaddr_in* p_broadcast_address, USHORT port); + static void Create_Local_Address(struct sockaddr_in* p_local_address, USHORT port); static void Broadcast(SOCKET & sock, USHORT port, cPacket & packet); static bool Is_Tcpip_Present(); static void Lan_Servicing(SOCKET & sock, LanPacketHandlerCallback p_callback); @@ -89,7 +89,7 @@ class cNetUtil static const char *Winsock_Error_Text(int error_code); private: - static int Get_Local_Tcpip_Addresses(SOCKADDR_IN ip_address[], USHORT max_addresses); + static int Get_Local_Tcpip_Addresses(struct sockaddr_in ip_address[], USHORT max_addresses); static bool IsInternet; static UINT DefaultResendTimeoutMs; @@ -146,4 +146,4 @@ class cNetUtil //static float PriorityGrowthPerSecond; //static int Get_Default_Resend_Timeout_Lan_Ms() {return RESEND_TIMEOUT_LAN_MS;} //static int Get_Default_Resend_Timeout_Internet_Ms() {return RESEND_TIMEOUT_INTERNET_MS;} - //static void Onetime_Init(); \ No newline at end of file + //static void Onetime_Init(); diff --git a/Code/wwnet/network-typedefs.h b/Code/wwnet/network-typedefs.h new file mode 100644 index 00000000..2352ff31 --- /dev/null +++ b/Code/wwnet/network-typedefs.h @@ -0,0 +1,35 @@ +#ifndef NETWORKTYPEDEFS_H +#define NETWORKTYPEDEFS_H + +#ifdef _WINDOWS +#include +#else +#include +#include +#include // for getaddrinfo() and freeaddrinfo() +#include +#include +#include +#include // for close() +typedef int SOCKET; +#define INVALID_SOCKET (-1) +#define SOCKET_ERROR (-1) +#define closesocket(x) close(x) +#define ioctlsocket(x, y, z) ioctl(x, y, z) +#define LastSocketError (errno) + +#define WSAEISCONN EISCONN +#define WSAEINPROGRESS EINPROGRESS +#define WSAEALREADY EALREADY +#define WSAEADDRINUSE EADDRINUSE +#define WSAEADDRNOTAVAIL EADDRNOTAVAIL +#define WSAEBADF EBADF +#define WSAECONNREFUSED ECONNREFUSED +#define WSAEINTR EINTR +#define WSAENOTSOCK ENOTSOCK +#define WSAEWOULDBLOCK EWOULDBLOCK +#define WSAEINVAL EINVAL +#define WSAETIMEDOUT ETIMEDOUT +#endif + +#endif // NETWORKTYPEDEFS_H diff --git a/Code/wwnet/packetmgr.cpp b/Code/wwnet/packetmgr.cpp index 283f8c5a..7c450a72 100644 --- a/Code/wwnet/packetmgr.cpp +++ b/Code/wwnet/packetmgr.cpp @@ -38,7 +38,7 @@ #include #include -//#include +//#include #include "systimer.h" #include @@ -912,12 +912,12 @@ WWPROFILE("PMgr Flush"); memcpy(crc_and_buffer + sizeof(crc), (const char*)SendBuffers[i].PacketBuffer, SendBuffers[i].PacketSendLength); Register_Packet_Out(&SendBuffers[i].IPAddress[0], SendBuffers[i].Port, SendBuffers[i].PacketSendLength + UDP_HEADER_SIZE + sizeof(crc), 0); - int result = sendto(socket, crc_and_buffer, SendBuffers[i].PacketSendLength + sizeof(crc), 0, (LPSOCKADDR) &addr, sizeof(SOCKADDR_IN)); + int result = sendto(socket, crc_and_buffer, SendBuffers[i].PacketSendLength + sizeof(crc), 0, (LPSOCKADDR) &addr, sizeof(struct sockaddr_in)); #else //WRAPPER_CRC Register_Packet_Out(&SendBuffers[i].IPAddress[0], SendBuffers[i].Port, SendBuffers[i].PacketSendLength + UDP_HEADER_SIZE, 0); - int result = sendto(socket, (const char*)SendBuffers[i].PacketBuffer, SendBuffers[i].PacketSendLength, 0, (LPSOCKADDR) &addr, sizeof(SOCKADDR_IN)); + int result = sendto(socket, (const char*)SendBuffers[i].PacketBuffer, SendBuffers[i].PacketSendLength, 0, (LPSOCKADDR) &addr, sizeof(struct sockaddr_in)); #endif //WRAPPER_CRC @@ -946,7 +946,7 @@ WWPROFILE("PMgr Flush"); //for (int i=0 ; i<540 ; i++) { // garbage[i] = rand(); //} - //sendto(socket, (const char*)garbage, 540, 0, (LPSOCKADDR) &addr, sizeof(SOCKADDR_IN)); + //sendto(socket, (const char*)garbage, 540, 0, (LPSOCKADDR) &addr, sizeof(struct sockaddr_in)); } } @@ -1615,7 +1615,7 @@ unsigned long PacketManagerClass::Get_Total_Compressed_Bandwidth_Out(void) * HISTORY: * * 10/9/2001 9:01AM ST : Created * *=============================================================================================*/ -unsigned long PacketManagerClass::Get_Raw_Bandwidth_In(SOCKADDR_IN *address) +unsigned long PacketManagerClass::Get_Raw_Bandwidth_In(struct sockaddr_in *address) { CriticalSectionClass::LockClass lock(CriticalSection); unsigned long ip = *((unsigned long*)&address->sin_addr.s_addr); @@ -1644,7 +1644,7 @@ unsigned long PacketManagerClass::Get_Raw_Bandwidth_In(SOCKADDR_IN *address) * HISTORY: * * 10/9/2001 9:01AM ST : Created * *=============================================================================================*/ -unsigned long PacketManagerClass::Get_Raw_Bandwidth_Out(SOCKADDR_IN *address) +unsigned long PacketManagerClass::Get_Raw_Bandwidth_Out(struct sockaddr_in *address) { CriticalSectionClass::LockClass lock(CriticalSection); unsigned long ip = *((unsigned long*)&address->sin_addr.s_addr); @@ -1674,7 +1674,7 @@ unsigned long PacketManagerClass::Get_Raw_Bandwidth_Out(SOCKADDR_IN *address) * HISTORY: * * 10/9/2001 9:01AM ST : Created * *=============================================================================================*/ -unsigned long PacketManagerClass::Get_Raw_Bytes_Out(SOCKADDR_IN *address) +unsigned long PacketManagerClass::Get_Raw_Bytes_Out(struct sockaddr_in *address) { CriticalSectionClass::LockClass lock(CriticalSection); unsigned long ip = *((unsigned long*)&address->sin_addr.s_addr); @@ -1705,7 +1705,7 @@ unsigned long PacketManagerClass::Get_Raw_Bytes_Out(SOCKADDR_IN *address) * HISTORY: * * 10/9/2001 9:01AM ST : Created * *=============================================================================================*/ -unsigned long PacketManagerClass::Get_Compressed_Bandwidth_In(SOCKADDR_IN *address) +unsigned long PacketManagerClass::Get_Compressed_Bandwidth_In(struct sockaddr_in *address) { CriticalSectionClass::LockClass lock(CriticalSection); unsigned long ip = *((unsigned long*)&address->sin_addr.s_addr); @@ -1734,7 +1734,7 @@ unsigned long PacketManagerClass::Get_Compressed_Bandwidth_In(SOCKADDR_IN *addre * HISTORY: * * 10/9/2001 9:01AM ST : Created * *=============================================================================================*/ -unsigned long PacketManagerClass::Get_Compressed_Bandwidth_Out(SOCKADDR_IN *address) +unsigned long PacketManagerClass::Get_Compressed_Bandwidth_Out(struct sockaddr_in *address) { CriticalSectionClass::LockClass lock(CriticalSection); unsigned long ip = *((unsigned long*)&address->sin_addr.s_addr); diff --git a/Code/wwnet/packetmgr.h b/Code/wwnet/packetmgr.h index a72bb370..da1ad70f 100644 --- a/Code/wwnet/packetmgr.h +++ b/Code/wwnet/packetmgr.h @@ -42,8 +42,7 @@ #include "mutex.h" #include "wwdebug.h" #include "vector.h" - -#include // for SOCKET +#include "network-typedefs.h" #ifdef WWASSERT #ifndef pm_assert @@ -152,12 +151,12 @@ class PacketManagerClass unsigned long Get_Total_Compressed_Bandwidth_In(void); unsigned long Get_Total_Compressed_Bandwidth_Out(void); - unsigned long Get_Raw_Bandwidth_In(SOCKADDR_IN *address); - unsigned long Get_Raw_Bandwidth_Out(SOCKADDR_IN *address); - unsigned long Get_Compressed_Bandwidth_In(SOCKADDR_IN *address); - unsigned long Get_Compressed_Bandwidth_Out(SOCKADDR_IN *address); + unsigned long Get_Raw_Bandwidth_In(struct sockaddr_in *address); + unsigned long Get_Raw_Bandwidth_Out(struct sockaddr_in *address); + unsigned long Get_Compressed_Bandwidth_In(struct sockaddr_in *address); + unsigned long Get_Compressed_Bandwidth_Out(struct sockaddr_in *address); - unsigned long Get_Raw_Bytes_Out(SOCKADDR_IN *address); + unsigned long Get_Raw_Bytes_Out(struct sockaddr_in *address); void Set_Stats_Sampling_Frequency_Delay(unsigned long time_ms); unsigned long Get_Stats_Sampling_Frequency_Delay(void) {return(StatsFrequency);}; @@ -356,4 +355,4 @@ class PacketManagerClass */ extern PacketManagerClass PacketManager; -#endif //_PACKETMGR_H \ No newline at end of file +#endif //_PACKETMGR_H diff --git a/Code/wwnet/rhost.cpp b/Code/wwnet/rhost.cpp index 45db62c7..7045f936 100644 --- a/Code/wwnet/rhost.cpp +++ b/Code/wwnet/rhost.cpp @@ -79,7 +79,7 @@ cRemoteHost::cRemoteHost() : { //WWDEBUG_SAY(("cRemoteHost::cRemoteHost\n")); - ZeroMemory(&Address, sizeof(SOCKADDR_IN)); + ZeroMemory(&Address, sizeof(struct sockaddr_in)); if (IsFlowControlEnabled) { //ThresholdPriority = cNetUtil::Get_Initial_Threshold_Priority(); @@ -161,7 +161,7 @@ int cRemoteHost::Get_List_Processing_Time(int list_type) } //----------------------------------------------------------------------------- -SOCKADDR_IN & cRemoteHost::Get_Address() +struct sockaddr_in & cRemoteHost::Get_Address() { return Address; } diff --git a/Code/wwnet/rhost.h b/Code/wwnet/rhost.h index 69a90de0..214788d7 100644 --- a/Code/wwnet/rhost.h +++ b/Code/wwnet/rhost.h @@ -38,7 +38,7 @@ #include "wwdebug.h" #include "win.h" -#include +#include "network-typedefs.h" //const USHORT MAX_MESSAGE_TYPES = 256; @@ -82,8 +82,8 @@ class cRemoteHost int Get_Last_Contact_Time() {return LastContactTime;} void Set_Last_Contact_Time(int time) {LastContactTime = time;} - SOCKADDR_IN & Get_Address(); - void Set_Address(SOCKADDR_IN & address) {Address = address;} + struct sockaddr_in & Get_Address(); + void Set_Address(struct sockaddr_in & address) {Address = address;} int Get_Target_Bps(void) const {return TargetBps;} //void Set_Target_Bps(int bps) {WWASSERT(bps > 0); TargetBps = bps;} @@ -178,7 +178,7 @@ class cRemoteHost int AverageInternalPingtimeMs; int MinInternalPingtimeMs; int MaxInternalPingtimeMs; - SOCKADDR_IN Address; + struct sockaddr_in Address; int ReliablePacketSendId; int UnreliablePacketSendId; int ReliablePacketRcvId; @@ -249,4 +249,4 @@ class cRemoteHost //int NumFailsInSampleTime; //int NumConsecutiveTPCorrectionsDownwards; - //int NumConsecutiveTPCorrectionsUpwards; \ No newline at end of file + //int NumConsecutiveTPCorrectionsUpwards; diff --git a/cmake/gamespy.cmake b/cmake/gamespy.cmake index 2cc43a29..8f1c6f98 100644 --- a/cmake/gamespy.cmake +++ b/cmake/gamespy.cmake @@ -1,5 +1,5 @@ set(GS_OPENSSL FALSE) -set(GS_WINSOCK2 FALSE) +set(GS_WINSOCK2 TRUE) set(GAMESPY_SERVER_NAME "server.cnc-online.net") FetchContent_Declare(