|  | Home | Documentation | SOAP_MACRO run-time error codes updated Sat Apr 25 2026 by Robert van Engelen |

- Main Page
- Modules
- Classes
- Files

Macros | Typedefs
SOAP_MACRO run-time error codes

This module describes the `SOAP_MACRO` run-time `soap_status` error codes returned by functions and stored in `soap::error` More...

## Macros
#define | SOAP_OK
| The `soap_status` code for no error (zero) More...
#define | SOAP_CLI_FAULT
| A `soap_status` error code: the service returned a SOAP 1.1 client fault / SOAP 1.2 sender fault to the client. More...
#define | SOAP_DATAENCODINGUNKNOWN
| A `soap_status` error code: SOAP 1.2 DataEncodingUnknown fault (unused in practice) More...
#define | SOAP_DIME_ERROR
| A `soap_status` error code: DIME formatting error or DIME attachment size exceeds `SOAP_MAXDIMESIZE` More...
#define | SOAP_DIME_HREF
| A `soap_status` error code: DIME attachment has no href from SOAP body and no DIME callbacks were defined to save the attachment. More...
#define | SOAP_DIME_MISMATCH
| A `soap_status` error code: DIME version error. More...
#define | SOAP_DIME_END
| A `soap_status` error code: end of DIME attachments protocol error. More...
#define | SOAP_DUPLICATE_ID
| A `soap_status` error code: XML element has duplicate id attribute value (applicable to SOAP multi-ref encoding and `SOAP_XML_GRAPH` serialization) More...
#define | SOAP_EMPTY
| A `soap_status` error code: XML element or attribute is empty when a value is required. More...
#define | SOAP_END_TAG
| A `soap_status` error code: XML ending tag found when none was expected. More...
#define | SOAP_EOF
| A `soap_status` error code: unexpected end of file, no input, transmission interrupted or timed out (same value as EOF) More...
#define | SOAP_EOM
| A `soap_status` error code: out of memory. More...
#define | SOAP_ERR
| A `soap_status` error code: an unspecified error occurred. More...
#define | SOAP_FAULT
| A `soap_status` error code: the fault code to be returned by a service operation when calling `soap_sender_fault` (client is at fault) or `soap_receiver_fault` (server is at fault), and when received, clients set the `soap::error` code to `SOAP_CLI_FAULT` or `SOAP_SVR_FAULT` respectively. More...
#define | SOAP_FD_EXCEEDED
| A `soap_status` error code: too many open sockets. More...
#define | SOAP_FIXED
| A `soap_status` error code: XML element or attribute value is fixed and the parsed value does not match the fixed value. More...
#define | SOAP_GET_METHOD
| A `soap_status` error code: an HTTP GET request was received by the service but the GET request callback `soap::fget` is not implemented. More...
#define | SOAP_PUT_METHOD
| A `soap_status` error code: an HTTP PUT request was received by the service but the PUT request callback `soap::fput` is not implemented. More...
#define | SOAP_PUT_METHOD
| A `soap_status` error code: an HTTP PUT request was received by the service but the PUT request callback `soap::fput` is not implemented. More...
#define | SOAP_PATCH_METHOD
| A `soap_status` error code: an HTTP PATCH request was received by the service but the PATCH request callback `soap::fpatch` is not implemented. More...
#define | SOAP_DEL_METHOD
| A `soap_status` error code: an HTTP DELETE request was received by the service but the DELETE request callback `soap::fdel` is not implemented. More...
#define | SOAP_HTTP_METHOD
| A `soap_status` error code: an HTTP request was received by the service that cannot be handled. More...
#define | SOAP_HDR
| A `soap_status` error code: HTTP header line is too long, exceeding `SOAP_HDRLEN` size. More...
#define | SOAP_HREF
| A `soap_status` error code: reference to object in XML identified by its id attribute is incompatible with the object refered to by the ref or href attribute (applicable to SOAP multi-ref encoding and `SOAP_XML_GRAPH` serialization) More...
#define | SOAP_HTTP_ERROR
| A `soap_status` error code: an unspecified HTTP error occured. More...
#define | SOAP_IOB
| A `soap_status` error code: SOAP array index out of bounds. More...
#define | SOAP_LENGTH
| A `soap_status` error code: XML element or attribute value length validation error or `SOAP_MAXLENGTH` exceeded. More...
#define | SOAP_LEVEL
| A `soap_status` error code: XML nesting depth level when parsing XML exceeds `SOAP_MAXLEVEL` More...
#define | SOAP_MIME_END
| A `soap_status` error code: end of MIME/MTOM attachments protocol error. More...
#define | SOAP_MIME_ERROR
| A `soap_status` error code: MIME/MTOM attachment parsing error. More...
#define | SOAP_MIME_HREF
| A `soap_status` error code: MIME/MTOM attachment has no href from SOAP body and no MIME callbacks were defined to save the attachment. More...
#define | SOAP_MISSING_ID
| A `soap_status` error code: an XML element with id attribute is missing that should match the element with href/ref attribute (applicable to SOAP multi-ref encoding and `SOAP_XML_GRAPH` serialization) More...
#define | SOAP_MOE
| A `soap_status` error code: heap memory overflow or corruption error, which can never happen in gSOAP unless the application code itself caused memory instability e.g. the heap is trashed. More...
#define | SOAP_MUSTUNDERSTAND
| A `soap_status` error code: an XML element is present with a mustUnderstand attribute which must be understood but is not deserialized. More...
#define | SOAP_NAMESPACE
| A `soap_status` error code: XML namespace name mismatch validation error. More...
#define | SOAP_NO_DATA
| A `soap_status` error code: no data in the HTTP body of the message received. More...
#define | SOAP_NO_METHOD
| A `soap_status` error code: the service request dispatcher did not find a matching service operation for a service request. More...
#define | SOAP_NO_TAG
| A `soap_status` error code: no XML element tag was found when one was expected. More...
#define | SOAP_NTLM_ERROR
| A `soap_status` error code: an NTLM authentication handshake error occured. More...
#define | SOAP_NULL
| A `soap_status` error code: XML element has an `xsi:nil` attribute when the element is not nillable, causing a validation error. More...
#define | SOAP_OCCURS
| A `soap_status` error code: XML element has a minOccurs or maxOccurs constraint validation error or `SOAP_MAXOCCURS` was exceeded. More...
#define | SOAP_PATTERN
| A `soap_status` error code: XML element or attribute value pattern mismatch causes a validation error. More...
#define | SOAP_PLUGIN_ERROR
| A `soap_status` error code: failed to register plugin. More...
#define | SOAP_PROHIBITED
| A `soap_status` error code: attribute is prohibited but present. More...
#define | SOAP_REQUIRED
| A `soap_status` error code: attribute is required but not present. More...
#define | SOAP_SSL_ERROR
| A `soap_status` error code: an SSL error occured. More...
#define | SOAP_SVR_FAULT
| A `soap_status` error code: service returned a SOAP 1.1 server fault / SOAP 1.2 receiver fault to the client. More...
#define | SOAP_SYNTAX_ERROR
| A `soap_status` error code: an XML syntax error occurred while parsing the input. More...
#define | SOAP_TAG_MISMATCH
| A `soap_status` error code: XML element tag parsed does not match anything that is expected. More...
#define | SOAP_TCP_ERROR
| A `soap_status` error code: a TCP/IP connection error occured. More...
#define | SOAP_TYPE
| A `soap_status` error code: XML element or attribute has a mismatching type or value that is causing a validation error. More...
#define | SOAP_UDP_ERROR
| A `soap_status` error code: a UDP/IP connection error occured or the message too large to store in a UDP packet. More...
#define | SOAP_USER_ERROR
| A `soap_status` error code: soap::user not set to non-NULL. More...
#define | SOAP_UTF_ERROR
| A `soap_status` error code: a UTF-8 decoding error occured. More...
#define | SOAP_VERSIONMISMATCH
| A `soap_status` error code: SOAP version mismatch or no SOAP message is received. More...
#define | SOAP_ZLIB_ERROR
| A `soap_status` error code: a zlib error occured. More...
#define | soap_xml_error_check(e)
| Check for XML parsing and validation errors, returns true if the specified error code is an XML error. More...
#define | soap_soap_error_check(e)
| Check for SOAP protocol faults and errors, returns true if the specified error code is a SOAP protocol error. More...
#define | soap_http_error_check(e)
| Check for HTTP protocol errors, returns true if the specified error code is an HTTP protocol error or an HTTP status code between 100 and 599 returned by an HTTP server, but note that HTTP status 100 to 202 should not be considered errors but informative codes. More...
#define | soap_dime_error_check(e)
| Check for DIME protocol errors, returns true if the specified `soap_status` error code is a DIME protocol error. More...
#define | soap_mime_error_check(e)
| Check for MIME/MTOM protocol errors, returns true if the specified `soap_status` error code is a MIME/MTOM protocol error. More...
#define | soap_tcp_error_check(e) ((e) == SOAP_EOF || (e) == SOAP_TCP_ERROR)
| Check for TCP protocol errors, returns true if the specified error code is a TCP error, when true use `soap::errnum` to retrieve the `errno` value of the failure to determine the cause. More...
#define | soap_udp_error_check(e) ((e) == SOAP_EOF || (e) == SOAP_UDP_ERROR)
| Check for UDP protocol errors, returns true if the specified error code is a UDP error, when true use `soap::errnum` to retrieve the `errno` value of the failure to determine the cause. More...
#define | soap_ssl_error_check(e) ((e) == SOAP_SSL_ERROR)
| Check for SSL/TLS protocol errors, returns true if the specified error code is a SSL/TLS error, when true use `soap::errnum` to retrieve the `errno` value of the failure to determine the cause. More...
#define | soap_zlib_error_check(e) ((e) == SOAP_ZLIB_ERROR)
| Check for zlib library errors, returns true if the specified error code is a zlib error. More...
#define | SOAP_STOP
| An internal `soap_status` error code to signal that an HTTP response must not be produced. More...
#define | SOAP_FORM
| An internal `soap_status` error code to signal that an HTTP form is present and no HTTP response must be produced. More...

