From owner-svn-src-vendor@FreeBSD.ORG Mon Jul 21 22:08:51 2014 Return-Path: Delivered-To: svn-src-vendor@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 354E151C; Mon, 21 Jul 2014 22:08:51 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 227FB29E3; Mon, 21 Jul 2014 22:08:51 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.8/8.14.8) with ESMTP id s6LM8pNl072374; Mon, 21 Jul 2014 22:08:51 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.8/8.14.8/Submit) id s6LM8oIp072366; Mon, 21 Jul 2014 22:08:50 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201407212208.s6LM8oIp072366@svn.freebsd.org> From: Peter Wemm Date: Mon, 21 Jul 2014 22:08:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r268958 - in vendor/serf/dist: . auth X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-vendor@freebsd.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: SVN commit messages for the vendor work area tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Jul 2014 22:08:51 -0000 Author: peter Date: Mon Jul 21 22:08:49 2014 New Revision: 268958 URL: http://svnweb.freebsd.org/changeset/base/268958 Log: 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. Modified: vendor/serf/dist/CHANGES vendor/serf/dist/auth/auth.c vendor/serf/dist/outgoing.c vendor/serf/dist/serf.h Modified: vendor/serf/dist/CHANGES ============================================================================== --- vendor/serf/dist/CHANGES Mon Jul 21 21:26:10 2014 (r268957) +++ vendor/serf/dist/CHANGES Mon Jul 21 22:08:49 2014 (r268958) @@ -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] Fix issue #125: no reverse lookup during Negotiate authentication for proxies. Fix a crash caused by incorrect reuse of the ssltunnel CONNECT request (r2316) Modified: vendor/serf/dist/auth/auth.c ============================================================================== --- vendor/serf/dist/auth/auth.c Mon Jul 21 21:26:10 2014 (r268957) +++ vendor/serf/dist/auth/auth.c Mon Jul 21 22:08:49 2014 (r268958) @@ -408,7 +408,6 @@ apr_status_t serf__handle_auth_response( consider the reponse body as invalid and discard it. */ status = discard_body(response); *consumed_response = 1; - if (!APR_STATUS_IS_EOF(status)) { return status; } Modified: vendor/serf/dist/outgoing.c ============================================================================== --- vendor/serf/dist/outgoing.c Mon Jul 21 21:26:10 2014 (r268957) +++ vendor/serf/dist/outgoing.c Mon Jul 21 22:08:49 2014 (r268958) @@ -916,22 +916,21 @@ static apr_status_t handle_response(serf * themselves by not registering credential callbacks. */ if (request->conn->ctx->cred_cb) { - status = serf__handle_auth_response(&consumed_response, - request, - request->resp_bkt, - request->handler_baton, - pool); - - if (SERF_BUCKET_READ_ERROR(status)) { - /* Report the request as 'died'/'cancelled' to the application */ - (void)(*request->handler)(request, - NULL, - request->handler_baton, - pool); - } - - if (status) - return status; + status = serf__handle_auth_response(&consumed_response, + request, + request->resp_bkt, + request->handler_baton, + pool); + + /* If there was an error reading the response (maybe there wasn't + enough data available), don't bother passing the response to the + application. + + If the authentication was tried, but failed, pass the response + to the application, maybe it can do better. */ + if (status) { + return status; + } } if (!consumed_response) { Modified: vendor/serf/dist/serf.h ============================================================================== --- vendor/serf/dist/serf.h Mon Jul 21 21:26:10 2014 (r268957) +++ vendor/serf/dist/serf.h Mon Jul 21 22:08:49 2014 (r268958) @@ -1062,7 +1062,7 @@ void serf_debug__bucket_alloc_check( /* Version info */ #define SERF_MAJOR_VERSION 1 #define SERF_MINOR_VERSION 3 -#define SERF_PATCH_VERSION 5 +#define SERF_PATCH_VERSION 6 /* Version number string */ #define SERF_VERSION_STRING APR_STRINGIFY(SERF_MAJOR_VERSION) "." \