summaryrefslogtreecommitdiffstats
path: root/nanohttp
diff options
context:
space:
mode:
authorGravatar m0gg2007-01-01 22:54:46 +0000
committerGravatar m0gg2007-01-01 22:54:46 +0000
commit5502aff768e5cbc3bbd05e067bc0dfc456770f86 (patch)
tree090bf72c90a77c9c931f6bdc26cfbcb3f14ebaa7 /nanohttp
parent23629635c0d544c4fbbc0bd5d01dd75413942a3f (diff)
downloadcsoap-5502aff768e5cbc3bbd05e067bc0dfc456770f86.tar.gz
csoap-5502aff768e5cbc3bbd05e067bc0dfc456770f86.tar.bz2
Header parsing error solved
Diffstat (limited to 'nanohttp')
-rw-r--r--nanohttp/nanohttp-admin.c12
-rw-r--r--nanohttp/nanohttp-client.c4
-rw-r--r--nanohttp/nanohttp-common.c20
-rw-r--r--nanohttp/nanohttp-server.c32
-rw-r--r--nanohttp/nanohttp-server.h33
5 files changed, 57 insertions, 44 deletions
diff --git a/nanohttp/nanohttp-admin.c b/nanohttp/nanohttp-admin.c
index 3dbdbd6..060cbb8 100644
--- a/nanohttp/nanohttp-admin.c
+++ b/nanohttp/nanohttp-admin.c
@@ -1,5 +1,5 @@
/******************************************************************
-* $Id: nanohttp-admin.c,v 1.11 2006/12/31 17:24:22 m0gg Exp $
+* $Id: nanohttp-admin.c,v 1.12 2007/01/01 22:54:46 m0gg Exp $
*
* CSOAP Project: A SOAP client/server library in C
* Copyright (C) 2003 Ferhat Ayaz
@@ -68,9 +68,9 @@ _httpd_admin_send_title(httpd_conn_t *conn, const char *title)
"</style>");
http_output_stream_write_string(conn->out,
- "</head>"
- "<body>"
- "<span class=\"logo\">nhttpd</span> ");
+ "</head>"
+ "<body>"
+ "<span class=\"logo\">nhttpd</span> ");
http_output_stream_write_string(conn->out, title);
http_output_stream_write_string(conn->out, "<hr />");
@@ -80,7 +80,9 @@ _httpd_admin_send_title(httpd_conn_t *conn, const char *title)
static inline void
_httpd_admin_send_footer(httpd_conn_t *conn)
{
- http_output_stream_write_string(conn->out, "</body></html>");
+ http_output_stream_write_string(conn->out,
+ "</body>"
+ "</html>");
return;
}
diff --git a/nanohttp/nanohttp-client.c b/nanohttp/nanohttp-client.c
index 00bf7c7..472c58f 100644
--- a/nanohttp/nanohttp-client.c
+++ b/nanohttp/nanohttp-client.c
@@ -1,5 +1,5 @@
/******************************************************************
-* $Id: nanohttp-client.c,v 1.52 2007/01/01 15:29:48 m0gg Exp $
+* $Id: nanohttp-client.c,v 1.53 2007/01/01 22:54:46 m0gg Exp $
*
* CSOAP Project: A http client/server library in C
* Copyright (C) 2003 Ferhat Ayaz
@@ -390,7 +390,7 @@ _httpc_talk_to_server(hreq_method_t method, httpc_conn_t * conn, const char *url
httpc_set_header(conn, HEADER_HOST, conn->url->host);
ssl = conn->url->protocol == PROTOCOL_HTTPS ? 1 : 0;
- log_error4("ssl = %i (%i %i)", ssl, conn->url->protocol, PROTOCOL_HTTPS);
+ log_verbose4("ssl = %i (%i %i)", ssl, conn->url->protocol, PROTOCOL_HTTPS);
/* Open connection */
if ((status = hsocket_open(conn->sock, conn->url->host, conn->url->port, ssl)) != H_OK)
diff --git a/nanohttp/nanohttp-common.c b/nanohttp/nanohttp-common.c
index 9b5015e..de17bfe 100644
--- a/nanohttp/nanohttp-common.c
+++ b/nanohttp/nanohttp-common.c
@@ -1,5 +1,5 @@
/******************************************************************
-* $Id: nanohttp-common.c,v 1.37 2006/12/16 15:55:24 m0gg Exp $
+* $Id: nanohttp-common.c,v 1.38 2007/01/01 22:54:46 m0gg Exp $
*
* CSOAP Project: A http client/server library in C
* Copyright (C) 2003 Ferhat Ayaz
@@ -71,8 +71,7 @@ hpairnode_new(const char *key, const char *value, hpair_t * next)
if (key != NULL)
{
- pair->key = (char *) malloc(strlen(key) + 1);
- strcpy(pair->key, key);
+ pair->key = strdup(key);
}
else
{
@@ -81,8 +80,7 @@ hpairnode_new(const char *key, const char *value, hpair_t * next)
if (value != NULL)
{
- pair->value = (char *) malloc(strlen(value) + 1);
- strcpy(pair->value, value);
+ pair->value = strdup(value);
}
else
{
@@ -99,7 +97,6 @@ hpairnode_parse(const char *str, const char *delim, hpair_t * next)
{
hpair_t *pair;
char *key, *value;
- int c;
pair = (hpair_t *) malloc(sizeof(hpair_t));
pair->key = "";
@@ -110,19 +107,18 @@ hpairnode_parse(const char *str, const char *delim, hpair_t * next)
if (key != NULL)
{
- pair->key = (char *) malloc(strlen(key) + 1);
- strcpy(pair->key, key);
+ pair->key = strdup(key);
}
if (value != NULL)
{
- for (c = 0; value[c] == ' '; c++); /* skip white space */
- pair->value = (char *) malloc(strlen(&value[c]) + 1);
- strcpy(pair->value, &value[c]);
+ /* skip white space */
+ for (; *value == ' '; value++) ;
+
+ pair->value = strdup(value);
}
return pair;
}
-
hpair_t *
hpairnode_copy(const hpair_t * src)
{
diff --git a/nanohttp/nanohttp-server.c b/nanohttp/nanohttp-server.c
index 9e2af45..e7fe6d6 100644
--- a/nanohttp/nanohttp-server.c
+++ b/nanohttp/nanohttp-server.c
@@ -1,5 +1,5 @@
/******************************************************************
-* $Id: nanohttp-server.c,v 1.79 2007/01/01 15:29:48 m0gg Exp $
+* $Id: nanohttp-server.c,v 1.80 2007/01/01 22:54:46 m0gg Exp $
*
* CSOAP Project: A http client/server library in C
* Copyright (C) 2003 Ferhat Ayaz
@@ -549,18 +549,6 @@ _httpd_send_html_message(httpd_conn_t *conn, int reason, const char *phrase, con
}
herror_t
-httpd_send_internal_error(httpd_conn_t * conn, const char *msg)
-{
- return _httpd_send_html_message(conn, 500, HTTP_STATUS_500_REASON_PHRASE, msg);
-}
-
-herror_t
-httpd_send_not_implemented(httpd_conn_t *conn, const char *msg)
-{
- return _httpd_send_html_message(conn, 501, HTTP_STATUS_501_REASON_PHRASE, msg);
-}
-
-herror_t
httpd_send_bad_request(httpd_conn_t *conn, const char *msg)
{
return _httpd_send_html_message(conn, 400, HTTP_STATUS_400_REASON_PHRASE, msg);
@@ -577,6 +565,24 @@ httpd_send_unauthorized(httpd_conn_t *conn, const char *realm)
return _httpd_send_html_message(conn, 401, HTTP_STATUS_401_REASON_PHRASE, "Unauthorized request logged");
}
+herror_t
+httpd_send_not_found(httpd_conn_t *conn, const char *msg)
+{
+ return _httpd_send_html_message(conn, 404, HTTP_STATUS_404_REASON_PHRASE, msg);
+}
+
+herror_t
+httpd_send_internal_error(httpd_conn_t *conn, const char *msg)
+{
+ return _httpd_send_html_message(conn, 500, HTTP_STATUS_500_REASON_PHRASE, msg);
+}
+
+herror_t
+httpd_send_not_implemented(httpd_conn_t *conn, const char *msg)
+{
+ return _httpd_send_html_message(conn, 501, HTTP_STATUS_501_REASON_PHRASE, msg);
+}
+
static void
_httpd_request_print(struct hrequest_t * req)
{
diff --git a/nanohttp/nanohttp-server.h b/nanohttp/nanohttp-server.h
index 53eb4a8..71c0370 100644
--- a/nanohttp/nanohttp-server.h
+++ b/nanohttp/nanohttp-server.h
@@ -1,5 +1,5 @@
/******************************************************************
- * $Id: nanohttp-server.h,v 1.35 2007/01/01 18:58:05 m0gg Exp $
+ * $Id: nanohttp-server.h,v 1.36 2007/01/01 22:54:46 m0gg Exp $
*
* CSOAP Project: A http client/server library in C
* Copyright (C) 2003 Ferhat Ayaz
@@ -360,39 +360,48 @@ extern herror_t httpd_mime_end(httpd_conn_t * conn);
/**
*
- * Send a minimalistic HTML error document with HTTP status 500.
+ * Send a minimalistic HTML error document with HTTP status 400.
*
- * @see HTTP_STATUS_500_REASON_PHRASE
+ * @see HTTP_STATUS_400_REASON_PHRASE
*
*/
-extern herror_t httpd_send_internal_error(httpd_conn_t * conn, const char *msg);
+extern herror_t httpd_send_bad_request(httpd_conn_t *conn, const char *msg);
/**
*
- * Send a minimalistic HTML error document with HTTP status 501.
+ * Send a minimalistc HTML error document with HTTP status 401.
*
- * @see HTTP_STATUS_501_REASON_PHRASE
+ * @see HTTP_STATUS_401_REASON_PHRASE
*
*/
-extern herror_t httpd_send_not_implemented(httpd_conn_t *conn, const char *msg);
+extern herror_t httpd_send_unauthorized(httpd_conn_t *conn, const char *realm);
/**
*
* Send a minimalistic HTML error document with HTTP status 404.
*
- * @see HTTP_STATUS_401_REASON_PHRASE
+ * @see HTTP_STATUS_404_REASON_PHRASE
*
*/
-extern herror_t httpd_send_bad_request(httpd_conn_t *conn, const char *msg);
+extern herror_t httpd_send_not_found(httpd_conn_t *conn, const char *msg);
/**
*
- * Send a minimalistc HTML error document with HTTP status 401.
+ * Send a minimalistic HTML error document with HTTP status 500.
*
- * @see HTTP_STATUS_404_REASON_PHRASE
+ * @see HTTP_STATUS_500_REASON_PHRASE
*
*/
-extern herror_t httpd_send_unauthorized(httpd_conn_t *conn, const char *realm);
+extern herror_t httpd_send_internal_error(httpd_conn_t * conn, const char *msg);
+
+/**
+ *
+ * Send a minimalistic HTML error document with HTTP status 501.
+ *
+ * @see HTTP_STATUS_501_REASON_PHRASE
+ *
+ */
+extern herror_t httpd_send_not_implemented(httpd_conn_t *conn, const char *msg);
#ifdef __cplusplus
}