summaryrefslogtreecommitdiffstats
path: root/libcsoap/soap-admin.c
diff options
context:
space:
mode:
Diffstat (limited to 'libcsoap/soap-admin.c')
-rw-r--r--libcsoap/soap-admin.c48
1 files changed, 35 insertions, 13 deletions
diff --git a/libcsoap/soap-admin.c b/libcsoap/soap-admin.c
index 65e07c9..7b2c9e8 100644
--- a/libcsoap/soap-admin.c
+++ b/libcsoap/soap-admin.c
@@ -1,5 +1,5 @@
/******************************************************************
-* $Id: soap-admin.c,v 1.4 2006/05/15 06:45:07 m0gg Exp $
+* $Id: soap-admin.c,v 1.5 2006/11/19 09:40:14 m0gg Exp $
*
* CSOAP Project: A SOAP client/server library in C
* Copyright (C) 2003 Ferhat Ayaz
@@ -25,16 +25,29 @@
#include <config.h>
#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+
+#ifdef HAVE_STDIO_H
+#include <stdio.h>
+#endif
+
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+
+#include <nanohttp/nanohttp-common.h>
+#include <nanohttp/nanohttp-socket.h>
+#include <nanohttp/nanohttp-stream.h>
+#include <nanohttp/nanohttp-request.h>
#include <nanohttp/nanohttp-server.h>
+#include <nanohttp/nanohttp-admin.h>
#include "soap-router.h"
#include "soap-server.h"
#include "soap-admin.h"
-#define SOAP_ADMIN_QUERY_ROUTERS "routers"
-#define SOAP_ADMIN_QUERY_ROUTER "router"
-#define SOAP_ADMIN_QUERY_SERVICES "services"
-
static void
_soap_admin_send_title(httpd_conn_t *conn, const char *title)
{
@@ -52,6 +65,8 @@ _soap_admin_send_title(httpd_conn_t *conn, const char *title)
"</style></head><body><span class=\"logo\">csoap</span> ");
http_output_stream_write_string(conn->out, title);
http_output_stream_write_string(conn->out, "<hr />");
+
+ return;
}
@@ -66,13 +81,15 @@ _soap_admin_list_routers(httpd_conn_t *conn)
http_output_stream_write_string(conn->out, "<ul>");
for (node = soap_server_get_routers(); node; node = node->next)
{
- sprintf(buffer, "<li><a href=\"?" SOAP_ADMIN_QUERY_ROUTER "=%s\">%s</a> - <a href=\"%s\">[Service Description]</a></li>",
- node->context, node->context, node->context);
+ sprintf(buffer, "<li><a href=\"?" SOAP_ADMIN_QUERY_ROUTER "=%s\">%s</a> - <a href=\"%s\">[Service Description]</a> - <a href=\"../nhttp?" NHTTPD_ADMIN_QUERY_STATISTICS "=%s\">[Statistics]</a></li>",
+ node->context, node->context, node->context, node->context);
http_output_stream_write_string(conn->out, buffer);
}
http_output_stream_write_string(conn->out, "</ul>");
http_output_stream_write_string(conn->out, "</body></html>");
+
+ return;
}
@@ -108,6 +125,8 @@ _soap_admin_list_services(httpd_conn_t *conn, const char *routername)
http_output_stream_write_string(conn->out, "</ul>");
http_output_stream_write_string(conn->out, "</body></html>");
+
+ return;
}
@@ -128,13 +147,16 @@ _soap_admin_handle_get(httpd_conn_t * conn, hrequest_t * req)
{
_soap_admin_send_title(conn, "Welcome to the admin site");
- http_output_stream_write_string(conn->out, "<ul>");
http_output_stream_write_string(conn->out,
- "<li><a href=\"?" SOAP_ADMIN_QUERY_ROUTERS "\">Routers</a></li>");
- http_output_stream_write_string(conn->out, "</ul>");
+ "<ul>"
+ "<li><a href=\"?" SOAP_ADMIN_QUERY_ROUTERS "\">Routers</a></li>"
+ "<li><a href=\"../nhttp\">nanoHTTP</a></li>"
+ "</ul>");
http_output_stream_write_string(conn->out, "</body></html>");
}
+
+ return;
}
@@ -151,21 +173,21 @@ _soap_admin_entry(httpd_conn_t * conn, hrequest_t * req)
http_output_stream_write_string(conn->out,
"<html>"
"<head>"
- "</head>"
- "<body>"
+ "</head>"
+ "<body>"
"<h1>Sorry!</h1>"
"<hr />"
"<div>POST Service is not implemented now. Use your browser</div>"
"</body>"
"</html>");
}
+ return;
}
herror_t
soap_admin_init_args(int argc, char **argv)
{
-
int i;
for (i=0; i<argc; i++) {