FTEQW
Documentation of the FTE engine source tree.
netinc.h File Reference

Go to the source code of this file.

Classes

struct  sockaddr_websocket
 
struct  ip6_scope_id
 
struct  in6_addr
 
struct  sockaddr_in6
 
struct  addrinfo
 
struct  icecandinfo_s
 
struct  icefuncs_t
 
struct  epollctx_s
 
struct  ftenet_generic_connection_s
 
struct  dtlscred_s
 
struct  dtlscred_s::dtlslocalcred_s
 
struct  dtlscred_s::dtlspeercred_s
 
struct  dtlsfuncs_s
 
struct  ftecrypto_s
 
struct  ftenet_connections_s
 
struct  ftenet_connections_s::ftenet_delayed_packet_s
 

Typedefs

typedef struct epollctx_s epollctx_t
 
typedef struct ftenet_generic_connection_s ftenet_generic_connection_t
 
typedef struct dtlscred_s dtlscred_t
 
typedef struct dtlsfuncs_s dtlsfuncs_t
 
typedef struct ftecrypto_s ftecrypto_t
 
typedef struct ftenet_connections_s ftenet_connections_t
 

Enumerations

enum  iceproto_e {
  ICEP_INVALID , ICEP_QWSERVER , ICEP_QWCLIENT , ICEP_VOICE ,
  ICEP_VIDEO
}
 
enum  icemode_e { ICEM_RAW , ICEM_ICE , ICEM_WEBRTC }
 
enum  icestate_e {
  ICE_INACTIVE , ICE_FAILED , ICE_GATHERING , ICE_CONNECTING ,
  ICE_CONNECTED
}
 
enum  hashvalidation_e { VH_UNSUPPORTED , VH_AUTHORITY_UNKNOWN , VH_INCORRECT , VH_CORRECT }
 
enum  icemsgtype_s {
  ICEMSG_PEERLOST =0 , ICEMSG_GREETING =1 , ICEMSG_NEWPEER =2 , ICEMSG_OFFER =3 ,
  ICEMSG_CANDIDATE =4 , ICEMSG_ACCEPT =5 , ICEMSG_SERVERINFO =6 , ICEMSG_SERVERUPDATE =7 ,
  ICEMSG_NAMEINUSE =8
}
 
enum  websocketpackettype_e {
  WS_PACKETTYPE_CONTINUATION =0 , WS_PACKETTYPE_TEXTFRAME =1 , WS_PACKETTYPE_BINARYFRAME =2 , WS_PACKETTYPE_CLOSE =8 ,
  WS_PACKETTYPE_PING =9 , WS_PACKETTYPE_PONG =10
}
 

Functions

const dtlsfuncs_tDTLS_InitServer (void)
 
const dtlsfuncs_tDTLS_InitClient (void)
 
void ICE_Tick (void)
 
qboolean ICE_WasStun (ftenet_connections_t *col)
 
void QDECL ICE_AddLCandidateConn (ftenet_connections_t *col, netadr_t *addr, int type)
 
void QDECL ICE_AddLCandidateInfo (struct icestate_s *con, netadr_t *adr, int adrno, int type)
 
ftenet_generic_connection_tFTENET_ICE_EstablishConnection (ftenet_connections_t *col, const char *address, netadr_t adr)
 
ftenet_connections_tFTENET_CreateCollection (qboolean listen, void(*ReadPacket)(void))
 
void FTENET_CloseCollection (ftenet_connections_t *col)
 
qboolean FTENET_AddToCollection (struct ftenet_connections_s *col, const char *name, const char *address, netadrtype_t addrtype, netproto_t addrprot)
 
int NET_EnumerateAddresses (ftenet_connections_t *collection, struct ftenet_generic_connection_s **con, unsigned int *adrflags, netadr_t *addresses, const char **adrparams, int maxaddresses)
 
voidTLS_GetKnownCertificate (const char *certname, size_t *size)
 
voidAuth_GetKnownCertificate (const char *certname, size_t *size)
 
vfsfile_tFS_OpenSSL (const char *hostname, vfsfile_t *source, qboolean server)
 
int TLS_GetChannelBinding (vfsfile_t *stream, qbyte *data, size_t *datasize)
 
vfsfile_tFS_WrapTCPSocket (SOCKET socket, qboolean conpending, const char *peername)
 
vfsfile_tFS_OpenTCP (const char *name, int defaultport, qboolean assumetls)
 

Variables

icefuncs_t iceapi
 
cvar_t net_ice_broker
 
ftecrypto_t crypto_sspi
 
ftecrypto_t crypto_gnutls
 
ftecrypto_tcryptolib [cryptolib_count]
 

Typedef Documentation

◆ dtlscred_t

typedef struct dtlscred_s dtlscred_t

◆ dtlsfuncs_t