## Typedefs
typedef int | soap_status
| Status and error codes are int values, a zero value or `SOAP_OK` (0) means no error, nonzero means error. More...

## Detailed Description

This module describes the `SOAP_MACRO` run-time `soap_status` error codes returned by functions and stored in `soap::error`

## Macro Definition Documentation

#define SOAP_CLI_FAULT

A `soap_status` error code: the service returned a SOAP 1.1 client fault / SOAP 1.2 sender fault to the client.

The `soap::fault` is non-NULL and points to a `SOAP_ENV__Fault` structure. Use `soap_fault_string`, `soap_fault_subcode` and `soap_fault_detail` to extract the SOAP Fault string/reason, subcode and the detail XML string (when non-NULL).

Example:

#include "soapH.h"
struct soap *soap = soap_new();
... // call a Web service here
if (soap->error == SOAP_CLI_FAULT)
{
// The server responded with a SOAP 1.1 client fault / SOAP 1.2 sender fault
const char *s = soap_fault_string(soap);
const char *d = soap_fault_detail(soap);
printf("Client fault: %s detail: %s\n", s, d ? d : "(none)");
}

This error code is also caught by `soap_soap_error_check`.

#define SOAP_DATAENCODINGUNKNOWN

A `soap_status` error code: SOAP 1.2 DataEncodingUnknown fault (unused in practice)

