OpenTTD Source 20260208-master-g43af8e94d0
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
9
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:
47 NetworkStunSocketHandler(SOCKET s = INVALID_SOCKET) : NetworkTCPSocketHandler(s) {}
48};
49
50#endif /* NETWORK_CORE_TCP_STUN_H */
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:47
bool ReceiveInvalidPacket(PacketStunType type)
Helper for logging receiving invalid packets.
Definition tcp_stun.cpp:21
NetworkTCPSocketHandler(SOCKET s=INVALID_SOCKET)
Construct a socket handler for a TCP connection.
Definition tcp.h:65
Includes and/or implementations for the network stuff.
Basic functions to create, fill and read packets.
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