|
|
| version 1.64, 2015/04/06 22:27:26 | version 1.65, 2015/04/30 17:37:43 |
|---|---|
| Line 68 static bool set_addr(struct sockaddr_in | Line 68 static bool set_addr(struct sockaddr_in |
| addr->sin_family=AF_INET; | addr->sin_family=AF_INET; |
| addr->sin_port=htons(port); | addr->sin_port=htons(port); |
| if(host) { | if(host) { |
| ulong packed_ip=inet_addr(host); | struct hostent *hostIP=gethostbyname(host); |
| if(packed_ip!=INADDR_NONE) | if(hostIP && hostIP->h_addrtype == AF_INET){ |
| memcpy(&addr->sin_addr, &packed_ip, sizeof(packed_ip)); | memcpy(&addr->sin_addr, hostIP->h_addr, hostIP->h_length); |
| else { | return true; |
| struct hostent *hostIP=gethostbyname(host); | } |
| if(hostIP) | } |
| memcpy(&addr->sin_addr, hostIP->h_addr, hostIP->h_length); | return false; |
| else | |
| return false; | |
| } | |
| } else | |
| addr->sin_addr.s_addr=INADDR_ANY; | |
| return true; | |
| } | } |
| size_t guess_content_length(char* buf) { | size_t guess_content_length(char* buf) { |
| Line 890 File_read_http_result pa_internal_file_r | Line 884 File_read_http_result pa_internal_file_r |
| // sending request | // sending request |
| int status_code=http_request(response, response_size, | int status_code=http_request(response, response_size, |
| host, port, request, request_size, | pa_idna_encode(host, r.charsets.source()), port, request, request_size, |
| timeout_secs, fail_on_status_ne_200); | timeout_secs, fail_on_status_ne_200); |
| // processing results | // processing results |