This error code is also caught by `soap_soap_error_check`.

#define SOAP_DEL_METHOD

A `soap_status` error code: an HTTP DELETE request was received by the service but the DELETE request callback `soap::fdel` is not implemented.

This error code is also caught by `soap_http_error_check`.

See also
  `soap::fdel`.

#define SOAP_DIME_END

A `soap_status` error code: end of DIME attachments protocol error.

This error code is also caught by `soap_dime_error_check`.

#define SOAP_DIME_ERROR

A `soap_status` error code: DIME formatting error or DIME attachment size exceeds `SOAP_MAXDIMESIZE`

This error code is also caught by `soap_dime_error_check`.

#define soap_dime_error_check | ( |  | e | ) |

Value:
((e) == SOAP_DIME_ERROR || \
(e) == SOAP_DIME_HREF || \
(e) == SOAP_DIME_MISMATCH || \
(e) == SOAP_DIME_END)
SOAP_DIME_ERROR
#define SOAP_DIME_ERROR
A soap_status error code: DIME formatting error or DIME attachment size exceeds SOAP_MAXDIMESIZE ...
Definition: stdsoap2.h:2428
SOAP_DIME_END
#define SOAP_DIME_END
A soap_status error code: end of DIME attachments protocol error.
Definition: stdsoap2.h:2446
SOAP_DIME_HREF
#define SOAP_DIME_HREF
A soap_status error code: DIME attachment has no href from SOAP body and no DIME callbacks were defin...
Definition: stdsoap2.h:2434
SOAP_DIME_MISMATCH
#define SOAP_DIME_MISMATCH
A soap_status error code: DIME version error.
Definition: stdsoap2.h:2440

Check for DIME protocol errors, returns true if the specified `soap_status` error code is a DIME protocol error.

#define SOAP_DIME_HREF

