Skip to content

Commit 517ba2c

Browse files
committed
Cosmetic changes, added some convenience functions.
1 parent 9a55da5 commit 517ba2c

14 files changed

+135
-99
lines changed

src/network/network_manager.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@
3535

3636
NetworkManager::NetworkManager()
3737
{
38-
m_public_address.ip = 0;
39-
m_public_address.port = 0;
38+
m_public_address.m_ip = 0;
39+
m_public_address.m_port = 0;
4040
m_localhost = NULL;
4141
m_game_setup = NULL;
4242
}

src/network/protocols/client_lobby_room_protocol.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -125,8 +125,7 @@ void ClientLobbyRoomProtocol::voteLaps(uint8_t laps, uint8_t track_nb)
125125
void ClientLobbyRoomProtocol::leave()
126126
{
127127
m_server->disconnect();
128-
m_server_address.ip = 0;
129-
m_server_address.port = 0;
128+
m_server_address.clear();
130129
} // leave
131130

132131
//-----------------------------------------------------------------------------

src/network/protocols/connect_to_peer.cpp

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,10 @@ bool ConnectToPeer::notifyEventAsynchronous(Event* event)
5959

6060
void ConnectToPeer::setup()
6161
{
62-
m_state = NONE;
63-
m_public_address.ip = 0;
64-
m_public_address.port = 0;
65-
m_peer_address.ip = 0;
66-
m_peer_address.port = 0;
67-
m_current_protocol_id = 0;
62+
m_state = NONE;
63+
m_public_address.clear();
64+
m_peer_address.clear();
65+
m_current_protocol_id = 0;
6866
}
6967

