svn commit: r241841 - head/lib/libfetch
Eitan Adler
eadler at FreeBSD.org
Mon Oct 22 03:00:16 UTC 2012
Author: eadler
Date: Mon Oct 22 03:00:15 2012
New Revision: 241841
URL: http://svn.freebsd.org/changeset/base/241841
Log:
Implement HTTP 305 redirect handling.
PR: 172452
Submitted by: gcooper
Reviewed by: des
Approved by: cperciva
MFC after: 1 week
Modified:
head/lib/libfetch/http.c
Modified: head/lib/libfetch/http.c
==============================================================================
--- head/lib/libfetch/http.c Mon Oct 22 03:00:10 2012 (r241840)
+++ head/lib/libfetch/http.c Mon Oct 22 03:00:15 2012 (r241841)
@@ -103,6 +103,7 @@ __FBSDID("$FreeBSD$");
#define HTTP_MOVED_TEMP 302
#define HTTP_SEE_OTHER 303
#define HTTP_NOT_MODIFIED 304
+#define HTTP_USE_PROXY 305
#define HTTP_TEMP_REDIRECT 307
#define HTTP_PERM_REDIRECT 308
#define HTTP_NEED_AUTH 401
@@ -113,6 +114,7 @@ __FBSDID("$FreeBSD$");
#define HTTP_REDIRECT(xyz) ((xyz) == HTTP_MOVED_PERM \
|| (xyz) == HTTP_MOVED_TEMP \
|| (xyz) == HTTP_TEMP_REDIRECT \
+ || (xyz) == HTTP_USE_PROXY \
|| (xyz) == HTTP_SEE_OTHER)
#define HTTP_ERROR(xyz) ((xyz) > 400 && (xyz) < 599)
@@ -1697,6 +1699,7 @@ http_request(struct url *URL, const char
case HTTP_MOVED_PERM:
case HTTP_MOVED_TEMP:
case HTTP_SEE_OTHER:
+ case HTTP_USE_PROXY:
/*
* Not so fine, but we still have to read the
* headers to get the new location.
@@ -1778,7 +1781,8 @@ http_request(struct url *URL, const char
*/
if (noredirect &&
conn->err != HTTP_MOVED_PERM &&
- conn->err != HTTP_PERM_REDIRECT) {
+ conn->err != HTTP_PERM_REDIRECT &&
+ conn->err != HTTP_USE_PROXY) {
n = 1;
break;
}
More information about the svn-src-head
mailing list