A `soap_status` error code: DIME attachment has no href from SOAP body and no DIME callbacks were defined to save the attachment.

This error code is also caught by `soap_dime_error_check`.

#define SOAP_DIME_MISMATCH

A `soap_status` error code: DIME version error.

This error code is also caught by `soap_dime_error_check`.

#define SOAP_DUPLICATE_ID

A `soap_status` error code: XML element has duplicate id attribute value (applicable to SOAP multi-ref encoding and `SOAP_XML_GRAPH` serialization)

This error code is also caught by `soap_xml_error_check`.

#define SOAP_EMPTY

A `soap_status` error code: XML element or attribute is empty when a value is required.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_END_TAG

A `soap_status` error code: XML ending tag found when none was expected.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_EOF

A `soap_status` error code: unexpected end of file, no input, transmission interrupted or timed out (same value as EOF)

The `SOAP_EOF` error indicates a transmission error. Use `soap::errnum` to determine the source of the error, which is set to the value of `errno` of the failure when the error occurred. When a transmission timeout occurred, because `soap::recv_timeout` and/or `soap::send_timeout` are nonzero, the value of `soap::errnum` was set to zero to distinguish timeouts from errors.

Example:

#include "soapH.h"
struct soap *soap = soap_new();
... // call a Web service here
if (soap->error == SOAP_EOF)
{
if (soap->errnum)
printf("A transmission error occurred: %s\n", strerror_r(soap->errnum, soap->msgbuf, sizeof(soap->msgbuf)));
else
printf("A transmission timeout occurred\n");
}

This error code is also caught by `soap_tcp_error_check` and by `soap_udp_error_check`.

#define SOAP_EOM

A `soap_status` error code: out of memory.

This error indicates that a dynamic memory allocation request failed. The engine does not raise C++ exceptions when allocating memory for objects, but `SOAP_EOM` is returned (from a function) instead and `soap::error` is set to `SOAP_EOM`. It is possible to enable C++ exceptions without detrimental effects by compiling the source code with `SOAP_NOTHROW` set to an empty value and in that case C++ exception handlers should be used to catch `std::bad_alloc`.

#define SOAP_ERR

A `soap_status` error code: an unspecified error occurred.

#define SOAP_FAULT

A `soap_status` error code: the fault code to be returned by a service operation when calling `soap_sender_fault` (client is at fault) or `soap_receiver_fault` (server is at fault), and when received, clients set the `soap::error` code to `SOAP_CLI_FAULT` or `SOAP_SVR_FAULT` respectively.

This error code is also caught by `soap_soap_error_check`.

#define SOAP_FD_EXCEEDED

A `soap_status` error code: too many open sockets.

#define SOAP_FIXED

A `soap_status` error code: XML element or attribute value is fixed and the parsed value does not match the fixed value.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_FORM

An internal `soap_status` error code to signal that an HTTP form is present and no HTTP response must be produced.

#define SOAP_GET_METHOD

A `soap_status` error code: an HTTP GET request was received by the service but the GET request callback `soap::fget` is not implemented.

This error code is also caught by `soap_http_error_check`.

See also
  `soap::fget`.

#define SOAP_HDR

A `soap_status` error code: HTTP header line is too long, exceeding `SOAP_HDRLEN` size.

#define SOAP_HREF

A `soap_status` error code: reference to object in XML identified by its id attribute is incompatible with the object refered to by the ref or href attribute (applicable to SOAP multi-ref encoding and `SOAP_XML_GRAPH` serialization)

This error code is also caught by `soap_xml_error_check`.

#define SOAP_HTTP_ERROR

A `soap_status` error code: an unspecified HTTP error occured.

This error code is also caught by `soap_http_error_check`.

#define soap_http_error_check | ( |  | e | ) |

Value:
((e) == SOAP_HTTP_ERROR || \
(e) == SOAP_NO_DATA || \
((e) >= SOAP_GET_METHOD && (e) <= SOAP_HTTP_METHOD) || \
((e) >= 100 && (e) < 600))
SOAP_GET_METHOD
#define SOAP_GET_METHOD
A soap_status error code: an HTTP GET request was received by the service but the GET request callbac...
Definition: stdsoap2.h:2520
SOAP_HTTP_METHOD
#define SOAP_HTTP_METHOD
A soap_status error code: an HTTP request was received by the service that cannot be handled...
Definition: stdsoap2.h:2547
SOAP_NO_DATA
#define SOAP_NO_DATA
A soap_status error code: no data in the HTTP body of the message received.
Definition: stdsoap2.h:2622
SOAP_HTTP_ERROR
#define SOAP_HTTP_ERROR
A soap_status error code: an unspecified HTTP error occured.
Definition: stdsoap2.h:2562

