summaryrefslogtreecommitdiffstats
path: root/contrib/serf/serf_private.h
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2014-02-22 01:19:47 +0000
committerpeter <peter@FreeBSD.org>2014-02-22 01:19:47 +0000
commit82dd8026220ee755d559cd8da9da2de16fc9348d (patch)
tree4208a813b452bc9bff3278b1d4031fe29b554c02 /contrib/serf/serf_private.h
parentac414654b33e4621cdb49e5b3020a09ad534e289 (diff)
downloadFreeBSD-src-82dd8026220ee755d559cd8da9da2de16fc9348d.zip
FreeBSD-src-82dd8026220ee755d559cd8da9da2de16fc9348d.tar.gz
Update serf-1.3.0 -> 1.3.4 - fixes multiple issues (see the CHANGES file)
including an SSL issue that turned up in the cluster with svn-1.8.8.
Diffstat (limited to 'contrib/serf/serf_private.h')
-rw-r--r--contrib/serf/serf_private.h22
1 files changed, 16 insertions, 6 deletions
diff --git a/contrib/serf/serf_private.h b/contrib/serf/serf_private.h
index 982d977..d38680b 100644
--- a/contrib/serf/serf_private.h
+++ b/contrib/serf/serf_private.h
@@ -23,7 +23,9 @@
/* Windows does not define IOV_MAX, so we need to ensure it is defined. */
#ifndef IOV_MAX
-#define IOV_MAX 16
+/* There is no limit for iovec count on Windows, but apr_socket_sendv
+ allocates WSABUF structures on stack if vecs_count <= 50. */
+#define IOV_MAX 50
#endif
/* Older versions of APR do not have this macro. */
@@ -93,7 +95,7 @@ struct serf_request_t {
serf_bucket_t *resp_bkt;
- int written;
+ int writing_started;
int priority;
/* 1 if this is a request to setup a SSL tunnel, 0 for normal requests. */
int ssltunnel;
@@ -117,6 +119,8 @@ typedef struct serf__authn_info_t {
const serf__authn_scheme_t *scheme;
void *baton;
+
+ int failed_authn_types;
} serf__authn_info_t;
struct serf_context_t {
@@ -266,9 +270,8 @@ struct serf_connection_t {
port values are filled in. */
apr_uri_t host_info;
- /* connection and authentication scheme specific information */
- void *authn_baton;
- void *proxy_authn_baton;
+ /* authentication info for this connection. */
+ serf__authn_info_t authn_info;
/* Time marker when connection begins. */
apr_time_t connect_time;
@@ -292,6 +295,12 @@ struct serf_connection_t {
*/
apr_status_t serf_response_full_become_aggregate(serf_bucket_t *bucket);
+/**
+ * Remove the header from the list, do nothing if the header wasn't added.
+ */
+void serf__bucket_headers_remove(serf_bucket_t *headers_bucket,
+ const char *header);
+
/*** Authentication handler declarations ***/
typedef enum { PROXY, HOST } peer_t;
@@ -352,7 +361,8 @@ typedef apr_status_t
* (if needed).
*/
typedef apr_status_t
-(*serf__validate_response_func_t)(peer_t peer,
+(*serf__validate_response_func_t)(const serf__authn_scheme_t *scheme,
+ peer_t peer,
int code,
serf_connection_t *conn,
serf_request_t *request,
OpenPOWER on IntegriCloud