7068
// ----------------------------------------------------------------------------
@@ -83,22 +81,22 @@ void ConnectToPeer::asynchronousUpdate()
8381
if (m_listener->getProtocolState(m_current_protocol_id)
8482
== PROTOCOL_STATE_TERMINATED) // we know the peer address
8583
{
86-
if (m_peer_address.ip != 0 && m_peer_address.port != 0)
84+
if (m_peer_address.m_ip != 0 && m_peer_address.m_port != 0)
8785
{
8886
// we're in the same lan (same public ip address) !!
89-
if (m_peer_address.ip == NetworkManager::getInstance()->getPublicAddress().ip)
87+
if (m_peer_address.m_ip == NetworkManager::getInstance()->getPublicAddress().m_ip)
9088
{
9189
// just send a broadcast packet with the string aloha_stk inside, the client will know our ip address and will connect
9290
STKHost* host = NetworkManager::getInstance()->getHost();
9391
TransportAddress broadcast_address;
94-
broadcast_address.ip = -1; // 255.255.255.255
95-
broadcast_address.port = m_peer_address.port; // 0b10101100000101101101111111111111; // for test
92+
broadcast_address.m_ip = -1; // 255.255.255.255
93+
broadcast_address.m_port = m_peer_address.m_port; // 0b10101100000101101101111111111111; // for test
9694
char data[] = "aloha_stk\0";
9795
host->sendRawPacket((uint8_t*)(data), 10, broadcast_address);
9896
Log::info("ConnectToPeer", "Broadcast aloha sent.");
9997
StkTime::sleep(1);
100-
broadcast_address.ip = 0x7f000001; // 127.0.0.1 (localhost)
101-
broadcast_address.port = m_peer_address.port;
98+
broadcast_address.m_ip = 0x7f000001; // 127.0.0.1 (localhost)
99+
broadcast_address.m_port = m_peer_address.m_port;
102100
host->sendRawPacket((uint8_t*)(data), 10, broadcast_address);
103101
Log::info("ConnectToPeer", "Broadcast aloha to self.");
104102
}

src/network/protocols/connect_to_server.cpp

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -82,10 +82,8 @@ void ConnectToServer::setup()
8282
{
8383
Log::info("ConnectToServer", "SETUPP");
8484
m_state = NONE;
85-
m_public_address.ip = 0;
86-
m_public_address.port = 0;
87-
m_server_address.ip = 0;
88-
m_server_address.port = 0;
85+
m_public_address.clear();
86+
m_server_address.clear();
8987
m_current_protocol_id = 0;
9088
}
9189

@@ -139,7 +137,7 @@ void ConnectToServer::asynchronousUpdate()
139137
== PROTOCOL_STATE_TERMINATED) // we know the server address
140138
{
141139
Log::info("ConnectToServer", "Server's address known");
142-
if (m_server_address.ip == m_public_address.ip) // we're in the same lan (same public ip address) !!
140+
if (m_server_address.m_ip == m_public_address.m_ip) // we're in the same lan (same public ip address) !!
143141
Log::info("ConnectToServer", "Server appears to be in the same LAN.");
144142
m_state = REQUESTING_CONNECTION;
145143
m_current_protocol_id = m_listener->requestStart(new RequestConnection(m_server_id));
@@ -150,23 +148,24 @@ void ConnectToServer::asynchronousUpdate()
150148
== PROTOCOL_STATE_TERMINATED) // server knows we wanna connect
151149
{
152150
Log::info("ConnectToServer", "Connection request made");
153-
if (m_server_address.ip == 0 || m_server_address.port == 0)
151+
if (m_server_address.m_ip == 0 || m_server_address.m_port == 0)
154152
{ // server data not correct, hide address and stop
155153
m_state = HIDING_ADDRESS;
156-
Log::error("ConnectToServer", "Server address is " ADDRESS_FORMAT, ADDRESS_ARGS(m_server_address.ip, m_server_address.port));
154+
Log::error("ConnectToServer", "Server address is %s",
155+
m_server_address.toString().c_str());
157156
m_current_protocol_id = m_listener->requestStart(new HidePublicAddress());
158157
return;
159158
}
160-
if (m_server_address.ip == m_public_address.ip) // we're in the same lan (same public ip address) !!
159+
if (m_server_address.m_ip == m_public_address.m_ip) // we're in the same lan (same public ip address) !!
161160
{
162161
// just send a broadcast packet, the client will know our ip address and will connect
163162
STKHost* host = NetworkManager::getInstance()->getHost();
164163
host->stopListening(); // stop the listening
165164
TransportAddress sender;
166165

167166
TransportAddress broadcast_address;
168-
broadcast_address.ip = -1; // 255.255.255.255
169-
broadcast_address.port = 7321; // 0b10101100000101101101111111111111; // for test
167+
broadcast_address.m_ip = -1; // 255.255.255.255
168+
broadcast_address.m_port = 7321; // 0b10101100000101101101111111111111; // for test
170169
char data2[] = "aloha_stk\0";
171170
host->sendRawPacket((uint8_t*)(data2), 10, broadcast_address);
172171

@@ -177,7 +176,8 @@ void ConnectToServer::asynchronousUpdate()
177176
const char data[] = "aloha_stk\0";
178177
if (strcmp(data, (char*)(received_data)) == 0)
179178
{
180-
Log::info("ConnectToServer", "LAN Server found : %u:%u", sender.ip, sender.port);
179+
Log::info("ConnectToServer", "LAN Server found : %s",
180+
sender.toString());
181181
#ifndef WIN32
182182
// just check if the ip is ours : if so, then just use localhost (127.0.0.1)
183183
struct ifaddrs *ifap, *ifa;
@@ -219,9 +219,9 @@ void ConnectToServer::asynchronousUpdate()
219219
for(unsigned int i=0; i<table->dwNumEntries; i++)
220220
{
221221
unsigned int ip = ntohl(table->table[i].dwAddr);
222-
if(sender.ip == ip) // this interface is ours
222+
if(sender.m_ip == ip) // this interface is ours
223223
{
224-
sender.ip = 0x7f000001; // 127.0.0.1
224+
sender.m_ip = 0x7f000001; // 127.0.0.1
225225
break;
226226
}
227227
}
@@ -246,7 +246,8 @@ void ConnectToServer::asynchronousUpdate()
246246
{
247247
timer = StkTime::getRealTime();
248248
NetworkManager::getInstance()->connect(m_server_address);
249-
Log::info("ConnectToServer", "Trying to connect to %u:%u", m_server_address.ip, m_server_address.port);
249+
Log::info("ConnectToServer", "Trying to connect to %s",
250+
m_server_address.toString());
250251
}
251252
break;
252253
}

src/network/protocols/get_peer_address.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,12 +61,12 @@ void GetPeerAddress::asynchronousUpdate()
6161
if (rec_success == "yes")
6262
{
6363
TransportAddress* addr = static_cast<TransportAddress*>(m_callback_object);
64-
result->get("ip", &addr->ip);
64+
result->get("ip", &addr->m_ip);
6565

66-
if (addr->ip == NetworkManager::getInstance()->getPublicAddress().ip)
67-
result->get("private_port", &addr->port);
66+
if (addr->m_ip == NetworkManager::getInstance()->getPublicAddress().m_ip)
67+
result->get("private_port", &addr->m_port);
6868
else
69-
result->get("port", &addr->port);
69+
result->get("port", &addr->m_port);
7070

7171
Log::debug("GetPeerAddress", "Address gotten successfully.");
7272
}

src/network/protocols/get_public_address.cpp

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -156,8 +156,7 @@ std::string GetPublicAddress::parseStunResponse()
156156

157157

158158
// Those are the port and the address to be detected
159-
uint16_t port;
160-
uint32_t address;
159+
TransportAddress address;
161160
int pos = 20;
162161
while (true)
163162
{
@@ -167,8 +166,8 @@ std::string GetPublicAddress::parseStunResponse()
167166
{
168167
assert(size == 8);
169168
assert(datas.getUInt8(pos+5) == 0x01); // Family IPv4 only
170-
port = datas.getUInt16(pos + 6);
171-
address = datas.getUInt32(pos + 8);
169+
address.m_port = datas.getUInt16(pos + 6);
170+
address.m_ip = datas.getUInt32(pos + 8);
172171
break;
173172
} // type = 0 or 1
174173
pos += 4 + size;
@@ -180,11 +179,10 @@ std::string GetPublicAddress::parseStunResponse()
180179
} // while true
181180

182181
// finished parsing, we know our public transport address
183-
Log::debug("GetPublicAddress", "The public address has been found: %i.%i.%i.%i:%i",
184-
address>>24&0xff, address>>16&0xff, address>>8&0xff, address&0xff, port);
182+
Log::debug("GetPublicAddress", "The public address has been found: %s",
183+
address.toString().c_str());
185184
TransportAddress* addr = static_cast<TransportAddress*>(m_callback_object);
186-
addr->ip = address;
187-
addr->port = port;
185+
*addr = address;
188186

189187
// The address and the port are known, so the connection can be closed
190188
m_state = EXITING;

src/network/protocols/quick_join_protocol.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,10 +59,11 @@ void QuickJoinProtocol::asynchronousUpdate()
5959
{
6060
if(rec_success == "yes")
6161
{
62-
result->get("ip", &res->ip);
63-
result->get("port", &res->port);
62+
result->get("ip", &res->m_ip);
63+
result->get("port", &res->m_port);
6464
result->get("hostid", m_server_id);
65-
Log::info("QuickJoinProtocol", "Quick joining %d:%d (server#%d).", res->ip, res->port, *m_server_id);
65+
Log::info("QuickJoinProtocol", "Quick joining %s (server#%d).",
66+
res->toString(), *m_server_id);
6667
}
6768
else
6869
{

src/network/protocols/server_lobby_room_protocol.cpp

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,7 @@ void ServerLobbyRoomProtocol::setup()
5353
m_setup->getRaceConfig()->setPlayerCount(16); //FIXME : this has to be moved to when logging into the server
5454
m_next_id = 0;
5555
m_state = NONE;
56-
m_public_address.ip = 0;
57-
m_public_address.port = 0;
56+
m_public_address.clear();
5857
m_selection_enabled = false;
5958
m_in_race = false;
6059
Log::info("ServerLobbyRoomProtocol", "Starting the protocol.");
@@ -185,8 +184,8 @@ void ServerLobbyRoomProtocol::checkIncomingConnectionRequests()
185184
Online::XMLRequest* request = new Online::XMLRequest();
186185
PlayerManager::setUserDetails(request, "poll-connection-requests", Online::API::SERVER_PATH);
187186

188-
request->addParameter("address", addr.ip);
189-
request->addParameter("port", addr.port);
187+
request->addParameter("address", addr.m_ip);
188+
request->addParameter("port", addr.m_port);
190189

191190
request->executeNow();
192191
assert(request->isDone());

src/network/protocols/show_public_address.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,11 +45,11 @@ void ShowPublicAddress::asynchronousUpdate()
4545
m_request = new Online::XMLRequest();
4646
PlayerManager::setUserDetails(m_request, "set", Online::API::SERVER_PATH);
4747

48-
m_request->addParameter("address", addr.ip);
49-
m_request->addParameter("port", addr.port);
48+
m_request->addParameter("address", addr.m_ip);
49+
m_request->addParameter("port", addr.m_port);
5050
m_request->addParameter("private_port", NetworkManager::getInstance()->getHost()->getPort());
5151

52-
Log::info("ShowPublicAddress", "Showing addr %u and port %d", addr.ip, addr.port);
52+
Log::info("ShowPublicAddress", "Showing addr %s", addr.toString().c_str());
5353

5454
Online::RequestManager::get()->addRequest(m_request);
5555
m_state = REQUEST_PENDING;

src/network/protocols/start_server.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,12 +44,12 @@ void StartServer::asynchronousUpdate()
4444
m_request = new Online::XMLRequest();
4545
PlayerManager::setUserDetails(m_request, "start", Online::API::SERVER_PATH);
4646

47-
m_request->addParameter("address", addr.ip);
48-
m_request->addParameter("port", addr.port);
47+
m_request->addParameter("address", addr.m_ip);
48+
m_request->addParameter("port", addr.m_port);
4949
m_request->addParameter("private_port", NetworkManager::getInstance()->getHost()->getPort());
5050
m_request->addParameter("max_players", UserConfigParams::m_server_max_players);
5151

52-
Log::info("ShowPublicAddress", "Showing addr %u and port %d", addr.ip, addr.port);
52+
Log::info("ShowPublicAddress", "Showing addr %s", addr.toString().c_str());
5353

5454
Online::RequestManager::get()->addRequest(m_request);
5555
m_state = REQUEST_PENDING;

0 commit comments

Comments
 (0)