675b8fd206cf04c156f750afd6312511585e5af0
jcasper
  Tue Aug 20 16:56:43 2024 -0700
Resolving namespace collision with libcurl, refs #34329

diff --git src/hg/inc/fakeCurl.h src/hg/inc/fakeCurl.h
index b238608..da3bd39 100644
--- src/hg/inc/fakeCurl.h
+++ src/hg/inc/fakeCurl.h
@@ -1,38 +1,57 @@
 #ifndef FAKE_CURL
 #define FAKE_CURL
 
+#define CURL fakeCURL
+#define curl_easy_init fake_curl_easy_init
+#define curl_easy_setopt fake_curl_easy_setopt
+#define curl_easy_perform fake_curl_easy_perform
+#define curl_easy_strerror fake_curl_easy_strerror
+#define curl_easy_cleanup fake_curl_easy_cleanup
+#define CURLoption fakeCURLoption
+#define CURLOPT_URL fakeCURLOPT_URL
+#define CURLOPT_FOLLOWLOCATION fakeCURLOPT_FOLLOWLOCATION
+#define CURLOPT_USERAGENT fakeCURLOPT_USERAGENT
+#define CURLOPT_WRITEFUNCTION fakeCURLOPT_WRITEFUNCTION
+#define CURLOPT_WRITEDATA fakeCURLOPT_WRITEDATA
+#define CURLOPT_HEADERFUNCTION fakeCURLOPT_HEADERFUNCTION
+#define CURLOPT_RANGE fakeCURLOPT_RANGE
+#define CURLOPT_FAILONERROR fakeCURLOPT_FAILONERROR
+#define CURLcode fakeCURLcode
+#define CURLE_OK fakeCURLE_OK
+#define CURLE_NOTOK fakeCURLE_NOTOK
+
 typedef enum {
     CURLOPT_WRITEDATA,
     CURLOPT_RANGE,
     CURLOPT_WRITEFUNCTION,
     CURLOPT_URL,
     CURLOPT_FOLLOWLOCATION,
     CURLOPT_USERAGENT,
     CURLOPT_HEADERFUNCTION,
     CURLOPT_FAILONERROR
 } CURLoption;
 
 typedef enum {
     CURLE_OK,
     CURLE_NOTOK
 } CURLcode;
 
 typedef struct {
     char *url;
     char *range;
     void *writeBuffer;
     size_t (*WriteFunction) (char *buffer, size_t size, size_t nitems, void *outstream);
     size_t (*HeaderFunction) (char *buffer, size_t size, size_t nitems, void *outstream);
     int failonerror;
     // currently ignoring follow location setting and user agent string - we always follow, no string
 } CURL;
 
 typedef size_t (*curl_write_callback)(char *buffer, size_t size, size_t nitems, void *outstream);
 
 CURLcode curl_easy_setopt(CURL *curl, CURLoption option, ...);
 CURLcode curl_easy_perform(CURL *curl);
 const char *curl_easy_strerror(CURLcode errornum);
 CURL *curl_easy_init(void);
 void curl_easy_cleanup(CURL *curl);
 
 #endif