Check for HTTP protocol errors, returns true if the specified error code is an HTTP protocol error or an HTTP status code between 100 and 599 returned by an HTTP server, but note that HTTP status 100 to 202 should not be considered errors but informative codes.

#define SOAP_HTTP_METHOD

A `soap_status` error code: an HTTP request was received by the service that cannot be handled.

#define SOAP_IOB

A `soap_status` error code: SOAP array index out of bounds.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_LENGTH

A `soap_status` error code: XML element or attribute value length validation error or `SOAP_MAXLENGTH` exceeded.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_LEVEL

A `soap_status` error code: XML nesting depth level when parsing XML exceeds `SOAP_MAXLEVEL`

This error code is also caught by `soap_xml_error_check`.

#define SOAP_MIME_END

A `soap_status` error code: end of MIME/MTOM attachments protocol error.

This error code is also caught by `soap_mime_error_check`.

#define SOAP_MIME_ERROR

A `soap_status` error code: MIME/MTOM attachment parsing error.

This error code is also caught by `soap_mime_error_check`.

#define soap_mime_error_check | ( |  | e | ) |

Value:
((e) == SOAP_MIME_ERROR || \
(e) == SOAP_MIME_HREF || \
(e) == SOAP_MIME_END)
SOAP_MIME_HREF
#define SOAP_MIME_HREF
A soap_status error code: MIME/MTOM attachment has no href from SOAP body and no MIME callbacks were ...
Definition: stdsoap2.h:2598
SOAP_MIME_END
#define SOAP_MIME_END
A soap_status error code: end of MIME/MTOM attachments protocol error.
Definition: stdsoap2.h:2586
SOAP_MIME_ERROR
#define SOAP_MIME_ERROR
A soap_status error code: MIME/MTOM attachment parsing error.
Definition: stdsoap2.h:2592

Check for MIME/MTOM protocol errors, returns true if the specified `soap_status` error code is a MIME/MTOM protocol error.

#define SOAP_MIME_HREF

A `soap_status` error code: MIME/MTOM attachment has no href from SOAP body and no MIME callbacks were defined to save the attachment.

This error code is also caught by `soap_mime_error_check`.

#define SOAP_MISSING_ID

A `soap_status` error code: an XML element with id attribute is missing that should match the element with href/ref attribute (applicable to SOAP multi-ref encoding and `SOAP_XML_GRAPH` serialization)

This error code is also caught by `soap_xml_error_check`.

#define SOAP_MOE

A `soap_status` error code: heap memory overflow or corruption error, which can never happen in gSOAP unless the application code itself caused memory instability e.g. the heap is trashed.

#define SOAP_MUSTUNDERSTAND

A `soap_status` error code: an XML element is present with a mustUnderstand attribute which must be understood but is not deserialized.

This error code is also caught by `soap_soap_error_check`.

#define SOAP_NAMESPACE

A `soap_status` error code: XML namespace name mismatch validation error.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_NO_DATA

A `soap_status` error code: no data in the HTTP body of the message received.

#define SOAP_NO_METHOD

A `soap_status` error code: the service request dispatcher did not find a matching service operation for a service request.

This error code is also caught by `soap_soap_error_check`.

#define SOAP_NO_TAG

A `soap_status` error code: no XML element tag was found when one was expected.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_NTLM_ERROR

A `soap_status` error code: an NTLM authentication handshake error occured.

#define SOAP_NULL

A `soap_status` error code: XML element has an `xsi:nil` attribute when the element is not nillable, causing a validation error.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_OCCURS

A `soap_status` error code: XML element has a minOccurs or maxOccurs constraint validation error or `SOAP_MAXOCCURS` was exceeded.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_OK

The `soap_status` code for no error (zero)

#define SOAP_PATCH_METHOD

A `soap_status` error code: an HTTP PATCH request was received by the service but the PATCH request callback `soap::fpatch` is not implemented.

This error code is also caught by `soap_http_error_check`.

See also
  `soap::fpatch`.

#define SOAP_PATTERN

A `soap_status` error code: XML element or attribute value pattern mismatch causes a validation error.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_PLUGIN_ERROR

A `soap_status` error code: failed to register plugin.

#define SOAP_PROHIBITED

