diff options
author | rubidium <rubidium@openttd.org> | 2007-01-04 15:42:09 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2007-01-04 15:42:09 +0000 |
commit | 6851608c007509481b30947bfbd6bac50b89ff18 (patch) | |
tree | 15909c0154fb98b80ddc92ff7ebb1a0b9cac437e /src/network/core | |
parent | 90f546e87ef589952a2e3367d40f00229a140080 (diff) | |
download | openttd-6851608c007509481b30947bfbd6bac50b89ff18.tar.xz |
(svn r7821) -Fix: be more strict about the socket from where packets arrive. Do not accept requests about the game server on the master/client socket, do not accept master server acks on the client/server socket, etc.
Diffstat (limited to 'src/network/core')
-rw-r--r-- | src/network/core/udp.c | 2 | ||||
-rw-r--r-- | src/network/core/udp.h | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/network/core/udp.c b/src/network/core/udp.c index badd9a532..2ae14d5fa 100644 --- a/src/network/core/udp.c +++ b/src/network/core/udp.c @@ -119,7 +119,7 @@ void NetworkUDPReceive(SOCKET udp) p.next = NULL; /* Handle the packet */ - NetworkHandleUDPPacket(&p, &client_addr); + NetworkHandleUDPPacket(udp, &p, &client_addr); } } diff --git a/src/network/core/udp.h b/src/network/core/udp.h index 3221e664f..f927c289c 100644 --- a/src/network/core/udp.h +++ b/src/network/core/udp.h @@ -17,10 +17,11 @@ void NetworkUDPReceive(SOCKET udp); /** * Function that is called for every received UDP packet. + * @param udp the socket the packet is received on * @param packet the received packet * @param client_addr the address of the sender of the packet */ -void NetworkHandleUDPPacket(Packet *p, struct sockaddr_in *client_addr); +void NetworkHandleUDPPacket(SOCKET udp, Packet *p, struct sockaddr_in *client_addr); ///** Sending/receiving of (large) chuncks of UDP packets **//// |