Lines Matching defs:connectdata
782 struct connectdata { struct
790 /* chunk is for HTTP chunked encoding, but is in the general connectdata argument
793 struct Curl_chunker chunk;
795 curl_closesocket_callback fclosesocket; /* function closing the socket(s) */
796 void *closesocket_client;
806 long connection_id; /* Contains a unique number to make it easier to
813 struct Curl_dns_entry *dns_entry;
818 Curl_addrinfo *ip_addr;
819 Curl_addrinfo *tempaddr[2]; /* for happy eyeballs */
824 char ip_addr_str[MAX_IPADR_LEN];
826 unsigned int scope_id; /* Scope id for IPv6 */
828 int socktype; /* SOCK_STREAM or SOCK_DGRAM */
830 struct hostname host;
831 char *hostname_resolve; /* host name to resolve to address, allocated */
832 char *secondaryhostname; /* secondary socket host name (ftp) */
833 struct hostname conn_to_host; /* the host to connect to. valid only if
836 struct proxy_info socks_proxy;
837 struct proxy_info http_proxy;
839 long port; /* which port to use locally */
840 int remote_port; /* the remote port, not the proxy port! */
841 int conn_to_port; /* the remote port to connect to. valid only if
843 unsigned short secondary_port; /* secondary socket remote port to connect to
853 char primary_ip[MAX_IPADR_LEN];
854 long primary_port;
860 char local_ip[MAX_IPADR_LEN];
861 long local_port;
863 char *user; /* user name string, allocated */
864 char *passwd; /* password string, allocated */
865 char *options; /* options string, allocated */
867 char *oauth_bearer; /* bearer token for OAuth 2.0, allocated */
869 int httpversion; /* the HTTP version*10 reported by the server */
870 int rtspversion; /* the RTSP version*10 reported by the server */
872 struct curltime now; /* "current" time */
873 struct curltime created; /* creation time */
874 curl_socket_t sock[2]; /* two sockets, the second is used for the data
876 curl_socket_t tempsock[2]; /* temporary sockets for happy eyeballs */
877 bool sock_accepted[2]; /* TRUE if the socket on this index was created with
879 Curl_recv *recv[2];
880 Curl_send *send[2];
883 struct postponed_data postponed[2]; /* two buffers for two sockets */
885 struct ssl_connect_data ssl[2]; /* this is for ssl-stuff */
886 struct ssl_connect_data proxy_ssl[2]; /* this is for proxy ssl-stuff */
888 void *ssl_extra; /* separately allocated backend-specific data */
890 struct ssl_primary_config ssl_config;
891 struct ssl_primary_config proxy_ssl_config;
892 struct ConnectBits bits; /* various state-flags for this connection */
897 struct curltime connecttime;
899 int num_addr; /* number of addresses to try to connect to */
900 time_t timeoutms_per_addr; /* how long time in milliseconds to spend on
903 const struct Curl_handler *handler; /* Connection's protocol handler */
904 const struct Curl_handler *given; /* The protocol first given */
906 long ip_version; /* copied from the Curl_easy at creation time */
911 struct curltime keepalive;
913 long upkeep_interval_ms; /* Time between calls for connection upkeep. */
917 curl_socket_t sockfd; /* socket to read from or CURL_SOCKET_BAD */
918 curl_socket_t writesockfd; /* socket to write to, it may very
924 struct dynamically_allocated_data {
935 } allocptr;
938 bit sec_complete:1; /* if Kerberos is enabled for this connection */
939 enum protection_level command_prot;
940 enum protection_level data_prot;
941 enum protection_level request_data_prot;
942 size_t buffer_size;
943 struct krb5buffer in_buffer;
944 void *app_data;
945 const struct Curl_sec_client_mech *mech;
946 struct sockaddr_in local_addr;
950 struct kerberos5data krb5; /* variables into the structure definition, */
953 struct curl_llist send_pipe; /* List of handles waiting to send on this
955 struct curl_llist recv_pipe; /* List of handles waiting to read their
957 char *master_buffer; /* The master buffer allocated on-demand;
959 size_t read_pos; /* Current read position in the master buffer */
960 size_t buf_len; /* Length of the buffer?? */
963 curl_seek_callback seek_func; /* function that seeks the input */
964 void *seek_client; /* pointer to pass to the seek() above */
968 CtxtHandle *sslContext;
972 struct ntlmdata ntlm; /* NTLM differs from other authentication schemes
975 struct ntlmdata proxyntlm; /* NTLM data for proxy */
979 curl_socket_t ntlm_auth_hlpr_socket;
980 pid_t ntlm_auth_hlpr_pid;
981 char *challenge_header;
982 char *response_header;
987 struct negotiatedata negotiate; /* state data for host Negotiate auth */
988 struct negotiatedata proxyneg; /* state data for proxy Negotiate auth */
992 struct Curl_async async;
995 char *trailer; /* allocated buffer to store trailer in */
996 int trlMax; /* allocated buffer size */
997 int trlPos; /* index of where to store data */
999 union {
1010 } proto;
1012 int cselect_bits; /* bitmask of socket events */
1013 int waitfor; /* current READ/WRITE bits to wait for */
1016 int socks5_gssapi_enctype;
1045 /* The end of connectdata. */ argument