aboutsummaryrefslogtreecommitdiff
path: root/src/i_network.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/i_network.h')
-rw-r--r--src/i_network.h74
1 files changed, 74 insertions, 0 deletions
diff --git a/src/i_network.h b/src/i_network.h
new file mode 100644
index 0000000..532941f
--- /dev/null
+++ b/src/i_network.h
@@ -0,0 +1,74 @@
1/* Emacs style mode select -*- C++ -*-
2 *-----------------------------------------------------------------------------
3 *
4 *
5 * PrBoom: a Doom port merged with LxDoom and LSDLDoom
6 * based on BOOM, a modified and improved DOOM engine
7 * Copyright (C) 1999 by
8 * id Software, Chi Hoang, Lee Killough, Jim Flynn, Rand Phares, Ty Halderman
9 * Copyright (C) 1999-2000 by
10 * Jess Haas, Nicolas Kalkhof, Colin Phipps, Florian Schulze
11 * Copyright 2005, 2006 by
12 * Florian Schulze, Colin Phipps, Neil Stevens, Andrey Budko
13 *
14 * This program is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU General Public License
16 * as published by the Free Software Foundation; either version 2
17 * of the License, or (at your option) any later version.
18 *
19 * This program is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 * GNU General Public License for more details.
23 *
24 * You should have received a copy of the GNU General Public License
25 * along with this program; if not, write to the Free Software
26 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
27 * 02111-1307, USA.
28 *
29 * DESCRIPTION:
30 * Low level network interface.
31 *-----------------------------------------------------------------------------*/
32
33#ifdef HAVE_CONFIG_H
34#include "config.h"
35#endif
36
37#ifdef USE_SDL_NET
38 #include "SDL_net.h"
39 #define UDP_SOCKET UDPsocket
40 #define UDP_PACKET UDPpacket
41 #define AF_INET
42 #define UDP_CHANNEL int
43 extern UDP_SOCKET udp_socket;
44#else
45 #define UDP_CHANNEL struct sockaddr
46#endif
47
48#ifndef IPPORT_RESERVED
49 #define IPPORT_RESERVED 1024
50#endif
51
52void I_InitNetwork(void);
53size_t I_GetPacket(packet_header_t* buffer, size_t buflen);
54void I_SendPacket(packet_header_t* packet, size_t len);
55void I_WaitForPacket(int ms);
56
57#ifdef USE_SDL_NET
58UDP_SOCKET I_Socket(Uint16 port);
59int I_ConnectToServer(const char *serv);
60UDP_CHANNEL I_RegisterPlayer(IPaddress *ipaddr);
61void I_UnRegisterPlayer(UDP_CHANNEL channel);
62extern IPaddress sentfrom_addr;
63#endif
64
65#ifdef AF_INET
66void I_SendPacketTo(packet_header_t* packet, size_t len, UDP_CHANNEL *to);
67void I_SetupSocket(int sock, int port, int family);
68void I_PrintAddress(FILE* fp, UDP_CHANNEL *addr);
69
70extern UDP_CHANNEL sentfrom;
71extern int v4socket, v6socket;
72#endif
73
74extern size_t sentbytes, recvdbytes;