src/server/proxy/httpclient.c

changeset 700
658f4c02b4c5
parent 698
fea7c3d74cc6
equal deleted inserted replaced
699:d794871da099 700:658f4c02b4c5
95 free(client->method); 95 free(client->method);
96 free(client->uri); 96 free(client->uri);
97 free(client); 97 free(client);
98 } 98 }
99 99
100 int http_client_set_addr(HttpClient *client, const struct sockaddr *addr, socklen_t addrlen) { 100 int http_client_set_addr(HttpClient *client, int domain, const struct sockaddr *addr, socklen_t addrlen) {
101 free(client->addr); 101 free(client->addr);
102 client->addr = NULL; 102 client->addr = NULL;
103 client->addrlen = 0; 103 client->addrlen = 0;
104 client->domain = domain;
104 105
105 void *newaddr = malloc(addrlen); 106 void *newaddr = malloc(addrlen);
106 if(!newaddr) { 107 if(!newaddr) {
107 return 1; 108 return 1;
108 } 109 }
183 client->req_content_length = -1; 184 client->req_content_length = -1;
184 return http_client_add_request_header(client, cx_mutstr("transfer-encoding"), cx_mutstr("chunked")); 185 return http_client_add_request_header(client, cx_mutstr("transfer-encoding"), cx_mutstr("chunked"));
185 } 186 }
186 187
187 int http_client_start(HttpClient *client) { 188 int http_client_start(HttpClient *client) {
188 int socketfd = socket(AF_INET, SOCK_STREAM, 0); 189 int socketfd = socket(client->domain, SOCK_STREAM, 0);
189 if(socketfd < 0) { 190 if(socketfd < 0) {
190 return 1; 191 return 1;
191 } 192 }
192 193
193 if(util_socket_setnonblock(socketfd, 1)) { 194 if(util_socket_setnonblock(socketfd, 1)) {

mercurial