src/server/proxy/httpclient.c

changeset 730
c190ce0aab98
parent 726
5ad3bda4aca1
child 732
2aeaf6f32861
equal deleted inserted replaced
729:66afe8954ff9 730:c190ce0aab98
330 static int client_process(HttpClient *client, Event *event) { 330 static int client_process(HttpClient *client, Event *event) {
331 client->last_event = event; 331 client->last_event = event;
332 if(client->stage < 0) { 332 if(client->stage < 0) {
333 return 0; 333 return 0;
334 } 334 }
335 log_ereport(LOG_INFORM, "client_process %d", client->stage);
335 336
336 if(client->stage == 0) { 337 if(client->stage == 0) {
337 if(client->transfer_buffer_pos < client->transfer_buffer_len) { 338 if(client->transfer_buffer_pos < client->transfer_buffer_len) {
338 if(client_send_buf(client)) { 339 if(client_send_buf(client)) {
339 return client->error == 0; 340 return client->error == 0;
789 static int client_write_response(HttpClient *client) { 790 static int client_write_response(HttpClient *client) {
790 while(client->transfer2_buffer_pos < client->transfer2_buffer_len) { 791 while(client->transfer2_buffer_pos < client->transfer2_buffer_len) {
791 char *buf = client->transfer2_buffer + client->transfer2_buffer_pos; 792 char *buf = client->transfer2_buffer + client->transfer2_buffer_pos;
792 size_t len = client->transfer2_buffer_len - client->transfer2_buffer_pos; 793 size_t len = client->transfer2_buffer_len - client->transfer2_buffer_pos;
793 int ret = client->response_body_write(client, buf, len, client->response_body_write_userdata); 794 int ret = client->response_body_write(client, buf, len, client->response_body_write_userdata);
795 log_ereport(LOG_INFORM, "client_write_response: %d bytes; ret: %d", (int)len, ret);
794 if(ret > 0) { 796 if(ret > 0) {
795 client->transfer2_buffer_pos += ret; 797 client->transfer2_buffer_pos += ret;
796 } else if(ret == 0) { 798 } else if(ret == 0) {
797 // EOF? 799 // EOF?
798 // check if the write is incomplete, which would be an error 800 // check if the write is incomplete, which would be an error

mercurial