typedef struct dtlsfuncs_s dtlsfuncs_t

◆ epollctx_t

typedef struct epollctx_s epollctx_t

◆ ftecrypto_t

typedef struct ftecrypto_s ftecrypto_t

◆ ftenet_connections_t

◆ ftenet_generic_connection_t

Enumeration Type Documentation

◆ hashvalidation_e

Enumerator
VH_UNSUPPORTED 
VH_AUTHORITY_UNKNOWN 
VH_INCORRECT 
VH_CORRECT 

◆ icemode_e

enum icemode_e
Enumerator
ICEM_RAW 
ICEM_ICE 
ICEM_WEBRTC 

◆ icemsgtype_s

Enumerator
ICEMSG_PEERLOST 
ICEMSG_GREETING 
ICEMSG_NEWPEER 
ICEMSG_OFFER 
ICEMSG_CANDIDATE 
ICEMSG_ACCEPT 
ICEMSG_SERVERINFO 
ICEMSG_SERVERUPDATE 
ICEMSG_NAMEINUSE 

◆ iceproto_e

enum iceproto_e
Enumerator
ICEP_INVALID 
ICEP_QWSERVER 
ICEP_QWCLIENT 
ICEP_VOICE 
ICEP_VIDEO 

◆ icestate_e

enum icestate_e
Enumerator
ICE_INACTIVE 
ICE_FAILED 
ICE_GATHERING 
ICE_CONNECTING 
ICE_CONNECTED 

◆ websocketpackettype_e

Enumerator
WS_PACKETTYPE_CONTINUATION 
WS_PACKETTYPE_TEXTFRAME 
WS_PACKETTYPE_BINARYFRAME 
WS_PACKETTYPE_CLOSE 
WS_PACKETTYPE_PING 
WS_PACKETTYPE_PONG 

Function Documentation

◆ Auth_GetKnownCertificate()

void * Auth_GetKnownCertificate ( const char *  certname,
size_t *  size 
)

◆ DTLS_InitClient()

const dtlsfuncs_t * DTLS_InitClient ( void  )

◆ DTLS_InitServer()

const dtlsfuncs_t * DTLS_InitServer ( void  )

◆ FS_OpenSSL()

vfsfile_t * FS_OpenSSL ( const char *  hostname,
vfsfile_t source,
qboolean  server 
)

◆ FS_OpenTCP()

vfsfile_t * FS_OpenTCP ( const char *  name,
int  defaultport,
qboolean  assumetls 
)

◆ FS_WrapTCPSocket()

vfsfile_t * FS_WrapTCPSocket ( SOCKET  socket,
qboolean  conpending,
const char *  peername 
)

◆ FTENET_AddToCollection()

qboolean FTENET_AddToCollection ( struct ftenet_connections_s col,
const char *  name,
const char *  address,
netadrtype_t  addrtype,
netproto_t  addrprot 
)

◆ FTENET_CloseCollection()

void FTENET_CloseCollection ( ftenet_connections_t col)

◆ FTENET_CreateCollection()

ftenet_connections_t * FTENET_CreateCollection ( qboolean  listen,
void(*)(void ReadPacket 
)

◆ FTENET_ICE_EstablishConnection()

ftenet_generic_connection_t * FTENET_ICE_EstablishConnection ( ftenet_connections_t col,
const char *  address,
netadr_t  adr 
)

◆ ICE_AddLCandidateConn()

void QDECL ICE_AddLCandidateConn ( ftenet_connections_t col,
netadr_t addr,
int  type 
)

◆ ICE_AddLCandidateInfo()

void QDECL ICE_AddLCandidateInfo ( struct icestate_s *  con,
netadr_t adr,
int  adrno,
int  type 
)

◆ ICE_Tick()

void ICE_Tick ( void  )

◆ ICE_WasStun()

qboolean ICE_WasStun ( ftenet_connections_t col)

◆ NET_EnumerateAddresses()

int NET_EnumerateAddresses ( ftenet_connections_t collection,
struct ftenet_generic_connection_s **  con,
unsigned int adrflags,
netadr_t addresses,
const char **  adrparams,
int  maxaddresses 
)

◆ TLS_GetChannelBinding()

int TLS_GetChannelBinding ( vfsfile_t stream,
qbyte data,
size_t *  datasize 
)

◆ TLS_GetKnownCertificate()

void * TLS_GetKnownCertificate ( const char *  certname,
size_t *  size 
)

Variable Documentation

◆ crypto_gnutls

ftecrypto_t crypto_gnutls

◆ crypto_sspi

ftecrypto_t crypto_sspi
extern

◆ cryptolib

ftecrypto_t* cryptolib[cryptolib_count]
extern

◆ iceapi

icefuncs_t iceapi
extern

◆ net_ice_broker

cvar_t net_ice_broker
extern