UFO: Alien Invasion
Loading...
Searching...
No Matches
cl_http.h File Reference

cURL header More...

#include "../common/http.h"
Include dependency graph for cl_http.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void CL_CancelHTTPDownloads (bool permKill)
 Cancel all downloads and nuke the queue.
bool CL_QueueHTTPDownload (const char *ufoPath)
 Called from the precache check to queue a download.
void CL_RunHTTPDownloads (void)
 This calls curl_multi_perform do actually do stuff. Called every frame while connecting to minimise latency. Also starts new downloads if we're not doing the maximum already.
bool CL_PendingHTTPDownloads (void)
 See if we're still busy with some downloads. Called by precacher just before it loads the map since we could be downloading the map. If we're busy still, it'll wait and CL_FinishHTTPDownload will pick up from where it left.
void CL_SetHTTPServer (const char *URL)
 A new server is specified, so we nuke all our state.
void CL_HTTP_Cleanup (void)
 UFO is exiting or we're changing servers. Clean up.
void CL_RequestNextDownload (void)
bool CL_CheckOrDownloadFile (const char *filename)
void HTTP_InitStartup (void)

Detailed Description

cURL header

Definition in file cl_http.h.

Function Documentation

◆ CL_CancelHTTPDownloads()

void CL_CancelHTTPDownloads ( bool permKill)

Cancel all downloads and nuke the queue.

Definition at line 250 of file cl_http.cpp.

References abortDownloads, cls, DLQ_STATE_DONE, DLQ_STATE_NOT_STARTED, handleCount, HTTPDL_ABORT_HARD, HTTPDL_ABORT_SOFT, and pendingCount.

Referenced by CL_FinishHTTPDownload(), and CL_RunHTTPDownloads().

◆ CL_CheckOrDownloadFile()

bool CL_CheckOrDownloadFile ( const char * filename)
Returns
true if the file exists, otherwise it attempts to start a download via curl
See also
CL_CheckAndQueueDownload
CL_RequestNextDownload

Definition at line 341 of file cl_http.cpp.

References CL_QueueHTTPDownload(), Com_Printf(), FS_LoadFile(), MAX_OSPATH, Q_streq, Q_strncpyz(), and Q_strnull().

Referenced by CL_CheckAndQueueDownload(), CL_DownloadMap(), and CL_DownloadUMPMap().

◆ CL_HTTP_Cleanup()

void CL_HTTP_Cleanup ( void )

UFO is exiting or we're changing servers. Clean up.

Definition at line 533 of file cl_http.cpp.

References cls, dlhandle_t::curl, dlhandle_t::file, dlhandle_t::filePath, i, Mem_Free, multi, dlhandle_t::queueEntry, Sys_Remove(), and dlhandle_t::tempBuffer.

Referenced by CL_SetHTTPServer(), and CL_Shutdown().

◆ CL_PendingHTTPDownloads()

bool CL_PendingHTTPDownloads ( void )

See if we're still busy with some downloads. Called by precacher just before it loads the map since we could be downloading the map. If we're busy still, it'll wait and CL_FinishHTTPDownload will pick up from where it left.

Definition at line 328 of file cl_http.cpp.

References cls, handleCount, and pendingCount.

Referenced by CL_CanMultiplayerStart(), and CL_FinishHTTPDownload().

◆ CL_QueueHTTPDownload()

◆ CL_RequestNextDownload()

void CL_RequestNextDownload ( void )

◆ CL_RunHTTPDownloads()

void CL_RunHTTPDownloads ( void )

This calls curl_multi_perform do actually do stuff. Called every frame while connecting to minimise latency. Also starts new downloads if we're not doing the maximum already.

See also
CL_Frame

Definition at line 753 of file cl_http.cpp.

References abortDownloads, CL_CancelHTTPDownloads(), CL_FinishHTTPDownload(), CL_StartNextHTTPDownload(), cls, Com_Printf(), downloadingPK3, handleCount, HTTPDL_ABORT_NONE, multi, and pendingCount.

Referenced by CL_Frame().

◆ CL_SetHTTPServer()

void CL_SetHTTPServer ( const char * URL)

A new server is specified, so we nuke all our state.

Definition at line 225 of file cl_http.cpp.

References abortDownloads, CL_HTTP_Cleanup(), cls, Com_Error(), ERR_DROP, handleCount, HTTPDL_ABORT_NONE, Mem_Free, multi, dlqueue_t::next, pendingCount, and Q_strncpyz().

Referenced by CL_ConnectionlessPacket().

◆ HTTP_InitStartup()

void HTTP_InitStartup ( void )

Definition at line 789 of file cl_http.cpp.

References cl_http_downloads, cl_http_filelists, cl_http_max_connections, and Cvar_Get().

Referenced by CL_InitLocal().