summaryrefslogtreecommitdiffstats
path: root/nanohttp/nanohttp-client.h
diff options
context:
space:
mode:
Diffstat (limited to 'nanohttp/nanohttp-client.h')
-rw-r--r--nanohttp/nanohttp-client.h157
1 files changed, 81 insertions, 76 deletions
diff --git a/nanohttp/nanohttp-client.h b/nanohttp/nanohttp-client.h
index 7a1cc79..b74130d 100644
--- a/nanohttp/nanohttp-client.h
+++ b/nanohttp/nanohttp-client.h
@@ -1,5 +1,5 @@
/******************************************************************
- * $Id: nanohttp-client.h,v 1.26 2006/11/23 15:27:33 m0gg Exp $
+ * $Id: nanohttp-client.h,v 1.27 2006/11/24 17:28:07 m0gg Exp $
*
* CSOAP Project: A http client/server library in C
* Copyright (C) 2003 Ferhat Ayaz
@@ -30,25 +30,17 @@ typedef struct httpc_conn
hpair_t *header;
hurl_t url;
http_version_t version;
- /*
- -1 : last dime package 0 : no dime connection >0 : dime package number */
- int _dime_package_nr;
- long _dime_sent_bytes;
+
int errcode;
char errmsg[150];
struct http_output_stream_t *out;
int id; /* uniq id */
} httpc_conn_t;
-
#ifdef __cplusplus
extern "C" {
#endif
-/* --------------------------------------------------------------
- HTTP CLIENT MODULE RELATED FUNCTIONS
- ---------------------------------------------------------------*/
-
/**
*
* Initializes the httpc_* module. This is called from
@@ -61,7 +53,7 @@ extern "C" {
*
* @see httpc_destroy, herror_t, soap_client_init_args
*/
-herror_t httpc_init(int argc, char **argv);
+extern herror_t httpc_init(int argc, char **argv);
/**
*
@@ -70,14 +62,18 @@ herror_t httpc_init(int argc, char **argv);
* @see httpc_init
*
*/
-void httpc_destroy(void);
+extern void httpc_destroy(void);
/**
*
* Creates a new connection.
*
+ * @return A pointer to a httpc_conn_t structure on success, NULL on error.
+ *
+ * @see httpc_conn_t
+ *
*/
-httpc_conn_t *httpc_new(void);
+extern httpc_conn_t *httpc_new(void);
/**
*
@@ -87,16 +83,17 @@ httpc_conn_t *httpc_new(void);
* @see httpc_close_free
*
*/
-void httpc_free(httpc_conn_t * conn);
+extern void httpc_free(httpc_conn_t * conn);
/**
*
* Close and release a connection
*
- * @see httpc_close, httpc_free
+ * @see httpc_close
+ * @see httpc_free
*
*/
-void httpc_close_free(httpc_conn_t * conn);
+extern void httpc_close_free(httpc_conn_t * conn);
/**
*
@@ -104,10 +101,11 @@ void httpc_close_free(httpc_conn_t * conn);
*
* @return 0 on success or failure (yeah!), 1 if a (key,value) pair was replaced.
*
- * @see httpc_add_header, httpc_add_headers
+ * @see httpc_add_header
+ * @see httpc_add_headers
*
*/
-int httpc_set_header(httpc_conn_t * conn, const char *key, const char *value);
+extern int httpc_set_header(httpc_conn_t * conn, const char *key, const char *value);
/**
*
@@ -115,19 +113,21 @@ int httpc_set_header(httpc_conn_t * conn, const char *key, const char *value);
*
* @return 0 on success, -1 on failure.
*
- * @see httpc_set_header, httpc_add_headers
+ * @see httpc_set_header
+ * @see httpc_add_headers
*
*/
-int httpc_add_header(httpc_conn_t *conn, const char *key, const char *value);
+extern int httpc_add_header(httpc_conn_t *conn, const char *key, const char *value);
/**
*
* Adds a list of (key, value) pairs.
*
- * @see httpc_set_header, httpc_add_header
+ * @see httpc_set_header
+ * @see httpc_add_header
*
*/
-void httpc_add_headers(httpc_conn_t *conn, const hpair_t *values);
+extern void httpc_add_headers(httpc_conn_t *conn, const hpair_t *values);
/**
*
@@ -137,10 +137,11 @@ void httpc_add_headers(httpc_conn_t *conn, const hpair_t *values);
* @param user The username.
* @param password The password.
*
- * @see httpc_set_header, HEADER_AUTHORIZATION
+ * @see httpc_set_header
+ * @see HEADER_AUTHORIZATION
*
*/
-int httpc_set_basic_authorization(httpc_conn_t *conn, const char *user, const char *password);
+extern int httpc_set_basic_authorization(httpc_conn_t *conn, const char *user, const char *password);
/**
*
@@ -150,79 +151,83 @@ int httpc_set_basic_authorization(httpc_conn_t *conn, const char *user, const ch
* @param user The username.
* @param password The password.
*
- * @see httpc_set_header, HEADER_PROXY_AUTHORIZATION
+ * @see httpc_set_header
+ * @see HEADER_PROXY_AUTHORIZATION
+ *
*/
-int httpc_set_basic_proxy_authorization(httpc_conn_t *conn, const char *user, const char *password);
+extern int httpc_set_basic_proxy_authorization(httpc_conn_t *conn, const char *user, const char *password);
/**
- Invoke a "GET" method request and receive the response
-*/
-herror_t httpc_get(httpc_conn_t * conn, hresponse_t ** out, const char *urlstr);
+ *
+ * Invoke a "GET" method request and receive the response
+ *
+ * @return H_OK on success
+ *
+ */
+extern herror_t httpc_get(httpc_conn_t * conn, hresponse_t ** out, const char *urlstr);
/**
- Start a "POST" method request
- Returns: HSOCKET_OK or error flag
-*/
-herror_t httpc_post_begin(httpc_conn_t * conn, const char *url);
+ *
+ * Start a "POST" method request
+ *
+ * @return H_OK on success or error flag
+ *
+ */
+extern herror_t httpc_post_begin(httpc_conn_t * conn, const char *url);
/**
- End a "POST" method and receive the response.
- You MUST call httpc_post_end() before!
-*/
-herror_t httpc_post_end(httpc_conn_t * conn, hresponse_t ** out);
-
-
-/* --------------------------------------------------------------
- DIME RELATED FUNCTIONS
- ---------------------------------------------------------------*/
-
-/*
- DIME support httpc_dime_* function set
-*/
-/*
-int httpc_dime_begin(httpc_conn_t *conn, const char *url);
-int httpc_dime_next(httpc_conn_t* conn, long content_length,
- const char *content_type, const char *id,
- const char *dime_options, int last);
-hresponse_t* httpc_dime_end(httpc_conn_t *conn);
-*/
-
-/* --------------------------------------------------------------
- MIME RELATED FUNCTIONS
- ---------------------------------------------------------------*/
-/*
- MIME support httpc_mime_* function set
-*/
+ *
+ * End a "POST" method and receive the response.
+ * You MUST call httpc_post_end() before!
+ *
+ * @return H_OK on success
+ *
+ * @see httpc_post_end
+ *
+ */
+extern herror_t httpc_post_end(httpc_conn_t * conn, hresponse_t ** out);
/**
- Begin MIME multipart/related POST request
- Returns: HSOCKET_OK or error flag
-*/
-herror_t httpc_mime_begin(httpc_conn_t * conn, const char *url,
+ *
+ * Begin MIME multipart/related POST request
+ *
+ * @return H_OK on success or error flag
+ *
+ */
+extern herror_t httpc_mime_begin(httpc_conn_t * conn, const char *url,
const char *related_start,
const char *related_start_info,
const char *related_type);
/**
- Send boundary and part header and continue
- with next part
-*/
-herror_t httpc_mime_next(httpc_conn_t * conn,
+ *
+ * Send boundary and part header and continue with next part
+ *
+ * @return H_OK on success
+ *
+ */
+extern herror_t httpc_mime_next(httpc_conn_t * conn,
const char *content_id,
const char *content_type,
const char *transfer_encoding);
/**
- Finish MIME request and get the response
-*/
-herror_t httpc_mime_end(httpc_conn_t * conn, hresponse_t ** out);
+ *
+ * Finish MIME request and get the response
+ *
+ * @return H_OK on success
+ *
+ */
+extern herror_t httpc_mime_end(httpc_conn_t * conn, hresponse_t ** out);
/**
- Send boundary and part header and continue
- with next part
-*/
-
-herror_t httpc_mime_send_file(httpc_conn_t * conn,
+ *
+ * Send boundary and part header and continue with next part
+ *
+ * @return H_OK on success
+ *
+ */
+extern herror_t httpc_mime_send_file(httpc_conn_t * conn,
const char *content_id,
const char *content_type,
const char *transfer_encoding,