]> git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - libcurl.h
Rename host_t -> host_static_t.
[xonotic/darkplaces.git] / libcurl.h
index 56a94e2a82628735a51e011bae41eee017e0ff7c..d960be8af0939c7c97eb19293e5bbe4657b75ecd 100644 (file)
--- a/libcurl.h
+++ b/libcurl.h
@@ -1,3 +1,7 @@
+#include <stddef.h>
+#include "qtypes.h"
+#include "qdefs.h"
+
 enum
 {
        CURLCBSTATUS_OK = 0,
@@ -9,19 +13,20 @@ enum
 typedef void (*curl_callback_t) (int status, size_t length_received, unsigned char *buffer, void *cbdata);
 // code is one of the CURLCBSTATUS constants, or the HTTP error code (when > 0).
 
-void Curl_Run(void);
-qboolean Curl_Running(void);
-qboolean Curl_Begin_ToFile(const char *URL, double maxspeed, const char *name, qboolean ispak, qboolean forthismap);
-qboolean Curl_Begin_ToMemory(const char *URL, double maxspeed, unsigned char *buf, size_t bufsize, curl_callback_t callback, void *cbdata);
-       // NOTE: if it returns false, the callback will NOT get called, so free your buffer then!
-void Curl_Cancel_ToMemory(curl_callback_t callback, void *cbdata);
-       // removes all downloads with the given callback and cbdata (this does NOT call the callbacks!)
+void Curl_Frame(void);
+qbool Curl_Running(void);
+qbool Curl_Begin_ToFile(const char *URL, double maxspeed, const char *name, int loadtype, qbool forthismap);
+
+qbool Curl_Begin_ToMemory(const char *URL, double maxspeed, unsigned char *buf, size_t bufsize, curl_callback_t callback, void *cbdata);
+qbool Curl_Begin_ToMemory_POST(const char *URL, const char *extraheaders, double maxspeed, const char *post_content_type, const unsigned char *postbuf, size_t postbufsize, unsigned char *buf, size_t bufsize, curl_callback_t callback, void *cbdata);
+void Curl_Cancel_ToMemory(curl_callback_t callback, void* cbdata);
+
 void Curl_Init(void);
 void Curl_Init_Commands(void);
 void Curl_Shutdown(void);
 void Curl_CancelAll(void);
 void Curl_Clear_forthismap(void);
-qboolean Curl_Have_forthismap(void);
+qbool Curl_Have_forthismap(void);
 void Curl_Register_predownload(void);
 
 void Curl_ClearRequirements(void);
@@ -33,10 +38,10 @@ typedef struct Curl_downloadinfo_s
        char filename[MAX_QPATH];
        double progress;
        double speed;
-       qboolean queued;
+       qbool queued;
 }
 Curl_downloadinfo_t;
-Curl_downloadinfo_t *Curl_GetDownloadInfo(int *nDownloads, const char **additional_info);
+Curl_downloadinfo_t *Curl_GetDownloadInfo(int *nDownloads, const char **additional_info, char *addinfo, size_t addinfolength);
        // this may and should be Z_Free()ed
        // the result is actually an array
        // an additional info string may be returned in additional_info as a