032653c06fe43263c625613a538389fc2425976b jcasper Tue Jul 16 17:16:51 2024 -0700 Updated hic straw library adapted for UCSC, with a udc-enabled curl substitute. refs #33225 diff --git src/hg/inc/fakeCurl.h src/hg/inc/fakeCurl.h new file mode 100644 index 0000000..6ed6848 --- /dev/null +++ src/hg/inc/fakeCurl.h @@ -0,0 +1,46 @@ + + +#ifndef FAKE_CURL +#define FAKE_CURL + +typedef enum { + CURLOPT_WRITEDATA, + CURLOPT_RANGE, + CURLOPT_WRITEFUNCTION, + CURLOPT_URL, + CURLOPT_FOLLOWLOCATION, + CURLOPT_USERAGENT, + CURLOPT_HEADERFUNCTION +} 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); + // 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); + +/* +CURL_EXTERN CURL *curl_easy_init(void); +CURL_EXTERN CURLcode curl_easy_setopt(CURL *curl, CURLoption option, ...); +CURL_EXTERN CURLcode curl_easy_perform(CURL *curl); +CURL_EXTERN void curl_easy_cleanup(CURL *curl); +*/ + +#endif