20
20
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
21
21
* KIND, either express or implied.
23
* $Id: urldata.h,v 1.291 2006-05-26 11:26:42 bagder Exp $
23
* $Id: urldata.h,v 1.294 2006-07-25 22:45:22 bagder Exp $
24
24
***************************************************************************/
26
26
/* This file is for lib internal stuff */
937
937
/* a place to store the most recenlty set FTP entrypath */
938
938
char *most_recent_ftp_entrypath;
940
/* set after initial USER failure, to prevent an authentication loop */
941
bool ftp_trying_alternative;
941
944
/* do FTP line-end conversions on most platforms */
942
945
#define CURL_DO_LINEEND_CONV
1039
1042
curl_off_t infilesize; /* size of file to upload, -1 means unknown */
1040
1043
long low_speed_limit; /* bytes/second */
1041
1044
long low_speed_time; /* number of seconds */
1045
curl_off_t max_send_speed; /* high speed limit in bytes/second for upload */
1046
curl_off_t max_recv_speed; /* high speed limit in bytes/second for download */
1042
1047
curl_off_t set_resume_from; /* continue [ftp] transfer from here */
1043
1048
char *cookie; /* HTTP cookie string to send */
1044
1049
struct curl_slist *headers; /* linked list of extra headers */
1052
1057
bool cookiesession; /* new cookie session? */
1053
1058
bool crlf; /* convert crlf on ftp upload(?) */
1054
1059
char *ftp_account; /* ftp account data */
1060
char *ftp_alternative_to_user; /* command to send if USER/PASS fails */
1055
1061
struct curl_slist *quote; /* after connection is established */
1056
1062
struct curl_slist *postquote; /* after the transfer */
1057
1063
struct curl_slist *prequote; /* before the transfer, after type */
1143
1149
bool connect_only; /* make connection, let application use the socket */
1153
struct curl_hash *hostcache;
1155
HCACHE_NONE, /* not pointing to anything */
1156
HCACHE_PRIVATE, /* points to our own */
1157
HCACHE_GLOBAL, /* points to the (shrug) global one */
1158
HCACHE_MULTI, /* points to a shared one in the multi handle */
1159
HCACHE_SHARED /* points to a shared one in a shared object */
1147
* In August 2001, this struct was redesigned and is since stricter than
1148
* before. The 'connectdata' struct MUST have all the connection oriented
1149
* stuff as we may now have several simultaneous connections and connection
1150
* structs in memory.
1164
* The 'connectdata' struct MUST have all the connection oriented stuff as we
1165
* may have several simultaneous connections and connection structs in memory.
1152
* From now on, the 'SessionHandle' must only contain data that is set once to
1153
* go for many (perhaps) independent connections. Values that are generated or
1167
* The 'struct UserDefined' must only contain data that is set once to go for
1168
* many (perhaps) independent connections. Values that are generated or
1154
1169
* calculated internally for the "session handle" must be defined within the
1155
* 'struct UrlState' instead. */
1170
* 'struct UrlState' instead.
1157
1173
struct SessionHandle {
1158
struct curl_hash *hostcache;
1159
1175
struct Curl_multi *multi; /* if non-NULL, points to the multi handle
1160
1176
struct of which this "belongs" */
1161
1177
struct Curl_share *share; /* Share, handles global variable mutexing */