41 #include <sys/types.h>
50 #ifdef CURL_HIDDEN_SYMBOLS
57 #define CURL_EXTERN CURL_EXTERN_SYMBOL
62 #ifndef curl_socket_typedef
65 #define CURL_SOCKET_BAD -1
66 #define curl_socket_typedef
83 #define HTTPPOST_FILENAME (1<<0)
84 #define HTTPPOST_READFILE (1<<1)
85 #define HTTPPOST_PTRNAME (1<<2)
87 #define HTTPPOST_PTRCONTENTS (1<<3)
89 #define HTTPPOST_BUFFER (1<<4)
90 #define HTTPPOST_PTRBUFFER (1<<5)
91 #define HTTPPOST_CALLBACK (1<<6)
109 #ifndef CURL_MAX_WRITE_SIZE
116 #define CURL_MAX_WRITE_SIZE 16384
119 #ifndef CURL_MAX_HTTP_HEADER
123 #define CURL_MAX_HTTP_HEADER (100*1024)
129 #define CURL_WRITEFUNC_PAUSE 0x10000001
151 #define CURLFINFOFLAG_KNOWN_FILENAME (1<<0)
152 #define CURLFINFOFLAG_KNOWN_FILETYPE (1<<1)
153 #define CURLFINFOFLAG_KNOWN_TIME (1<<2)
154 #define CURLFINFOFLAG_KNOWN_PERM (1<<3)
155 #define CURLFINFOFLAG_KNOWN_UID (1<<4)
156 #define CURLFINFOFLAG_KNOWN_GID (1<<5)
157 #define CURLFINFOFLAG_KNOWN_SIZE (1<<6)
158 #define CURLFINFOFLAG_KNOWN_HLINKCOUNT (1<<7)
192 #define CURL_CHUNK_BGN_FUNC_OK 0
193 #define CURL_CHUNK_BGN_FUNC_FAIL 1
194 #define CURL_CHUNK_BGN_FUNC_SKIP 2
204 #define CURL_CHUNK_END_FUNC_OK 0
205 #define CURL_CHUNK_END_FUNC_FAIL 1
216 #define CURL_FNMATCHFUNC_MATCH 0
217 #define CURL_FNMATCHFUNC_NOMATCH 1
218 #define CURL_FNMATCHFUNC_FAIL 2
227 #define CURL_SEEKFUNC_OK 0
228 #define CURL_SEEKFUNC_FAIL 1
229 #define CURL_SEEKFUNC_CANTSEEK 2
237 #define CURL_READFUNC_ABORT 0x10000000
240 #define CURL_READFUNC_PAUSE 0x10000001
254 #define CURL_SOCKOPT_OK 0
255 #define CURL_SOCKOPT_ERROR 1
257 #define CURL_SOCKOPT_ALREADY_CONNECTED 2
304 typedef void *(*curl_malloc_callback)(
size_t size);
306 typedef void *(*curl_realloc_callback)(
void *ptr,
size_t size);
307 typedef char *(*curl_strdup_callback)(
const char *str);
308 typedef void *(*curl_calloc_callback)(
size_t nmemb,
size_t size);
454 #ifndef CURL_NO_OLDIES
458 #define CURLOPT_ENCODING CURLOPT_ACCEPT_ENCODING
461 #define CURLE_UNKNOWN_TELNET_OPTION CURLE_UNKNOWN_OPTION
465 #define CURLE_SSL_PEER_CERTIFICATE CURLE_PEER_FAILED_VERIFICATION
469 #define CURLE_OBSOLETE CURLE_OBSOLETE50
470 #define CURLE_BAD_PASSWORD_ENTERED CURLE_OBSOLETE46
471 #define CURLE_BAD_CALLING_ORDER CURLE_OBSOLETE44
472 #define CURLE_FTP_USER_PASSWORD_INCORRECT CURLE_OBSOLETE10
473 #define CURLE_FTP_CANT_RECONNECT CURLE_OBSOLETE16
474 #define CURLE_FTP_COULDNT_GET_SIZE CURLE_OBSOLETE32
475 #define CURLE_FTP_COULDNT_SET_ASCII CURLE_OBSOLETE29
476 #define CURLE_FTP_WEIRD_USER_REPLY CURLE_OBSOLETE12
477 #define CURLE_FTP_WRITE_ERROR CURLE_OBSOLETE20
478 #define CURLE_LIBRARY_NOT_FOUND CURLE_OBSOLETE40
479 #define CURLE_MALFORMAT_USER CURLE_OBSOLETE24
480 #define CURLE_SHARE_IN_USE CURLE_OBSOLETE57
481 #define CURLE_URL_MALFORMAT_USER CURLE_NOT_BUILT_IN
483 #define CURLE_FTP_ACCESS_DENIED CURLE_REMOTE_ACCESS_DENIED
484 #define CURLE_FTP_COULDNT_SET_BINARY CURLE_FTP_COULDNT_SET_TYPE
485 #define CURLE_FTP_QUOTE_ERROR CURLE_QUOTE_ERROR
486 #define CURLE_TFTP_DISKFULL CURLE_REMOTE_DISK_FULL
487 #define CURLE_TFTP_EXISTS CURLE_REMOTE_FILE_EXISTS
488 #define CURLE_HTTP_RANGE_ERROR CURLE_RANGE_ERROR
489 #define CURLE_FTP_SSL_FAILED CURLE_USE_SSL_FAILED
493 #define CURLE_OPERATION_TIMEOUTED CURLE_OPERATION_TIMEDOUT
495 #define CURLE_HTTP_NOT_FOUND CURLE_HTTP_RETURNED_ERROR
496 #define CURLE_HTTP_PORT_FAILED CURLE_INTERFACE_FAILED
497 #define CURLE_FTP_COULDNT_STOR_FILE CURLE_UPLOAD_FAILED
499 #define CURLE_FTP_PARTIAL_FILE CURLE_PARTIAL_FILE
500 #define CURLE_FTP_BAD_DOWNLOAD_RESUME CURLE_BAD_DOWNLOAD_RESUME
505 #define CURLE_ALREADY_COMPLETE 99999
531 #define CURLAUTH_NONE 0
532 #define CURLAUTH_BASIC (1<<0)
533 #define CURLAUTH_DIGEST (1<<1)
534 #define CURLAUTH_GSSNEGOTIATE (1<<2)
535 #define CURLAUTH_NTLM (1<<3)
536 #define CURLAUTH_DIGEST_IE (1<<4)
537 #define CURLAUTH_ONLY (1<<31)
540 #define CURLAUTH_ANY (~CURLAUTH_DIGEST_IE)
541 #define CURLAUTH_ANYSAFE (~(CURLAUTH_BASIC|CURLAUTH_DIGEST_IE))
543 #define CURLSSH_AUTH_ANY ~0
544 #define CURLSSH_AUTH_NONE 0
545 #define CURLSSH_AUTH_PUBLICKEY (1<<0)
546 #define CURLSSH_AUTH_PASSWORD (1<<1)
547 #define CURLSSH_AUTH_HOST (1<<2)
548 #define CURLSSH_AUTH_KEYBOARD (1<<3)
549 #define CURLSSH_AUTH_DEFAULT CURLSSH_AUTH_ANY
551 #define CURL_ERROR_SIZE 256
601 #ifndef CURL_NO_OLDIES
607 #define CURLFTPSSL_NONE CURLUSESSL_NONE
608 #define CURLFTPSSL_TRY CURLUSESSL_TRY
609 #define CURLFTPSSL_CONTROL CURLUSESSL_CONTROL
610 #define CURLFTPSSL_ALL CURLUSESSL_ALL
611 #define CURLFTPSSL_LAST CURLUSESSL_LAST
612 #define curl_ftpssl curl_usessl
652 #define CURLPROTO_HTTP (1<<0)
653 #define CURLPROTO_HTTPS (1<<1)
654 #define CURLPROTO_FTP (1<<2)
655 #define CURLPROTO_FTPS (1<<3)
656 #define CURLPROTO_SCP (1<<4)
657 #define CURLPROTO_SFTP (1<<5)
658 #define CURLPROTO_TELNET (1<<6)
659 #define CURLPROTO_LDAP (1<<7)
660 #define CURLPROTO_LDAPS (1<<8)
661 #define CURLPROTO_DICT (1<<9)
662 #define CURLPROTO_FILE (1<<10)
663 #define CURLPROTO_TFTP (1<<11)
664 #define CURLPROTO_IMAP (1<<12)
665 #define CURLPROTO_IMAPS (1<<13)
666 #define CURLPROTO_POP3 (1<<14)
667 #define CURLPROTO_POP3S (1<<15)
668 #define CURLPROTO_SMTP (1<<16)
669 #define CURLPROTO_SMTPS (1<<17)
670 #define CURLPROTO_RTSP (1<<18)
671 #define CURLPROTO_RTMP (1<<19)
672 #define CURLPROTO_RTMPT (1<<20)
673 #define CURLPROTO_RTMPE (1<<21)
674 #define CURLPROTO_RTMPTE (1<<22)
675 #define CURLPROTO_RTMPS (1<<23)
676 #define CURLPROTO_RTMPTS (1<<24)
677 #define CURLPROTO_GOPHER (1<<25)
678 #define CURLPROTO_ALL (~0)
682 #define CURLOPTTYPE_LONG 0
683 #define CURLOPTTYPE_OBJECTPOINT 10000
684 #define CURLOPTTYPE_FUNCTIONPOINT 20000
685 #define CURLOPTTYPE_OFF_T 30000
695 #define CINIT(na,t,nu) CURLOPT_ ## na = CURLOPTTYPE_ ## t + nu
698 #define LONG CURLOPTTYPE_LONG
699 #define OBJECTPOINT CURLOPTTYPE_OBJECTPOINT
700 #define FUNCTIONPOINT CURLOPTTYPE_FUNCTIONPOINT
701 #define OFF_T CURLOPTTYPE_OFF_T
702 #define CINIT(name,type,number) CURLOPT_name = type + number
713 CINIT(FILE, OBJECTPOINT, 1),
716 CINIT(URL, OBJECTPOINT, 2),
719 CINIT(PORT, LONG, 3),
722 CINIT(PROXY, OBJECTPOINT, 4),
725 CINIT(USERPWD, OBJECTPOINT, 5),
728 CINIT(PROXYUSERPWD, OBJECTPOINT, 6),
731 CINIT(RANGE, OBJECTPOINT, 7),
736 CINIT(INFILE, OBJECTPOINT, 9),
740 CINIT(ERRORBUFFER, OBJECTPOINT, 10),
744 CINIT(WRITEFUNCTION, FUNCTIONPOINT, 11),
748 CINIT(READFUNCTION, FUNCTIONPOINT, 12),
751 CINIT(TIMEOUT, LONG, 13),
762 CINIT(INFILESIZE, LONG, 14),
765 CINIT(POSTFIELDS, OBJECTPOINT, 15),
768 CINIT(REFERER, OBJECTPOINT, 16),
772 CINIT(FTPPORT, OBJECTPOINT, 17),
775 CINIT(USERAGENT, OBJECTPOINT, 18),
784 CINIT(LOW_SPEED_LIMIT, LONG, 19),
787 CINIT(LOW_SPEED_TIME, LONG, 20),
795 CINIT(RESUME_FROM, LONG, 21),
798 CINIT(COOKIE, OBJECTPOINT, 22),
801 CINIT(HTTPHEADER, OBJECTPOINT, 23),
804 CINIT(HTTPPOST, OBJECTPOINT, 24),
807 CINIT(CRLF, LONG, 27),
810 CINIT(QUOTE, OBJECTPOINT, 28),
814 CINIT(WRITEHEADER, OBJECTPOINT, 29),
818 CINIT(COOKIEFILE, OBJECTPOINT, 31),
821 CINIT(TIMECONDITION, LONG, 33),
825 CINIT(TIMEVALUE, LONG, 34),
833 CINIT(CUSTOMREQUEST, OBJECTPOINT, 36),
836 CINIT(STDERR, OBJECTPOINT, 37),
841 CINIT(POSTQUOTE, OBJECTPOINT, 39),
845 CINIT(WRITEINFO, OBJECTPOINT, 40),
847 CINIT(VERBOSE, LONG, 41),
848 CINIT(HEADER, LONG, 42),
849 CINIT(NOPROGRESS, LONG, 43),
850 CINIT(NOBODY, LONG, 44),
851 CINIT(FAILONERROR, LONG, 45),
852 CINIT(UPLOAD, LONG, 46),
853 CINIT(POST, LONG, 47),
854 CINIT(DIRLISTONLY, LONG, 48),
856 CINIT(APPEND, LONG, 50),
860 CINIT(NETRC, LONG, 51),
862 CINIT(FOLLOWLOCATION, LONG, 52),
864 CINIT(TRANSFERTEXT, LONG, 53),
865 CINIT(PUT, LONG, 54),
872 CINIT(PROGRESSFUNCTION, FUNCTIONPOINT, 56),
875 CINIT(PROGRESSDATA, OBJECTPOINT, 57),
878 CINIT(AUTOREFERER, LONG, 58),
882 CINIT(PROXYPORT, LONG, 59),
885 CINIT(POSTFIELDSIZE, LONG, 60),
888 CINIT(HTTPPROXYTUNNEL, LONG, 61),
891 CINIT(INTERFACE, OBJECTPOINT, 62),
896 CINIT(KRBLEVEL, OBJECTPOINT, 63),
902 CINIT(MAXREDIRS, LONG, 68),
906 CINIT(FILETIME, LONG, 69),
909 CINIT(TELNETOPTIONS, OBJECTPOINT, 70),
912 CINIT(MAXCONNECTS, LONG, 71),
915 CINIT(CLOSEPOLICY, LONG, 72),
922 CINIT(FRESH_CONNECT, LONG, 74),
927 CINIT(FORBID_REUSE, LONG, 75),
932 CINIT(CONNECTTIMEOUT, LONG, 78),
936 CINIT(HEADERFUNCTION, FUNCTIONPOINT, 79),
941 CINIT(HTTPGET, LONG, 80),
945 CINIT(COOKIEJAR, OBJECTPOINT, 82),
949 CINIT(HTTP_VERSION, LONG, 84),
954 CINIT(FTP_USE_EPSV, LONG, 85),
957 CINIT(DNS_USE_GLOBAL_CACHE, LONG, 91),
960 CINIT(DNS_CACHE_TIMEOUT, LONG, 92),
963 CINIT(PREQUOTE, OBJECTPOINT, 93),
966 CINIT(DEBUGFUNCTION, FUNCTIONPOINT, 94),
969 CINIT(DEBUGDATA, OBJECTPOINT, 95),
972 CINIT(COOKIESESSION, LONG, 96),
975 CINIT(BUFFERSIZE, LONG, 98),
980 CINIT(NOSIGNAL, LONG, 99),
983 CINIT(SHARE, OBJECTPOINT, 100),
987 CINIT(PROXYTYPE, LONG, 101),
992 CINIT(ACCEPT_ENCODING, OBJECTPOINT, 102),
995 CINIT(PRIVATE, OBJECTPOINT, 103),
998 CINIT(HTTP200ALIASES, OBJECTPOINT, 104),
1003 CINIT(UNRESTRICTED_AUTH, LONG, 105),
1008 CINIT(FTP_USE_EPRT, LONG, 106),
1013 CINIT(HTTPAUTH, LONG, 107),
1019 CINIT(FTP_CREATE_MISSING_DIRS, LONG, 110),
1024 CINIT(PROXYAUTH, LONG, 111),
1030 CINIT(FTP_RESPONSE_TIMEOUT, LONG, 112),
1031 #define CURLOPT_SERVER_RESPONSE_TIMEOUT CURLOPT_FTP_RESPONSE_TIMEOUT
1036 CINIT(IPRESOLVE, LONG, 113),
1043 CINIT(MAXFILESIZE, LONG, 114),
1048 CINIT(INFILESIZE_LARGE, OFF_T, 115),
1053 CINIT(RESUME_FROM_LARGE, OFF_T, 116),
1058 CINIT(MAXFILESIZE_LARGE, OFF_T, 117),
1064 CINIT(NETRC_FILE, OBJECTPOINT, 118),
1071 CINIT(USE_SSL, LONG, 119),
1074 CINIT(POSTFIELDSIZE_LARGE, OFF_T, 120),
1077 CINIT(TCP_NODELAY, LONG, 121),
1097 CINIT(FTPSSLAUTH, LONG, 129),
1099 CINIT(IOCTLFUNCTION, FUNCTIONPOINT, 130),
1100 CINIT(IOCTLDATA, OBJECTPOINT, 131),
1107 CINIT(FTP_ACCOUNT, OBJECTPOINT, 134),
1110 CINIT(COOKIELIST, OBJECTPOINT, 135),
1113 CINIT(IGNORE_CONTENT_LENGTH, LONG, 136),
1119 CINIT(FTP_SKIP_PASV_IP, LONG, 137),
1123 CINIT(FTP_FILEMETHOD, LONG, 138),
1126 CINIT(LOCALPORT, LONG, 139),
1131 CINIT(LOCALPORTRANGE, LONG, 140),
1135 CINIT(CONNECT_ONLY, LONG, 141),
1139 CINIT(CONV_FROM_NETWORK_FUNCTION, FUNCTIONPOINT, 142),
1143 CINIT(CONV_TO_NETWORK_FUNCTION, FUNCTIONPOINT, 143),
1148 CINIT(CONV_FROM_UTF8_FUNCTION, FUNCTIONPOINT, 144),
1152 CINIT(MAX_SEND_SPEED_LARGE, OFF_T, 145),
1153 CINIT(MAX_RECV_SPEED_LARGE, OFF_T, 146),
1156 CINIT(FTP_ALTERNATIVE_TO_USER, OBJECTPOINT, 147),
1159 CINIT(SOCKOPTFUNCTION, FUNCTIONPOINT, 148),
1160 CINIT(SOCKOPTDATA, OBJECTPOINT, 149),
1164 CINIT(SSL_SESSIONID_CACHE, LONG, 150),
1167 CINIT(SSH_AUTH_TYPES, LONG, 151),
1170 CINIT(SSH_PUBLIC_KEYFILE, OBJECTPOINT, 152),
1171 CINIT(SSH_PRIVATE_KEYFILE, OBJECTPOINT, 153),
1174 CINIT(FTP_SSL_CCC, LONG, 154),
1177 CINIT(TIMEOUT_MS, LONG, 155),
1178 CINIT(CONNECTTIMEOUT_MS, LONG, 156),
1182 CINIT(HTTP_TRANSFER_DECODING, LONG, 157),
1183 CINIT(HTTP_CONTENT_DECODING, LONG, 158),
1187 CINIT(NEW_FILE_PERMS, LONG, 159),
1188 CINIT(NEW_DIRECTORY_PERMS, LONG, 160),
1192 CINIT(POSTREDIR, LONG, 161),
1195 CINIT(SSH_HOST_PUBLIC_KEY_MD5, OBJECTPOINT, 162),
1201 CINIT(OPENSOCKETFUNCTION, FUNCTIONPOINT, 163),
1202 CINIT(OPENSOCKETDATA, OBJECTPOINT, 164),
1205 CINIT(COPYPOSTFIELDS, OBJECTPOINT, 165),
1208 CINIT(PROXY_TRANSFER_MODE, LONG, 166),
1211 CINIT(SEEKFUNCTION, FUNCTIONPOINT, 167),
1212 CINIT(SEEKDATA, OBJECTPOINT, 168),
1215 CINIT(ADDRESS_SCOPE, LONG, 171),
1218 CINIT(USERNAME, OBJECTPOINT, 173),
1219 CINIT(PASSWORD, OBJECTPOINT, 174),
1222 CINIT(PROXYUSERNAME, OBJECTPOINT, 175),
1223 CINIT(PROXYPASSWORD, OBJECTPOINT, 176),
1232 CINIT(NOPROXY, OBJECTPOINT, 177),
1235 CINIT(TFTP_BLKSIZE, LONG, 178),
1238 CINIT(SOCKS5_GSSAPI_SERVICE, OBJECTPOINT, 179),
1241 CINIT(SOCKS5_GSSAPI_NEC, LONG, 180),
1247 CINIT(PROTOCOLS, LONG, 181),
1253 CINIT(REDIR_PROTOCOLS, LONG, 182),
1256 CINIT(SSH_KNOWNHOSTS, OBJECTPOINT, 183),
1260 CINIT(SSH_KEYFUNCTION, FUNCTIONPOINT, 184),
1263 CINIT(SSH_KEYDATA, OBJECTPOINT, 185),
1266 CINIT(MAIL_FROM, OBJECTPOINT, 186),
1269 CINIT(MAIL_RCPT, OBJECTPOINT, 187),
1272 CINIT(FTP_USE_PRET, LONG, 188),
1275 CINIT(RTSP_REQUEST, LONG, 189),
1278 CINIT(RTSP_SESSION_ID, OBJECTPOINT, 190),
1281 CINIT(RTSP_STREAM_URI, OBJECTPOINT, 191),
1284 CINIT(RTSP_TRANSPORT, OBJECTPOINT, 192),
1287 CINIT(RTSP_CLIENT_CSEQ, LONG, 193),
1290 CINIT(RTSP_SERVER_CSEQ, LONG, 194),
1293 CINIT(INTERLEAVEDATA, OBJECTPOINT, 195),
1296 CINIT(INTERLEAVEFUNCTION, FUNCTIONPOINT, 196),
1299 CINIT(WILDCARDMATCH, LONG, 197),
1303 CINIT(CHUNK_BGN_FUNCTION, FUNCTIONPOINT, 198),
1307 CINIT(CHUNK_END_FUNCTION, FUNCTIONPOINT, 199),
1310 CINIT(FNMATCH_FUNCTION, FUNCTIONPOINT, 200),
1313 CINIT(CHUNK_DATA, OBJECTPOINT, 201),
1316 CINIT(FNMATCH_DATA, OBJECTPOINT, 202),
1319 CINIT(RESOLVE, OBJECTPOINT, 203),
1322 CINIT(TLSAUTH_USERNAME, OBJECTPOINT, 204),
1325 CINIT(TLSAUTH_PASSWORD, OBJECTPOINT, 205),
1328 CINIT(TLSAUTH_TYPE, OBJECTPOINT, 206),
1340 CINIT(TRANSFER_ENCODING, LONG, 207),
1344 CINIT(CLOSESOCKETFUNCTION, FUNCTIONPOINT, 208),
1345 CINIT(CLOSESOCKETDATA, OBJECTPOINT, 209),
1348 CINIT(NSSL_CONTEXT, LONG, 210),
1353 #ifndef CURL_NO_OLDIES
1360 #define CURLOPT_POST301 CURLOPT_POSTREDIR
1365 #define CURLOPT_SSLKEYPASSWD CURLOPT_KEYPASSWD
1366 #define CURLOPT_FTPAPPEND CURLOPT_APPEND
1367 #define CURLOPT_FTPLISTONLY CURLOPT_DIRLISTONLY
1368 #define CURLOPT_FTP_SSL CURLOPT_USE_SSL
1372 #define CURLOPT_SSLCERTPASSWD CURLOPT_KEYPASSWD
1373 #define CURLOPT_KRB4LEVEL CURLOPT_KRBLEVEL
1377 #undef CURLOPT_DNS_USE_GLOBAL_CACHE
1384 #define CURL_IPRESOLVE_WHATEVER 0
1386 #define CURL_IPRESOLVE_V4 1
1387 #define CURL_IPRESOLVE_V6 2
1390 #define CURLOPT_WRITEDATA CURLOPT_FILE
1391 #define CURLOPT_READDATA CURLOPT_INFILE
1392 #define CURLOPT_HEADERDATA CURLOPT_WRITEHEADER
1393 #define CURLOPT_RTSPHEADER CURLOPT_HTTPHEADER
1456 #define CURL_REDIR_GET_ALL 0
1457 #define CURL_REDIR_POST_301 1
1458 #define CURL_REDIR_POST_302 2
1459 #define CURL_REDIR_POST_ALL (CURL_REDIR_POST_301|CURL_REDIR_POST_302)
1483 #define CFINIT(name) CURLFORM_ ## name
1486 #define CFINIT(name) CURLFORM_name
1757 #define CURLINFO_STRING 0x100000
1758 #define CURLINFO_LONG 0x200000
1759 #define CURLINFO_DOUBLE 0x300000
1760 #define CURLINFO_SLIST 0x400000
1761 #define CURLINFO_MASK 0x0fffff
1762 #define CURLINFO_TYPEMASK 0xf00000
1815 #define CURLINFO_HTTP_CODE CURLINFO_RESPONSE_CODE
1829 #define CURL_GLOBAL_SSL (1<<0)
1830 #define CURL_GLOBAL_WIN32 (1<<1)
1831 #define CURL_GLOBAL_ALL (CURL_GLOBAL_SSL|CURL_GLOBAL_WIN32)
1832 #define CURL_GLOBAL_NOTHING 0
1833 #define CURL_GLOBAL_DEFAULT CURL_GLOBAL_ALL
1914 #define CURLVERSION_NOW CURLVERSION_FOURTH
1918 const char *version;
1919 unsigned int version_num;
1922 const char *ssl_version;
1923 long ssl_version_num;
1924 const char *libz_version;
1926 const char *
const *protocols;
1940 const char *libssh_version;
1944 #define CURL_VERSION_IPV6 (1<<0)
1945 #define CURL_VERSION_KERBEROS4 (1<<1)
1946 #define CURL_VERSION_SSL (1<<2)
1947 #define CURL_VERSION_LIBZ (1<<3)
1948 #define CURL_VERSION_NTLM (1<<4)
1949 #define CURL_VERSION_GSSNEGOTIATE (1<<5)
1950 #define CURL_VERSION_DEBUG (1<<6)
1951 #define CURL_VERSION_ASYNCHDNS (1<<7)
1952 #define CURL_VERSION_SPNEGO (1<<8)
1953 #define CURL_VERSION_LARGEFILE (1<<9)
1954 #define CURL_VERSION_IDN (1<<10)
1955 #define CURL_VERSION_SSPI (1<<11)
1956 #define CURL_VERSION_CONV (1<<12)
1957 #define CURL_VERSION_CURLDEBUG (1<<13)
1958 #define CURL_VERSION_TLSAUTH_SRP (1<<14)
2003 #define CURLPAUSE_RECV (1<<0)
2004 #define CURLPAUSE_RECV_CONT (0)
2006 #define CURLPAUSE_SEND (1<<2)
2007 #define CURLPAUSE_SEND_CONT (0)
2009 #define CURLPAUSE_ALL (CURLPAUSE_RECV|CURLPAUSE_SEND)
2010 #define CURLPAUSE_CONT (CURLPAUSE_RECV_CONT|CURLPAUSE_SEND_CONT)
2022 #if defined(__GNUC__) && defined(__GNUC_MINOR__) && \
2023 ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) && \
2024 !defined(__cplusplus) && !defined(CURL_DISABLE_TYPECHECK)
2027 #if defined(__STDC__) && (__STDC__ >= 1)
2031 #define curl_easy_setopt(handle,opt,param) curl_easy_setopt(handle,opt,param)
2032 #define curl_easy_getinfo(handle,info,arg) curl_easy_getinfo(handle,info,arg)
2033 #define curl_share_setopt(share,opt,param) curl_share_setopt(share,opt,param)
2034 #define curl_multi_setopt(handle,opt,param) curl_multi_setopt(handle,opt,param)