From 65985c4e6527c82a75367d9c5418b009dfbc6379 Mon Sep 17 00:00:00 2001 From: m0gg Date: Sun, 26 Nov 2006 20:13:05 +0000 Subject: soap.udp transport added (alpha) --- libcsoap/soap-transport.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) (limited to 'libcsoap/soap-transport.c') diff --git a/libcsoap/soap-transport.c b/libcsoap/soap-transport.c index 6b0444b..3cd46e8 100644 --- a/libcsoap/soap-transport.c +++ b/libcsoap/soap-transport.c @@ -1,5 +1,5 @@ /****************************************************************** -* $Id: soap-transport.c,v 1.4 2006/11/25 17:03:20 m0gg Exp $ +* $Id: soap-transport.c,v 1.5 2006/11/26 20:13:05 m0gg Exp $ * * CSOAP Project: A SOAP client/server library in C * Copyright (C) 2007 Heiko Ronsdorf @@ -33,6 +33,10 @@ #include #endif +#ifdef HAVE_UNISTD_H +#include +#endif + #include #include @@ -85,7 +89,7 @@ _soap_transport_new(const char *scheme, void *data, msg_exchange invoke) return ret; } -static void * +/* static void * _soap_transport_destroy(struct soap_transport *transport) { void *ret; @@ -98,8 +102,7 @@ _soap_transport_destroy(struct soap_transport *transport) free(transport); return ret; -} - +} */ herror_t soap_transport_process(struct SoapCtx *request, struct SoapCtx **response) @@ -181,15 +184,16 @@ soap_transport_server_run(void) { herror_t status; - if ((status = soap_nhttp_server_run()) != H_OK) + if ((status = soap_nudp_server_run_threaded()) != H_OK) { - log_error2("soap_nhttp_server_run failed (%s)", herror_message(status)); + log_error2("soap_nudp_server_run failed (%s)", herror_message(status)); return status; } - if ((status = soap_nudp_server_run()) != H_OK) + /* nanoHTTP blocks in this call */ + if ((status = soap_nhttp_server_run()) != H_OK) { - log_error2("soap_nudp_server_run failed (%s)", herror_message(status)); + log_error2("soap_nhttp_server_run failed (%s)", herror_message(status)); return status; } -- cgit v1.1-32-gdbae