serf.h (1.1.1) | | serf.h (1.2.0) |
| | |
skipping to change at line 84 ¶ | | skipping to change at line 84 ¶ |
*/ | | */ |
#define SERF_ERROR_WAIT_CONN (APR_OS_START_USERERR + SERF_ERROR_RANGE + 3) | | #define SERF_ERROR_WAIT_CONN (APR_OS_START_USERERR + SERF_ERROR_RANGE + 3) |
/* This code is for when something went wrong during deflating compressed | | /* This code is for when something went wrong during deflating compressed |
* data e.g. a CRC error. */ | | * data e.g. a CRC error. */ |
#define SERF_ERROR_DECOMPRESSION_FAILED (APR_OS_START_USERERR + \ | | #define SERF_ERROR_DECOMPRESSION_FAILED (APR_OS_START_USERERR + \ |
SERF_ERROR_RANGE + 4) | | SERF_ERROR_RANGE + 4) |
/* This code is for when a response received from a http server is not in | | /* This code is for when a response received from a http server is not in |
* http-compliant syntax. */ | | * http-compliant syntax. */ |
#define SERF_ERROR_BAD_HTTP_RESPONSE (APR_OS_START_USERERR + \ | | #define SERF_ERROR_BAD_HTTP_RESPONSE (APR_OS_START_USERERR + \ |
SERF_ERROR_RANGE + 5) | | SERF_ERROR_RANGE + 5) |
| | /* The server sent less data than what was announced. */ |
| | #define SERF_ERROR_TRUNCATED_HTTP_RESPONSE (APR_OS_START_USERERR + \ |
| | SERF_ERROR_RANGE + 6) |
| | /* The proxy server returned an error while setting up the SSL tunnel. */ |
| | #define SERF_ERROR_SSLTUNNEL_SETUP_FAILED (APR_OS_START_USERERR + \ |
| | SERF_ERROR_RANGE + 7) |
| | /* The server unexpectedly closed the connection prematurely. */ |
| | #define SERF_ERROR_ABORTED_CONNECTION (APR_OS_START_USERERR + \ |
| | SERF_ERROR_RANGE + 8) |
| | |
/* SSL certificates related errors */ | | /* SSL certificates related errors */ |
#define SERF_ERROR_SSL_CERT_FAILED (APR_OS_START_USERERR + SERF_ERROR_RANGE
+ 70) | | #define SERF_ERROR_SSL_CERT_FAILED (APR_OS_START_USERERR + SERF_ERROR_RANGE
+ 70) |
| | |
/* SSL communications related errors */ | | /* SSL communications related errors */ |
#define SERF_ERROR_SSL_COMM_FAILED (APR_OS_START_USERERR + SERF_ERROR_RANGE
+ 71) | | #define SERF_ERROR_SSL_COMM_FAILED (APR_OS_START_USERERR + SERF_ERROR_RANGE
+ 71) |
| | |
/* General authentication related errors */ | | /* General authentication related errors */ |
#define SERF_ERROR_AUTHN_FAILED (APR_OS_START_USERERR + SERF_ERROR_RANGE +
90) | | #define SERF_ERROR_AUTHN_FAILED (APR_OS_START_USERERR + SERF_ERROR_RANGE +
90) |
| | |
| | |
skipping to change at line 107 ¶ | | skipping to change at line 116 ¶ |
/* Authn was requested by the server but the header lacked some attribute
*/ | | /* Authn was requested by the server but the header lacked some attribute
*/ |
#define SERF_ERROR_AUTHN_MISSING_ATTRIBUTE (APR_OS_START_USERERR + SERF_ERR
OR_RANGE + 92) | | #define SERF_ERROR_AUTHN_MISSING_ATTRIBUTE (APR_OS_START_USERERR + SERF_ERR
OR_RANGE + 92) |
| | |
/* Authentication handler initialization related errors */ | | /* Authentication handler initialization related errors */ |
#define SERF_ERROR_AUTHN_INITALIZATION_FAILED (APR_OS_START_USERERR +\ | | #define SERF_ERROR_AUTHN_INITALIZATION_FAILED (APR_OS_START_USERERR +\ |
SERF_ERROR_RANGE + 93) | | SERF_ERROR_RANGE + 93) |
| | |
/* This macro groups errors potentially raised when reading a http response
. */ | | /* This macro groups errors potentially raised when reading a http response
. */ |
#define SERF_BAD_RESPONSE_ERROR(status) ((status) \ | | #define SERF_BAD_RESPONSE_ERROR(status) ((status) \ |
&& ((SERF_ERROR_DECOMPRESSION_FAILED == (status)) \ | | && ((SERF_ERROR_DECOMPRESSION_FAILED == (status)) \ |
||(SERF_ERROR_BAD_HTTP_RESPONSE == (status)))) | | ||(SERF_ERROR_BAD_HTTP_RESPONSE == (status)) \ |
| | ||(SERF_ERROR_TRUNCATED_HTTP_RESPONSE == (status)))) |
| | |
/** | | /** |
* Return a string that describes the specified error code. | | * Return a string that describes the specified error code. |
* | | * |
* If the error code is not one of the above Serf error codes, then | | * If the error code is not one of the above Serf error codes, then |
* NULL will be returned. | | * NULL will be returned. |
* | | * |
* Note regarding lifetime: the string is a statically-allocated constant | | * Note regarding lifetime: the string is a statically-allocated constant |
*/ | | */ |
const char *serf_error_string(apr_status_t errcode); | | const char *serf_error_string(apr_status_t errcode); |
| | |
skipping to change at line 372 ¶ | | skipping to change at line 382 ¶ |
char **username, | | char **username, |
char **password, | | char **password, |
serf_request_t *request, void *baton, | | serf_request_t *request, void *baton, |
int code, const char *authn_type, | | int code, const char *authn_type, |
const char *realm, | | const char *realm, |
apr_pool_t *pool); | | apr_pool_t *pool); |
| | |
/** | | /** |
* Create a new connection associated with the @a ctx serf context. | | * Create a new connection associated with the @a ctx serf context. |
* | | * |
* A connection will be created to (eventually) connect to the address | | * If no proxy server is configured, a connection will be created to |
* specified by @a address. The address must live at least as long as | | * (eventually) connect to the address specified by @a address. The address |
* @a pool (thus, as long as the connection object). | | must |
| | * live at least as long as @a pool (thus, as long as the connection object |
| | ). |
| | * If a proxy server is configured, @address will be ignored. |
* | | * |
* The connection object will be allocated within @a pool. Clearing or | | * The connection object will be allocated within @a pool. Clearing or |
* destroying this pool will close the connection, and terminate any | | * destroying this pool will close the connection, and terminate any |
* outstanding requests or responses. | | * outstanding requests or responses. |
* | | * |
* When the connection is closed (upon request or because of an error), | | * When the connection is closed (upon request or because of an error), |
* then the @a closed callback is invoked, and @a closed_baton is passed. | | * then the @a closed callback is invoked, and @a closed_baton is passed. |
* | | * |
* ### doc on setup(_baton). tweak below comment re: acceptor. | | * ### doc on setup(_baton). tweak below comment re: acceptor. |
* NULL may be passed for @a acceptor and @a closed; default implementation
s | | * NULL may be passed for @a acceptor and @a closed; default implementation
s |
| | |
skipping to change at line 558 ¶ | | skipping to change at line 569 ¶ |
* with @see serf_request_cancel. | | * with @see serf_request_cancel. |
* | | * |
* Invoking any calls other than @see serf_request_cancel before the setup | | * Invoking any calls other than @see serf_request_cancel before the setup |
* callback executes is not supported. | | * callback executes is not supported. |
*/ | | */ |
serf_request_t *serf_connection_priority_request_create( | | serf_request_t *serf_connection_priority_request_create( |
serf_connection_t *conn, | | serf_connection_t *conn, |
serf_request_setup_t setup, | | serf_request_setup_t setup, |
void *setup_baton); | | void *setup_baton); |
| | |
| | /** Returns detected network latency for the @a conn connection. Negative |
| | * value means that latency is unknwon. |
| | */ |
| | apr_interval_time_t serf_connection_get_latency(serf_connection_t *conn); |
| | |
| | /** Check if a @a request has been completely written. |
| | * |
| | * Returns APR_SUCCESS if the request was written completely on the connect |
| | ion. |
| | * Returns APR_EBUSY if the request is not yet or partially written. |
| | */ |
| | apr_status_t serf_request_is_written( |
| | serf_request_t *request); |
| | |
/** | | /** |
* Cancel the request specified by the @a request object. | | * Cancel the request specified by the @a request object. |
* | | * |
* If the request has been scheduled for delivery, then its response | | * If the request has been scheduled for delivery, then its response |
* handler will be run, passing NULL for the response bucket. | | * handler will be run, passing NULL for the response bucket. |
* | | * |
* If the request has already been (partially or fully) delivered, then | | * If the request has already been (partially or fully) delivered, then |
* APR_EBUSY is returned and the request is *NOT* canceled. To properly | | * APR_EBUSY is returned and the request is *NOT* canceled. To properly |
* cancel the request, the connection must be closed (by clearing or | | * cancel the request, the connection must be closed (by clearing or |
* destroying its associated pool). | | * destroying its associated pool). |
| | |
skipping to change at line 1024 ¶ | | skipping to change at line 1048 ¶ |
serf_bucket_alloc_t *allocator); | | serf_bucket_alloc_t *allocator); |
void serf_debug__closed_conn( | | void serf_debug__closed_conn( |
serf_bucket_alloc_t *allocator); | | serf_bucket_alloc_t *allocator); |
void serf_debug__bucket_destroy( | | void serf_debug__bucket_destroy( |
const serf_bucket_t *bucket); | | const serf_bucket_t *bucket); |
void serf_debug__bucket_alloc_check( | | void serf_debug__bucket_alloc_check( |
serf_bucket_alloc_t *allocator); | | serf_bucket_alloc_t *allocator); |
| | |
/* Version info */ | | /* Version info */ |
#define SERF_MAJOR_VERSION 1 | | #define SERF_MAJOR_VERSION 1 |
#define SERF_MINOR_VERSION 1 | | #define SERF_MINOR_VERSION 2 |
#define SERF_PATCH_VERSION 1 | | #define SERF_PATCH_VERSION 0 |
| | |
/* Version number string */ | | /* Version number string */ |
#define SERF_VERSION_STRING APR_STRINGIFY(SERF_MAJOR_VERSION) "." \ | | #define SERF_VERSION_STRING APR_STRINGIFY(SERF_MAJOR_VERSION) "." \ |
APR_STRINGIFY(SERF_MINOR_VERSION) "." \ | | APR_STRINGIFY(SERF_MINOR_VERSION) "." \ |
APR_STRINGIFY(SERF_PATCH_VERSION) | | APR_STRINGIFY(SERF_PATCH_VERSION) |
| | |
/** | | /** |
* Check at compile time if the Serf version is at least a certain | | * Check at compile time if the Serf version is at least a certain |
* level. | | * level. |
* @param major The major version component of the version checked | | * @param major The major version component of the version checked |
| | |
End of changes. 5 change blocks. |
6 lines changed or deleted | | 33 lines changed or added |
|
serf_bucket_types.h (1.1.1) | | serf_bucket_types.h (1.2.0) |
| | |
skipping to change at line 85 ¶ | | skipping to change at line 85 ¶ |
extern const serf_bucket_type_t serf_bucket_type_response; | | extern const serf_bucket_type_t serf_bucket_type_response; |
#define SERF_BUCKET_IS_RESPONSE(b) SERF_BUCKET_CHECK((b), response) | | #define SERF_BUCKET_IS_RESPONSE(b) SERF_BUCKET_CHECK((b), response) |
| | |
serf_bucket_t *serf_bucket_response_create( | | serf_bucket_t *serf_bucket_response_create( |
serf_bucket_t *stream, | | serf_bucket_t *stream, |
serf_bucket_alloc_t *allocator); | | serf_bucket_alloc_t *allocator); |
| | |
#define SERF_HTTP_VERSION(major, minor) ((major) * 1000 + (minor)) | | #define SERF_HTTP_VERSION(major, minor) ((major) * 1000 + (minor)) |
#define SERF_HTTP_11 SERF_HTTP_VERSION(1, 1) | | #define SERF_HTTP_11 SERF_HTTP_VERSION(1, 1) |
#define SERF_HTTP_10 SERF_HTTP_VERSION(1, 0) | | #define SERF_HTTP_10 SERF_HTTP_VERSION(1, 0) |
| | #define SERF_HTTP_VERSION_MAJOR(shv) ((int)shv / 1000) |
| | #define SERF_HTTP_VERSION_MINOR(shv) ((int)shv % 1000) |
| | |
typedef struct { | | typedef struct { |
int version; | | int version; |
int code; | | int code; |
const char *reason; | | const char *reason; |
} serf_status_line; | | } serf_status_line; |
| | |
/** | | /** |
* Return the Status-Line information, if available. This function | | * Return the Status-Line information, if available. This function |
* works like other bucket read functions: it may return APR_EAGAIN or | | * works like other bucket read functions: it may return APR_EAGAIN or |
| | |
skipping to change at line 129 ¶ | | skipping to change at line 131 ¶ |
| | |
/** | | /** |
* Advise the response @a bucket that this was from a HEAD request and | | * Advise the response @a bucket that this was from a HEAD request and |
* that it should not expect to see a response body. | | * that it should not expect to see a response body. |
*/ | | */ |
void serf_bucket_response_set_head( | | void serf_bucket_response_set_head( |
serf_bucket_t *bucket); | | serf_bucket_t *bucket); |
| | |
/* ==================================================================== */ | | /* ==================================================================== */ |
| | |
| | extern const serf_bucket_type_t serf_bucket_type_response_body; |
| | #define SERF_BUCKET_IS_RESPONSE_BODY(b) SERF_BUCKET_CHECK((b), response_bod |
| | y) |
| | |
| | serf_bucket_t *serf_bucket_response_body_create( |
| | serf_bucket_t *stream, |
| | apr_uint64_t limit, |
| | serf_bucket_alloc_t *allocator); |
| | |
| | /* ==================================================================== */ |
| | |
extern const serf_bucket_type_t serf_bucket_type_bwtp_frame; | | extern const serf_bucket_type_t serf_bucket_type_bwtp_frame; |
#define SERF_BUCKET_IS_BWTP_FRAME(b) SERF_BUCKET_CHECK((b), bwtp_frame) | | #define SERF_BUCKET_IS_BWTP_FRAME(b) SERF_BUCKET_CHECK((b), bwtp_frame) |
| | |
extern const serf_bucket_type_t serf_bucket_type_bwtp_incoming_frame; | | extern const serf_bucket_type_t serf_bucket_type_bwtp_incoming_frame; |
#define SERF_BUCKET_IS_BWTP_INCOMING_FRAME(b) SERF_BUCKET_CHECK((b), bwtp_i
ncoming_frame) | | #define SERF_BUCKET_IS_BWTP_INCOMING_FRAME(b) SERF_BUCKET_CHECK((b), bwtp_i
ncoming_frame) |
| | |
int serf_bucket_bwtp_frame_get_channel( | | int serf_bucket_bwtp_frame_get_channel( |
serf_bucket_t *hdr); | | serf_bucket_t *hdr); |
| | |
int serf_bucket_bwtp_frame_get_type( | | int serf_bucket_bwtp_frame_get_type( |
| | |
skipping to change at line 454 ¶ | | skipping to change at line 466 ¶ |
serf_bucket_t *stream, | | serf_bucket_t *stream, |
apr_uint64_t limit, | | apr_uint64_t limit, |
serf_bucket_alloc_t *allocator); | | serf_bucket_alloc_t *allocator); |
| | |
/* ==================================================================== */ | | /* ==================================================================== */ |
#define SERF_SSL_CERT_NOTYETVALID 1 | | #define SERF_SSL_CERT_NOTYETVALID 1 |
#define SERF_SSL_CERT_EXPIRED 2 | | #define SERF_SSL_CERT_EXPIRED 2 |
#define SERF_SSL_CERT_UNKNOWNCA 4 | | #define SERF_SSL_CERT_UNKNOWNCA 4 |
#define SERF_SSL_CERT_SELF_SIGNED 8 | | #define SERF_SSL_CERT_SELF_SIGNED 8 |
#define SERF_SSL_CERT_UNKNOWN_FAILURE 16 | | #define SERF_SSL_CERT_UNKNOWN_FAILURE 16 |
| | #define SERF_SSL_CERT_REVOKED 32 |
| | |
extern const serf_bucket_type_t serf_bucket_type_ssl_encrypt; | | extern const serf_bucket_type_t serf_bucket_type_ssl_encrypt; |
#define SERF_BUCKET_IS_SSL_ENCRYPT(b) SERF_BUCKET_CHECK((b), ssl_encrypt) | | #define SERF_BUCKET_IS_SSL_ENCRYPT(b) SERF_BUCKET_CHECK((b), ssl_encrypt) |
| | |
typedef struct serf_ssl_context_t serf_ssl_context_t; | | typedef struct serf_ssl_context_t serf_ssl_context_t; |
typedef struct serf_ssl_certificate_t serf_ssl_certificate_t; | | typedef struct serf_ssl_certificate_t serf_ssl_certificate_t; |
| | |
typedef apr_status_t (*serf_ssl_need_client_cert_t)( | | typedef apr_status_t (*serf_ssl_need_client_cert_t)( |
void *data, | | void *data, |
const char **cert_path); | | const char **cert_path); |
| | |
skipping to change at line 582 ¶ | | skipping to change at line 595 ¶ |
| | |
/** | | /** |
* Adds the certificate @a cert to the list of trusted certificates in | | * Adds the certificate @a cert to the list of trusted certificates in |
* @a ssl_ctx that will be used for verification. | | * @a ssl_ctx that will be used for verification. |
* See also @a serf_ssl_load_cert_file. | | * See also @a serf_ssl_load_cert_file. |
*/ | | */ |
apr_status_t serf_ssl_trust_cert( | | apr_status_t serf_ssl_trust_cert( |
serf_ssl_context_t *ssl_ctx, | | serf_ssl_context_t *ssl_ctx, |
serf_ssl_certificate_t *cert); | | serf_ssl_certificate_t *cert); |
| | |
| | /** |
| | * Enable or disable SSL compression on a SSL session. |
| | * @a enabled = 1 to enable compression, 0 to disable compression. |
| | * Default = disabled. |
| | */ |
| | apr_status_t serf_ssl_use_compression( |
| | serf_ssl_context_t *ssl_ctx, |
| | int enabled); |
| | |
serf_bucket_t *serf_bucket_ssl_encrypt_create( | | serf_bucket_t *serf_bucket_ssl_encrypt_create( |
serf_bucket_t *stream, | | serf_bucket_t *stream, |
serf_ssl_context_t *ssl_context, | | serf_ssl_context_t *ssl_context, |
serf_bucket_alloc_t *allocator); | | serf_bucket_alloc_t *allocator); |
| | |
serf_ssl_context_t *serf_bucket_ssl_encrypt_context_get( | | serf_ssl_context_t *serf_bucket_ssl_encrypt_context_get( |
serf_bucket_t *bucket); | | serf_bucket_t *bucket); |
| | |
/* ==================================================================== */ | | /* ==================================================================== */ |
| | |
| | |
End of changes. 4 change blocks. |
0 lines changed or deleted | | 23 lines changed or added |
|