A `soap_status` error code: attribute is prohibited but present.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_PUT_METHOD

A `soap_status` error code: an HTTP PUT request was received by the service but the PUT request callback `soap::fput` is not implemented.

This error code is also caught by `soap_http_error_check`.

See also
  `soap::fput`.

This error code is also caught by `soap_http_error_check`.

#define SOAP_PUT_METHOD

A `soap_status` error code: an HTTP PUT request was received by the service but the PUT request callback `soap::fput` is not implemented.

This error code is also caught by `soap_http_error_check`.

See also
  `soap::fput`.

This error code is also caught by `soap_http_error_check`.

#define SOAP_REQUIRED

A `soap_status` error code: attribute is required but not present.

This error code is also caught by `soap_xml_error_check`.

#define soap_soap_error_check | ( |  | e | ) |

Value:
((e) == SOAP_CLI_FAULT || \
(e) == SOAP_SVR_FAULT || \
(e) == SOAP_VERSIONMISMATCH || \
(e) == SOAP_MUSTUNDERSTAND || \
(e) == SOAP_FAULT || \
(e) == SOAP_NO_METHOD || \
(e) == SOAP_DATAENCODINGUNKNOWN)
SOAP_SVR_FAULT
#define SOAP_SVR_FAULT
A soap_status error code: service returned a SOAP 1.1 server fault / SOAP 1.2 receiver fault to the c...
Definition: stdsoap2.h:2706
SOAP_CLI_FAULT
#define SOAP_CLI_FAULT
A soap_status error code: the service returned a SOAP 1.1 client fault / SOAP 1.2 sender fault to the...
Definition: stdsoap2.h:2416
SOAP_NO_METHOD
#define SOAP_NO_METHOD
A soap_status error code: the service request dispatcher did not find a matching service operation fo...
Definition: stdsoap2.h:2628
SOAP_FAULT
#define SOAP_FAULT
A soap_status error code: the fault code to be returned by a service operation when calling soap_send...
Definition: stdsoap2.h:2503
SOAP_VERSIONMISMATCH
#define SOAP_VERSIONMISMATCH
A soap_status error code: SOAP version mismatch or no SOAP message is received.
Definition: stdsoap2.h:2751
SOAP_MUSTUNDERSTAND
#define SOAP_MUSTUNDERSTAND
A soap_status error code: an XML element is present with a mustUnderstand attribute which must be und...
Definition: stdsoap2.h:2613
SOAP_DATAENCODINGUNKNOWN
#define SOAP_DATAENCODINGUNKNOWN
A soap_status error code: SOAP 1.2 DataEncodingUnknown fault (unused in practice) ...
Definition: stdsoap2.h:2422

Check for SOAP protocol faults and errors, returns true if the specified error code is a SOAP protocol error.

#define SOAP_SSL_ERROR

A `soap_status` error code: an SSL error occured.

This error code is also caught by `soap_ssl_error_check`.

#define soap_ssl_error_check | ( |  | e | ) | ((e) == SOAP_SSL_ERROR)

Check for SSL/TLS protocol errors, returns true if the specified error code is a SSL/TLS error, when true use `soap::errnum` to retrieve the `errno` value of the failure to determine the cause.

#define SOAP_STOP

An internal `soap_status` error code to signal that an HTTP response must not be produced.

#define SOAP_SVR_FAULT

A `soap_status` error code: service returned a SOAP 1.1 server fault / SOAP 1.2 receiver fault to the client.

The `soap::fault` is non-NULL and points to a `SOAP_ENV__Fault` structure. Use `soap_fault_string`, `soap_fault_subcode` and `soap_fault_detail` to extract the SOAP Fault string/reason, subcode and the detail XML string (when non-NULL).

Example:

#include "soapH.h"
struct soap *soap = soap_new();
... // call a Web service here
if (soap->error == SOAP_SVR_FAULT)
{
// The server responded with a SOAP 1.1 server fault / SOAP 1.2 receiver fault
const char *s = soap_fault_string(soap);
const char *d = soap_fault_detail(soap);
printf("Server fault: %s detail: %s\n", s, d ? d : "(none)");
}

This error code is also caught by `soap_soap_error_check`.

#define SOAP_SYNTAX_ERROR

A `soap_status` error code: an XML syntax error occurred while parsing the input.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_TAG_MISMATCH

A `soap_status` error code: XML element tag parsed does not match anything that is expected.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_TCP_ERROR

A `soap_status` error code: a TCP/IP connection error occured.

