OpenTTD Source 20260109-master-g241b5fcdfe
tcp_stun.h
Go to the documentation of this file.
1/*
2 * This file is part of OpenTTD.
3 * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
4 * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
5 * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <https://www.gnu.org/licenses/old-licenses/gpl-2.0>.
6 */
7
10#ifndef NETWORK_CORE_TCP_STUN_H
11#define NETWORK_CORE_TCP_STUN_H
12
13#include "os_abstraction.h"
14#include "tcp.h"
15#include "packet.h"
16
22
25protected:
27
40 virtual bool Receive_SERCLI_STUN(Packet &p);
41
42public:
48 NetworkStunSocketHandler(SOCKET s = INVALID_SOCKET) : NetworkTCPSocketHandler(s) {}
49};
50
51#endif /* NETWORK_CORE_TCP_STUN_H */
Base socket handler for all STUN TCP sockets.
Definition tcp_stun.h:24
virtual bool Receive_SERCLI_STUN(Packet &p)
Send a STUN request to the STUN server letting the Game Coordinator know what our actually public IP:...
Definition tcp_stun.cpp:27
NetworkStunSocketHandler(SOCKET s=INVALID_SOCKET)
Create a new cs socket handler for a given cs.
Definition tcp_stun.h:48
bool ReceiveInvalidPacket(PacketStunType type)
Helper for logging receiving invalid packets.
Definition tcp_stun.cpp:21
Base socket handler for all TCP sockets.
Definition tcp.h:29
Includes and/or implementations for the network stuff.
Basic functions to create, fill and read packets.
Internal entity of a packet.
Definition packet.h:41
Basic functions to receive and send TCP packets.
PacketStunType
Enum with all types of TCP STUN packets.
Definition tcp_stun.h:18
@ PACKET_STUN_END
Must ALWAYS be on the end of this list!! (period)
Definition tcp_stun.h:20
@ PACKET_STUN_SERCLI_STUN
Send a STUN request to the STUN server.
Definition tcp_stun.h:19