r169386 (PR 112515) was incomplete: it treated 307 as an error except

in verbose mode, and did not handle 308 at all.

r241840 (PR 172451) added support for 308, but with the same bug.

Correctly handle both by recognizing them as redirects in all places
where we check the HTTP result code.

PR:		112515 173451 209546
Submitted by:	novel@
MFC after:	1 week
This commit is contained in:
Dag-Erling Smørgrav 2016-05-31 08:27:39 +00:00
parent b933c950fa
commit a5fc9a29bb
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=301027

View File

@ -114,6 +114,7 @@ __FBSDID("$FreeBSD$");
#define HTTP_REDIRECT(xyz) ((xyz) == HTTP_MOVED_PERM \ #define HTTP_REDIRECT(xyz) ((xyz) == HTTP_MOVED_PERM \
|| (xyz) == HTTP_MOVED_TEMP \ || (xyz) == HTTP_MOVED_TEMP \
|| (xyz) == HTTP_TEMP_REDIRECT \ || (xyz) == HTTP_TEMP_REDIRECT \
|| (xyz) == HTTP_PERM_REDIRECT \
|| (xyz) == HTTP_USE_PROXY \ || (xyz) == HTTP_USE_PROXY \
|| (xyz) == HTTP_SEE_OTHER) || (xyz) == HTTP_SEE_OTHER)
@ -1767,6 +1768,8 @@ http_request_body(struct url *URL, const char *op, struct url_stat *us,
break; break;
case HTTP_MOVED_PERM: case HTTP_MOVED_PERM:
case HTTP_MOVED_TEMP: case HTTP_MOVED_TEMP:
case HTTP_TEMP_REDIRECT:
case HTTP_PERM_REDIRECT:
case HTTP_SEE_OTHER: case HTTP_SEE_OTHER:
case HTTP_USE_PROXY: case HTTP_USE_PROXY:
/* /*