This error code is also caught by `soap_tcp_error_check`.

#define soap_tcp_error_check | ( |  | e | ) | ((e) == SOAP_EOF || (e) == SOAP_TCP_ERROR)

Check for TCP protocol errors, returns true if the specified error code is a TCP error, when true use `soap::errnum` to retrieve the `errno` value of the failure to determine the cause.

#define SOAP_TYPE

A `soap_status` error code: XML element or attribute has a mismatching type or value that is causing a validation error.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_UDP_ERROR

A `soap_status` error code: a UDP/IP connection error occured or the message too large to store in a UDP packet.

This error code is also caught by `soap_udp_error_check`.

#define soap_udp_error_check | ( |  | e | ) | ((e) == SOAP_EOF || (e) == SOAP_UDP_ERROR)

Check for UDP protocol errors, returns true if the specified error code is a UDP error, when true use `soap::errnum` to retrieve the `errno` value of the failure to determine the cause.

#define SOAP_USER_ERROR

A `soap_status` error code: soap::user not set to non-NULL.

#define SOAP_UTF_ERROR

A `soap_status` error code: a UTF-8 decoding error occured.

This error code is also caught by `soap_xml_error_check`.

#define SOAP_VERSIONMISMATCH

A `soap_status` error code: SOAP version mismatch or no SOAP message is received.

This error code is also caught by `soap_soap_error_check`.

#define soap_xml_error_check | ( |  | e | ) |

