Vendor import serf-1.3.6

+  Revert r2319 from serf 1.3.5: this change was making serf call handle_response
+    multiple times in case of an error response, leading to unexpected behavior.
This commit is contained in:
Peter Wemm 2014-07-21 22:08:49 +00:00
parent 08a60c7e0c
commit b42ed20721
4 changed files with 18 additions and 16 deletions

View File

@ -1,3 +1,7 @@
Serf 1.3.6 [2014-06-09, from /tags/1.3.6, rxxxx]
Revert r2319 from serf 1.3.5: this change was making serf call handle_response
multiple times in case of an error response, leading to unexpected behavior.
Serf 1.3.5 [2014-04-27, from /tags/1.3.5, rxxxx] Serf 1.3.5 [2014-04-27, from /tags/1.3.5, rxxxx]
Fix issue #125: no reverse lookup during Negotiate authentication for proxies. Fix issue #125: no reverse lookup during Negotiate authentication for proxies.
Fix a crash caused by incorrect reuse of the ssltunnel CONNECT request (r2316) Fix a crash caused by incorrect reuse of the ssltunnel CONNECT request (r2316)

View File

@ -408,7 +408,6 @@ apr_status_t serf__handle_auth_response(int *consumed_response,
consider the reponse body as invalid and discard it. */ consider the reponse body as invalid and discard it. */
status = discard_body(response); status = discard_body(response);
*consumed_response = 1; *consumed_response = 1;
if (!APR_STATUS_IS_EOF(status)) { if (!APR_STATUS_IS_EOF(status)) {
return status; return status;
} }

View File

@ -916,22 +916,21 @@ static apr_status_t handle_response(serf_request_t *request,
* themselves by not registering credential callbacks. * themselves by not registering credential callbacks.
*/ */
if (request->conn->ctx->cred_cb) { if (request->conn->ctx->cred_cb) {
status = serf__handle_auth_response(&consumed_response, status = serf__handle_auth_response(&consumed_response,
request, request,
request->resp_bkt, request->resp_bkt,
request->handler_baton, request->handler_baton,
pool); pool);
if (SERF_BUCKET_READ_ERROR(status)) { /* If there was an error reading the response (maybe there wasn't
/* Report the request as 'died'/'cancelled' to the application */ enough data available), don't bother passing the response to the
(void)(*request->handler)(request, application.
NULL,
request->handler_baton,
pool);
}
if (status) If the authentication was tried, but failed, pass the response
return status; to the application, maybe it can do better. */
if (status) {
return status;
}
} }
if (!consumed_response) { if (!consumed_response) {

2
serf.h
View File

@ -1062,7 +1062,7 @@ void serf_debug__bucket_alloc_check(
/* Version info */ /* Version info */
#define SERF_MAJOR_VERSION 1 #define SERF_MAJOR_VERSION 1
#define SERF_MINOR_VERSION 3 #define SERF_MINOR_VERSION 3
#define SERF_PATCH_VERSION 5 #define SERF_PATCH_VERSION 6
/* Version number string */ /* Version number string */
#define SERF_VERSION_STRING APR_STRINGIFY(SERF_MAJOR_VERSION) "." \ #define SERF_VERSION_STRING APR_STRINGIFY(SERF_MAJOR_VERSION) "." \