X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fuclient.git;a=blobdiff_plain;f=uclient.h;h=e3695db6409b8069a0081c43ce3abde72b7f20ed;hp=5904a38dbc97e537dd371a8e25d1cd9a39a39068;hb=66fb58dff445514a53febab5a81a8a16d5ba9d56;hpb=6c222d0646fa7c07be96d729009916d5af295332 diff --git a/uclient.h b/uclient.h index 5904a38..e3695db 100644 --- a/uclient.h +++ b/uclient.h @@ -61,6 +61,7 @@ struct uclient { union uclient_addr local_addr, remote_addr; + struct uclient_url *proxy_url; struct uclient_url *url; int timeout_msecs; void *priv; @@ -69,6 +70,7 @@ struct uclient { bool data_eof; int error_code; int status_code; + int seq; struct blob_attr *meta; struct uloop_timeout connection_timeout; @@ -87,6 +89,8 @@ struct uclient *uclient_new(const char *url, const char *auth_str, const struct void uclient_free(struct uclient *cl); int uclient_set_url(struct uclient *cl, const char *url, const char *auth); +int uclient_set_proxy_url(struct uclient *cl, const char *url_str, const char *auth_str); + /** * Sets connection timeout. @@ -106,7 +110,7 @@ int uclient_connect(struct uclient *cl); void uclient_disconnect(struct uclient *cl); int uclient_read(struct uclient *cl, char *buf, int len); -int uclient_write(struct uclient *cl, char *buf, int len); +int uclient_write(struct uclient *cl, const char *buf, int len); int uclient_request(struct uclient *cl); char *uclient_get_addr(char *dest, int *port, union uclient_addr *a); @@ -117,9 +121,10 @@ extern const struct uclient_backend uclient_backend_http; int uclient_http_reset_headers(struct uclient *cl); int uclient_http_set_header(struct uclient *cl, const char *name, const char *value); int uclient_http_set_request_type(struct uclient *cl, const char *type); -bool uclient_http_redirect(struct uclient *cl); +int uclient_http_redirect(struct uclient *cl); int uclient_http_set_ssl_ctx(struct uclient *cl, const struct ustream_ssl_ops *ops, struct ustream_ssl_ctx *ctx, bool require_validation); +int uclient_http_set_address_family(struct uclient *cl, int af); #endif