26 #ifndef _httpconnect_h
27 #define _httpconnect_h
32 #include <curl/curl.h>
35 #include <curl/easy.h>
41 #ifndef _object_type_h
42 #include "ObjectType.h"
46 #include "HTTPCache.h"
49 #ifndef http_response_h
50 #include "HTTPResponse.h"
64 extern int dods_keep_temps;
79 char d_error_buffer[CURL_ERROR_SIZE];
80 std::string d_content_type;
82 bool d_accept_deflate;
90 vector<string> d_request_headers;
92 int d_dap_client_protocol_major;
93 int d_dap_client_protocol_minor;
95 bool d_use_cpp_streams;
98 long read_url(
const string &url, FILE *stream, vector<string> *resp_hdrs,
99 const vector<string> *headers = 0);
104 bool url_uses_proxy_for(
const string &url);
105 bool url_uses_no_proxy_for(
const string &url)
throw();
107 void extract_auth_info(
string &url);
109 friend size_t save_raw_http_header(
void *ptr,
size_t size,
size_t nmemb,
111 friend class HTTPConnectTest;
112 friend class ParseHeader;
134 bool use_cpp_streams()
const {
return d_use_cpp_streams; }
135 void set_use_cpp_streams(
bool use_cpp_streams) { d_use_cpp_streams = use_cpp_streams; }
163 #endif // _httpconnect_h