diff options
Diffstat (limited to 'methods')
-rw-r--r-- | methods/connect.cc | 2 | ||||
-rw-r--r-- | methods/http.cc | 4 | ||||
-rw-r--r-- | methods/https.cc | 1 | ||||
-rw-r--r-- | methods/rred.cc | 2 |
4 files changed, 5 insertions, 4 deletions
diff --git a/methods/connect.cc b/methods/connect.cc index 355bd5c4d..b5f48907e 100644 --- a/methods/connect.cc +++ b/methods/connect.cc @@ -237,6 +237,6 @@ bool Connect(string Host,int Port,const char *Service,int DefPort,int &Fd, if (_error->PendingError() == true) return false; - return _error->Error(_("Unable to connect to %s %s:"),Host.c_str(),ServStr); + return _error->Error(_("Unable to connect to %s:%s:"),Host.c_str(),ServStr); } /*}}}*/ diff --git a/methods/http.cc b/methods/http.cc index 50478b44c..3b210f6b6 100644 --- a/methods/http.cc +++ b/methods/http.cc @@ -553,7 +553,7 @@ bool ServerState::HeaderLine(string Line) // Evil servers return no version if (Line[4] == '/') { - if (sscanf(Line.c_str(),"HTTP/%u.%u %u %[^\n]",&Major,&Minor, + if (sscanf(Line.c_str(),"HTTP/%u.%u %u%[^\n]",&Major,&Minor, &Result,Code) != 4) return _error->Error(_("The HTTP server sent an invalid reply header")); } @@ -561,7 +561,7 @@ bool ServerState::HeaderLine(string Line) { Major = 0; Minor = 9; - if (sscanf(Line.c_str(),"HTTP %u %[^\n]",&Result,Code) != 2) + if (sscanf(Line.c_str(),"HTTP %u%[^\n]",&Result,Code) != 2) return _error->Error(_("The HTTP server sent an invalid reply header")); } diff --git a/methods/https.cc b/methods/https.cc index 86d7f3a6b..3717ded7b 100644 --- a/methods/https.cc +++ b/methods/https.cc @@ -138,6 +138,7 @@ bool HttpsMethod::Fetch(FetchItem *Itm) curl_easy_setopt(curl, CURLOPT_NOPROGRESS, false); curl_easy_setopt(curl, CURLOPT_FAILONERROR, true); curl_easy_setopt(curl, CURLOPT_FILETIME, true); + curl_easy_setopt(curl, CURLOPT_NETRC, CURL_NETRC_OPTIONAL); // SSL parameters are set by default to the common (non mirror-specific) value // if available (or a default one) and gets overload by mirror-specific ones. diff --git a/methods/rred.cc b/methods/rred.cc index 6fa57f3a6..27d95bdde 100644 --- a/methods/rred.cc +++ b/methods/rred.cc @@ -174,7 +174,7 @@ int RredMethod::ed_file(FILE *ed_cmds, FILE *in_file, FILE *out_file, hash); /* read the rest from infile */ - if (result > 0) { + if (result >= 0) { while (fgets(buffer, BUF_SIZE, in_file) != NULL) { written = fwrite(buffer, 1, strlen(buffer), out_file); hash->Add((unsigned char*)buffer, written); |