Value:
((e) == SOAP_TAG_MISMATCH || \
(e) == SOAP_NO_TAG || \
(e) == SOAP_IOB || \
(e) == SOAP_SYNTAX_ERROR || \
(e) == SOAP_NAMESPACE || \
(e) == SOAP_TYPE || \
(e) == SOAP_DUPLICATE_ID || \
(e) == SOAP_MISSING_ID || \
(e) == SOAP_REQUIRED || \
(e) == SOAP_PROHIBITED || \
(e) == SOAP_OCCURS || \
(e) == SOAP_LENGTH || \
(e) == SOAP_LEVEL || \
(e) == SOAP_PATTERN || \
(e) == SOAP_NULL || \
(e) == SOAP_HREF || \
(e) == SOAP_FIXED || \
(e) == SOAP_EMPTY || \
(e) == SOAP_END_TAG || \
(e) == SOAP_UTF_ERROR)
SOAP_END_TAG
#define SOAP_END_TAG
A soap_status error code: XML ending tag found when none was expected.
Definition: stdsoap2.h:2464
SOAP_HREF
#define SOAP_HREF
A soap_status error code: reference to object in XML identified by its id attribute is incompatible w...
Definition: stdsoap2.h:2556
SOAP_PROHIBITED
#define SOAP_PROHIBITED
A soap_status error code: attribute is prohibited but present.
Definition: stdsoap2.h:2664
SOAP_LEVEL
#define SOAP_LEVEL
A soap_status error code: XML nesting depth level when parsing XML exceeds SOAP_MAXLEVEL ...
Definition: stdsoap2.h:2580
SOAP_LENGTH
#define SOAP_LENGTH
A soap_status error code: XML element or attribute value length validation error or SOAP_MAXLENGTH ex...
Definition: stdsoap2.h:2574
SOAP_EMPTY
#define SOAP_EMPTY
A soap_status error code: XML element or attribute is empty when a value is required.
Definition: stdsoap2.h:2458
SOAP_TYPE
#define SOAP_TYPE
A soap_status error code: XML element or attribute has a mismatching type or value that is causing a ...
Definition: stdsoap2.h:2730
SOAP_OCCURS
#define SOAP_OCCURS
A soap_status error code: XML element has a minOccurs or maxOccurs constraint validation error or SOA...
Definition: stdsoap2.h:2649
SOAP_SYNTAX_ERROR
#define SOAP_SYNTAX_ERROR
A soap_status error code: an XML syntax error occurred while parsing the input.
Definition: stdsoap2.h:2712
SOAP_UTF_ERROR
#define SOAP_UTF_ERROR
A soap_status error code: a UTF-8 decoding error occured.
Definition: stdsoap2.h:2745
SOAP_REQUIRED
#define SOAP_REQUIRED
A soap_status error code: attribute is required but not present.
Definition: stdsoap2.h:2676
SOAP_MISSING_ID
#define SOAP_MISSING_ID
A soap_status error code: an XML element with id attribute is missing that should match the element w...
Definition: stdsoap2.h:2604
SOAP_FIXED
#define SOAP_FIXED
A soap_status error code: XML element or attribute value is fixed and the parsed value does not match...
Definition: stdsoap2.h:2512
SOAP_NO_TAG
#define SOAP_NO_TAG
A soap_status error code: no XML element tag was found when one was expected.
Definition: stdsoap2.h:2634
SOAP_TAG_MISMATCH
#define SOAP_TAG_MISMATCH
A soap_status error code: XML element tag parsed does not match anything that is expected.
Definition: stdsoap2.h:2718
SOAP_PATTERN
#define SOAP_PATTERN
A soap_status error code: XML element or attribute value pattern mismatch causes a validation error...
Definition: stdsoap2.h:2655
SOAP_NULL
#define SOAP_NULL
A soap_status error code: XML element has an xsi:nil attribute when the element is not nillable...
Definition: stdsoap2.h:2643
SOAP_DUPLICATE_ID
#define SOAP_DUPLICATE_ID
A soap_status error code: XML element has duplicate id attribute value (applicable to SOAP multi-ref ...
Definition: stdsoap2.h:2452
SOAP_IOB
#define SOAP_IOB
A soap_status error code: SOAP array index out of bounds.
Definition: stdsoap2.h:2568
SOAP_NAMESPACE
#define SOAP_NAMESPACE
A soap_status error code: XML namespace name mismatch validation error.
Definition: stdsoap2.h:2619

Check for XML parsing and validation errors, returns true if the specified error code is an XML error.

#define SOAP_ZLIB_ERROR

A `soap_status` error code: a zlib error occured.

This error code is also caught by `soap_zlib_error_check`.

#define soap_zlib_error_check | ( |  | e | ) | ((e) == SOAP_ZLIB_ERROR)

Check for zlib library errors, returns true if the specified error code is a zlib error.

## Typedef Documentation

typedef int soap_status

Status and error codes are int values, a zero value or `SOAP_OK` (0) means no error, nonzero means error.

The `SOAP_OK` (zero) and nonzero error codes are returned by functions and are also stored in `soap::error` (`soap::errnum` stores the value of errno for system-related errors). A nonzero error code is one of the following error codes or a HTTP error code between 100 and 599 returned by the server when a client connects: `SOAP_CLI_FAULT` `SOAP_DATAENCODINGUNKNOWN` `SOAP_DEL_METHOD` `SOAP_DIME_END` `SOAP_DIME_ERROR` `SOAP_DIME_HREF` `SOAP_DIME_MISMATCH` `SOAP_DUPLICATE_ID` `SOAP_EMPTY` `SOAP_END_TAG` `SOAP_EOF` (same as EOF) `SOAP_EOM` `SOAP_ERR` (same as EOF) `SOAP_FAULT` `SOAP_FD_EXCEEDED` `SOAP_FIXED` `SOAP_GET_METHOD` `SOAP_HDR` `SOAP_HREF` `SOAP_HTTP_ERROR` `SOAP_HTTP_METHOD` `SOAP_IOB` `SOAP_LENGTH` `SOAP_LEVEL` `SOAP_MIME_END` `SOAP_MIME_ERROR` `SOAP_MIME_HREF` `SOAP_MISSING_ID` `SOAP_MOE` `SOAP_MUSTUNDERSTAND` `SOAP_NAMESPACE` `SOAP_NO_DATA` `SOAP_NO_METHOD` `SOAP_NO_TAG` `SOAP_NTLM_ERROR` `SOAP_NULL` `SOAP_OCCURS` `SOAP_PATCH_METHOD` `SOAP_PATTERN` `SOAP_PLUGIN_ERROR` `SOAP_PROHIBITED` `SOAP_PUT_METHOD` `SOAP_REQUIRED` `SOAP_SSL_ERROR` `SOAP_SVR_FAULT` `SOAP_SYNTAX_ERROR` `SOAP_TAG_MISMATCH` `SOAP_TCP_ERROR` `SOAP_TYPE` `SOAP_UDP_ERROR` `SOAP_USER_ERROR` `SOAP_UTF_ERROR` `SOAP_VERSIONMISMATCH` `SOAP_ZLIB_ERROR`

See also
  `soap::error`, `soap_xml_error_check`, `soap_soap_error_check`, `soap_http_error_check`, `soap_dime_error_check`, `soap_mime_error_check`, `soap_tcp_error_check`, `soap_udp_error_check`, `soap_ssl_error_check`, `soap_zlib_error_check`.