From 3ad9ad0547145e25657660e3c1c92ffb6905d3dc Mon Sep 17 00:00:00 2001 From: rans Date: Thu, 26 Aug 2004 17:06:18 +0000 Subject: Soap library --- libcsoap/soap-fault.c | 188 +++++++++++++++++++++++++------------------------- 1 file changed, 94 insertions(+), 94 deletions(-) (limited to 'libcsoap/soap-fault.c') diff --git a/libcsoap/soap-fault.c b/libcsoap/soap-fault.c index dfb769e..b002ddc 100644 --- a/libcsoap/soap-fault.c +++ b/libcsoap/soap-fault.c @@ -1,29 +1,29 @@ /****************************************************************** - * $Id: soap-fault.c,v 1.2 2004/02/03 08:07:36 snowdrop Exp $ - * - * CSOAP Project: A SOAP client/server library in C - * Copyright (C) 2003 Ferhat Ayaz - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - * - * Email: ayaz@jprogrammer.net - ******************************************************************/ +* $Id: soap-fault.c,v 1.3 2004/08/26 17:06:18 rans Exp $ +* +* CSOAP Project: A SOAP client/server library in C +* Copyright (C) 2003 Ferhat Ayaz +* +* This library is free software; you can redistribute it and/or +* modify it under the terms of the GNU Library General Public +* License as published by the Free Software Foundation; either +* version 2 of the License, or (at your option) any later version. +* +* This library is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +* Library General Public License for more details. +* +* You should have received a copy of the GNU Library General Public +* License along with this library; if not, write to the +* Free Software Foundation, Inc., 59 Temple Place - Suite 330, +* Boston, MA 02111-1307, USA. +* +* Email: ayaz@jprogrammer.net +******************************************************************/ #include #include - +#include static char *soap_env_ns = "http://schemas.xmlsoap.org/soap/envelope/"; static char *soap_env_enc = "http://schemas.xmlsoap.org/soap/encoding/"; @@ -31,29 +31,29 @@ static char *soap_xsi_ns = "http://www.w3.org/1999/XMLSchema-instance"; static char *soap_xsd_ns = "http://www.w3.org/1999/XMLSchema"; /* - Parameters: - 1- soap_env_ns - 2- soap_env_enc - 3- xsi_ns - 4- xsd_ns - 5- faultcode - 6- faultstring - 7- faultactor - 8- detail - */ +Parameters: +1- soap_env_ns +2- soap_env_enc +3- xsi_ns +4- xsd_ns +5- faultcode +6- faultstring +7- faultactor +8- detail +*/ #define _SOAP_FAULT_TEMPLATE_ \ - "" \ - " "\ - " "\ - " %s"\ - " %s"\ - " %s"\ - " %s"\ - " " \ - " "\ - "" + "" \ + " "\ + " "\ + " %s"\ + " %s"\ + " %s"\ + " %s"\ + " " \ + " "\ + "" @@ -63,62 +63,62 @@ static char *fault_client = "Client"; static char *fault_server = "Server"; xmlDocPtr soap_fault_build(fault_code_t fcode, - const char *faultstring, - const char *faultactor, - const char *detail) + const char *faultstring, + const char *faultactor, + const char *detail) { - /* variables */ - char *faultcode; - int bufferlen = 2000; - char *buffer; - xmlDocPtr fault; /* result */ + /* variables */ + char *faultcode; + int bufferlen = 2000; + char *buffer; + xmlDocPtr fault; /* result */ - log_verbose1("Build fault"); + log_verbose1("Build fault"); - switch (fcode) { + switch (fcode) { case Fault_VersionMismatch: - faultcode = fault_vm; - break; + faultcode = fault_vm; + break; case Fault_MustUnderstand: - faultcode = fault_mu; - break; + faultcode = fault_mu; + break; case Fault_Client: - faultcode = fault_client; - break; + faultcode = fault_client; + break; case Fault_Server: - faultcode = fault_server; - break; + faultcode = fault_server; + break; default: - faultcode = fault_client; - } - - /* calculate buffer length */ - if (faultstring) bufferlen += strlen(faultstring); - if (faultactor) bufferlen += strlen(faultactor); - if (detail) bufferlen += strlen(detail); - - log_verbose2("Creating buffer with %d bytes", bufferlen); - buffer = (char*)malloc(bufferlen); - - sprintf(buffer, _SOAP_FAULT_TEMPLATE_, - soap_env_ns, soap_env_enc, soap_xsi_ns, - soap_xsd_ns, faultcode, - faultstring?faultstring:"error", - faultactor?faultactor:"", - detail?detail:""); - - fault = xmlParseDoc(buffer); - free(buffer); - - if (fault == NULL) { - log_error1("Can not create xml document!"); - - return soap_fault_build(fcode, "Can not create fault object in xml", - "soap_fault_build()", NULL); - } - - log_verbose2("Returning fault (%p)", fault); - return fault; - + faultcode = fault_client; + } + + /* calculate buffer length */ + if (faultstring) bufferlen += strlen(faultstring); + if (faultactor) bufferlen += strlen(faultactor); + if (detail) bufferlen += strlen(detail); + + log_verbose2("Creating buffer with %d bytes", bufferlen); + buffer = (char*)malloc(bufferlen); + + sprintf(buffer, _SOAP_FAULT_TEMPLATE_, + soap_env_ns, soap_env_enc, soap_xsi_ns, + soap_xsd_ns, faultcode, + faultstring?faultstring:"error", + faultactor?faultactor:"", + detail?detail:""); + + fault = xmlParseDoc((xmlChar *)buffer); + free(buffer); + + if (fault == NULL) { + log_error1("Can not create xml document!"); + + return soap_fault_build(fcode, "Can not create fault object in xml", + "soap_fault_build()", NULL); + } + + log_verbose2("Returning fault (%p)", fault); + return fault; + } -- cgit v1.1-32-gdbae