![]() |
Home | Documentation |
SOAP_MACRO run-time flags
updated Tue Dec 11 2018 by Robert van Engelen
|
This module defines the SOAP_MACRO
run-time soap_mode
flags to set the engine mode.
More...
Macros | |
#define | SOAP_IO |
soap_mode IO flags mask to check for SOAP_IO_FLUSH , SOAP_IO_BUFFER , SOAP_IO_STORE , SOAP_IO_CHUNK (for internal use only) More... | |
#define | SOAP_IO_FLUSH |
soap_mode IO output flag value to flush the message sent immediately without buffering (the default mode), do not combine this flag with SOAP_IO_BUFFER , SOAP_IO_STORE , SOAP_IO_CHUNK More... | |
#define | SOAP_IO_BUFFER |
soap_mode IO output flag value to buffer the message sent in packets of size SOAP_BUFLEN , do not combine this flag with SOAP_IO_FLUSH , SOAP_IO_STORE , SOAP_IO_CHUNK More... | |
#define | SOAP_IO_STORE |
soap_mode IO output flag value to store messages temporarily before transmission, e.g. to determine message length for transmission over HTTP instead of chunking or two-phase message sends, do not combine this flag with SOAP_IO_FLUSH , SOAP_IO_BUFFER , SOAP_IO_CHUNK More... | |
#define | SOAP_IO_CHUNK |
soap_mode IO output flag value to send HTTP chunked messages, buffers the message in packets of size SOAP_BUFLEN , do not combine this flag with SOAP_IO_FLUSH , SOAP_IO_BUFFER , SOAP_IO_STORE More... | |
#define | SOAP_IO_UDP |
soap_mode IO input/output flag value to use UDP datagrams, message size is limited to UDP packet size More... | |
#define | SOAP_IO_LENGTH |
soap_mode IO output flag value to calculate message length when sending a message without transmission (for internal use only) More... | |
#define | SOAP_IO_KEEPALIVE |
soap_mode IO output flag value to keep the socket connection alive for SOAP_MAXKEEPALIVE message exchanges per connection (100 by default), enabling HTTP keep-alive connection persistence More... | |
#define | SOAP_ENC |
soap_mode ENC flags mask (for internal use only) More... | |
#define | SOAP_ENC_LATIN |
soap_mode ENC input flag value to receive ISO-8859-1 encoded messages (automatically detected when receiving XML) More... | |
#define | SOAP_ENC_PLAIN |
soap_mode ENC input/output flag value to omit the HTTP headers from messages sent and disable detection and parsing of HTTP headers in messages received More... | |
#define | SOAP_ENC_XML |
soap_mode ENC input/output flag (deprecated, same as SOAP_ENC_PLAIN for backward compatibility) More... | |
#define | SOAP_ENC_DIME |
soap_mode ENC output flag value to enable DIME attachments (for internal use only) More... | |
#define | SOAP_ENC_MIME |
soap_mode ENC output flag value to enable MIME attachments in messages to be sent, receiving is automatic More... | |
#define | SOAP_ENC_MTOM |
soap_mode ENC output flag value to enable MTOM XOP attachments in messages to be sent, receiving is automatic More... | |
#define | SOAP_ENC_ZLIB |
soap_mode ENC output flag value to compress messages sent, requires zlib enabled with compile-time flag WITH_GZIP (or WITH_ZLIB for compression limited to "compress"), detection of compressed messages received and decompression of the messages is automatic More... | |
#define | SOAP_ENC_SSL |
soap_mode ENC input/output flag value to enable TLS/SSL, e.g. HTTPS, requires OpenSSL or GNUTLS enabled with compile-time flag WITH_OPENSSL or WITH_GNUTLS (for internal use only) More... | |
#define | SOAP_XML_STRICT |
soap_mode XML input flag value to enable strict XML validation of messages received, not recommended for SOAP RPC encoding style messaging, but SOAP document/literal style messages can be validated More... | |
#define | SOAP_XML_INDENT |
soap_mode XML output flag value to enable XML (and JSON) message indentation in messages sent More... | |
#define | SOAP_XML_IGNORENS |
soap_mode XML input flag value to ignore XML namespaces in messages received More... | |
#define | SOAP_XML_DEFAULTNS |
soap_mode XML output flag value to send XML messages with XML default namespaces for elements instead of namespace-qualified elements More... | |
#define | SOAP_XML_CANONICAL |
soap_mode XML output flag value to send XML messages in exclusive canonical format as per W3C XML C14N standards, use with the soap::c14ninclude and soap::c14nexclude strings to control the prefixes that are subject to canonicalization by including or excluding specific prefixes More... | |
#define | SOAP_XML_CANONICAL_NA |
soap_mode XML output flag value to send XML messages in exclusive canonical format as per W3C XML C14N standards, use with the soap::c14ninclude and soap::c14nexclude strings to control the prefixes that are subject to canonicalization by including or excluding specific prefixes More... | |
#define | SOAP_XML_TREE |
soap_mode XML input/output flag value to serialize C/C++ data structures as XML trees without id-href or id-ref multi-references, duplicates co-referenced data in the XML output and automatically breaks data structure cycles to prevent infinite serialization loops, ignores id and href/ref reference attributes in messages received, this flag is the opposite of SOAP_XML_GRAPH More... | |
#define | SOAP_XML_GRAPH |
soap_mode XML input/output flag value to serialize C/C++ (cyclic) data structures in XML with id-ref references for co-referenced data and to accurately serialize data structure cycles, accept id-ref references in XML received to (re)construct the C/C++ (co-referenced and cyclic) data structures, this flag is the opposite of SOAP_XML_TREE More... | |
#define | SOAP_XML_NIL |
soap_mode XML output flag value to serialize C/C++ NULL pointers in XML as elements with attribute xsi:nil="true" More... | |
#define | SOAP_XML_NOTYPE |
soap_mode XML output flag value to serialize C/C++ data structures in XML without xsi:type attributes, even when this may be necessary to distinguish base from derived data types More... | |
#define | SOAP_XML_DOM |
soap_mode XML input/output flag value to enable DOM node tree construction of the XML received and sent, requires compile-time flag WITH_DOM More... | |
#define | SOAP_DOM_ASIS |
soap_mode DOM output flag value to disable reformatting of the DOM node tree in XML, displaying the DOM in XML exactly as is More... | |
#define | SOAP_DOM_NODE |
soap_mode DOM input flag value to always attempt to deserialize embedded serializable C/C++ data structures into the DOM node tree based on matching element name to C/C++ type names and by matching xsi:type attributes when present, the opposite of SOAP_DOM_TREE More... | |
#define | SOAP_DOM_TREE |
soap_mode DOM input flag value to ignore id and xsi:type XML attributes and disables deserialization of serializable C/C++ data structures into the DOM node tree, the opposite of SOAP_DOM_NODE More... | |
#define | SOAP_C_NOIOB |
soap_mode C-related input flag value to ignore array items that are out of bounds when deserializing fixed-size arrays, instead of producing SOAP_IOB errors More... | |
#define | SOAP_C_UTFSTRING |
soap_mode C-related input/output flag value to serialize and deserialize 8-bit C/C++ strings containing UTF-8 encoded wide characters More... | |
#define | SOAP_C_MBSTRING |
soap_mode C-related input/output flag value to serialize and deserialize 8-bit multibyte C/C++ strings using mbtowc and wctomb More... | |
#define | SOAP_C_NILSTRING |
soap_mode C-related input/output flag value to serialize empty strings as elements with attribute xsi:nil="true" More... | |
#define | SOAP_MIME_POSTCHECK |
soap_mode MIME input flag value to check and process additional MIME attachments (for internal use only) More... | |
#define | SOAP_SEC_WSUID |
soap_mode SEC output flag value to add wsu:Id attributes to signed parts of messages sent and signed with WS-Security (for internal use only) More... | |
Typedefs | |
typedef int | soap_mode |
The soap_mode flags to initialize the soap context, flags can be combined with | (bit-wise or) More... | |
This module defines the SOAP_MACRO
run-time soap_mode
flags to set the engine mode.
This module defines the following soap_mode
flags:
SOAP_C_MBSTRING
SOAP_C_NILSTRING
SOAP_C_NOIOB
SOAP_C_UTFSTRING
SOAP_DOM_ASIS
SOAP_DOM_NODE
SOAP_DOM_TREE
SOAP_ENC
SOAP_ENC_DIME
SOAP_ENC_LATIN
SOAP_ENC_MIME
SOAP_ENC_MTOM
SOAP_ENC_PLAIN
SOAP_ENC_SSL
SOAP_ENC_XML
SOAP_ENC_ZLIB
SOAP_IO
SOAP_IO_BUFFER
SOAP_IO_CHUNK
SOAP_IO_FLUSH
SOAP_IO_KEEPALIVE
SOAP_IO_LENGTH
SOAP_IO_STORE
SOAP_IO_UDP
SOAP_MIME_POSTCHECK
SOAP_SEC_WSUID
SOAP_XML_CANONICAL
SOAP_XML_CANONICAL_NA
SOAP_XML_DEFAULTNS
SOAP_XML_DOM
SOAP_XML_GRAPH
SOAP_XML_IGNORENS
SOAP_XML_INDENT
SOAP_XML_NIL
SOAP_XML_NOTYPE
SOAP_XML_STRICT
SOAP_XML_TREE
#define SOAP_C_MBSTRING |
soap_mode
C-related input/output flag value to serialize and deserialize 8-bit multibyte C/C++ strings using mbtowc
and wctomb
#define SOAP_C_NILSTRING |
soap_mode
C-related input/output flag value to serialize empty strings as elements with attribute xsi:nil="true"
#define SOAP_C_NOIOB |
soap_mode
C-related input flag value to ignore array items that are out of bounds when deserializing fixed-size arrays, instead of producing SOAP_IOB
errors
#define SOAP_C_UTFSTRING |
soap_mode
C-related input/output flag value to serialize and deserialize 8-bit C/C++ strings containing UTF-8 encoded wide characters
#define SOAP_DOM_ASIS |
soap_mode
DOM output flag value to disable reformatting of the DOM node tree in XML, displaying the DOM in XML exactly as is
This example requires the soapC.cpp source code generated with soapcpp2 from gsoap/import/dom.h
as (imported) input in order to use soap_new_xsd__anyType
and soap_write_xsd__anyType
.
SOAP_DOM_NODE
, SOAP_DOM_TREE
and the gSOAP XML DOM API documentation. #define SOAP_DOM_NODE |
soap_mode
DOM input flag value to always attempt to deserialize embedded serializable C/C++ data structures into the DOM node tree based on matching element name to C/C++ type names and by matching xsi:type
attributes when present, the opposite of SOAP_DOM_TREE
This example requires the soapC.cpp source code generated with soapcpp2 from gsoap/import/dom.h
as (imported) input in order to use soap_new_xsd__anyType
and soap_write_xsd__anyType
.
SOAP_DOM_ASIS
, SOAP_DOM_TREE
and the gSOAP XML DOM API documentation. #define SOAP_DOM_TREE |
soap_mode
DOM input flag value to ignore id
and xsi:type
XML attributes and disables deserialization of serializable C/C++ data structures into the DOM node tree, the opposite of SOAP_DOM_NODE
This example requires the soapC.cpp source code generated with soapcpp2 from gsoap/import/dom.h
as (imported) input in order to use soap_new_xsd__anyType
, soap_read_xsd__anyType
and soap_write_xsd__anyType
.
SOAP_DOM_ASIS
, SOAP_DOM_NODE
and the gSOAP XML DOM API documentation. #define SOAP_ENC |
soap_mode
ENC flags mask (for internal use only)
#define SOAP_ENC_DIME |
soap_mode
ENC output flag value to enable DIME attachments (for internal use only)
The SOAP_ENC_DIME
flag is automatically set when attachments are present in the message to be sent or when a message with DIME attachments is received and does not need to be set explicitly.
DIME attachment sizes are limited to SOAP_MAXDIMESIZE
, which is a compile-time constant that can be changed.
SOAP_ENC_MIME
, SOAP_ENC_DIME
, DIME attachments. #define SOAP_ENC_LATIN |
soap_mode
ENC input flag value to receive ISO-8859-1 encoded messages (automatically detected when receiving XML)
#define SOAP_ENC_MIME |
soap_mode
ENC output flag value to enable MIME attachments in messages to be sent, receiving is automatic
The MTOM specification requires SOAP 1.2.
SOAP_ENC_DIME
, SOAP_ENC_MTOM
, MIME attachments. #define SOAP_ENC_MTOM |
soap_mode
ENC output flag value to enable MTOM XOP attachments in messages to be sent, receiving is automatic
SOAP_ENC_DIME
, SOAP_ENC_MIME
, MTOM attachments. #define SOAP_ENC_PLAIN |
soap_mode
ENC input/output flag value to omit the HTTP headers from messages sent and disable detection and parsing of HTTP headers in messages received
#define SOAP_ENC_SSL |
soap_mode
ENC input/output flag value to enable TLS/SSL, e.g. HTTPS, requires OpenSSL or GNUTLS enabled with compile-time flag WITH_OPENSSL
or WITH_GNUTLS
(for internal use only)
#define SOAP_ENC_XML |
soap_mode
ENC input/output flag (deprecated, same as SOAP_ENC_PLAIN
for backward compatibility)
#define SOAP_ENC_ZLIB |
#define SOAP_IO |
soap_mode
IO flags mask to check for SOAP_IO_FLUSH
, SOAP_IO_BUFFER
, SOAP_IO_STORE
, SOAP_IO_CHUNK
(for internal use only)
#define SOAP_IO_BUFFER |
soap_mode
IO output flag value to buffer the message sent in packets of size SOAP_BUFLEN
, do not combine this flag with SOAP_IO_FLUSH
, SOAP_IO_STORE
, SOAP_IO_CHUNK
#define SOAP_IO_CHUNK |
soap_mode
IO output flag value to send HTTP chunked messages, buffers the message in packets of size SOAP_BUFLEN
, do not combine this flag with SOAP_IO_FLUSH
, SOAP_IO_BUFFER
, SOAP_IO_STORE
SOAP_IO_CHUNK
is preferable to use compared to SOAP_IO_STORE
, because SOAP_IO_STORE
requires more memory and increases response time latency due to the overhead of storing the entire message before transmission.#define SOAP_IO_FLUSH |
soap_mode
IO output flag value to flush the message sent immediately without buffering (the default mode), do not combine this flag with SOAP_IO_BUFFER
, SOAP_IO_STORE
, SOAP_IO_CHUNK
#define SOAP_IO_KEEPALIVE |
soap_mode
IO output flag value to keep the socket connection alive for SOAP_MAXKEEPALIVE
message exchanges per connection (100 by default), enabling HTTP keep-alive connection persistence
SOAP_IO_KEEPALIVE
with CGI and FastCGI applications.#define SOAP_IO_LENGTH |
soap_mode
IO output flag value to calculate message length when sending a message without transmission (for internal use only)
soap_begin_count
, soap_end_count
. #define SOAP_IO_STORE |
soap_mode
IO output flag value to store messages temporarily before transmission, e.g. to determine message length for transmission over HTTP instead of chunking or two-phase message sends, do not combine this flag with SOAP_IO_FLUSH
, SOAP_IO_BUFFER
, SOAP_IO_CHUNK
When set as input-mode flag, forces all messages sent to be temporarily stored before transmission. When set as output-mode flag, forces only the next message to be temporarily stored before transmission.
SOAP_IO_CHUNK
is preferable over SOAP_IO_STORE
, because SOAP_IO_STORE
requires more memory and increases response time latency due to the overhead of storing the entire message before transmission.#define SOAP_IO_UDP |
soap_mode
IO input/output flag value to use UDP datagrams, message size is limited to UDP packet size
#define SOAP_MIME_POSTCHECK |
soap_mode
MIME input flag value to check and process additional MIME attachments (for internal use only)
Used by soap_post_check_mime_attachments
and soap_check_mime_attachments
.
#define SOAP_SEC_WSUID |
soap_mode
SEC output flag value to add wsu:Id attributes to signed parts of messages sent and signed with WS-Security (for internal use only)
#define SOAP_XML_CANONICAL |
soap_mode
XML output flag value to send XML messages in exclusive canonical format as per W3C XML C14N standards, use with the soap::c14ninclude
and soap::c14nexclude
strings to control the prefixes that are subject to canonicalization by including or excluding specific prefixes
SOAP_XML_CANONICAL_NA
mode flag omits QName canonicalization.SOAP_XML_CANONICAL_NA
. #define SOAP_XML_CANONICAL_NA |
soap_mode
XML output flag value to send XML messages in exclusive canonical format as per W3C XML C14N standards, use with the soap::c14ninclude
and soap::c14nexclude
strings to control the prefixes that are subject to canonicalization by including or excluding specific prefixes
Must be used in combination with SOAP_XML_CANONICAL_NA
to emit XML in canonical form such that namespace prefixes in QName values are ignored. Recommended is to only use SOAP_XML_CANONICAL
which is more secure, see the SOAP_XML_CANONICAL
notes.
SOAP_XML_CANONICAL
. #define SOAP_XML_DEFAULTNS |
soap_mode
XML output flag value to send XML messages with XML default namespaces for elements instead of namespace-qualified elements
#define SOAP_XML_DOM |
soap_mode
XML input/output flag value to enable DOM node tree construction of the XML received and sent, requires compile-time flag WITH_DOM
#define SOAP_XML_GRAPH |
soap_mode
XML input/output flag value to serialize C/C++ (cyclic) data structures in XML with id-ref references for co-referenced data and to accurately serialize data structure cycles, accept id-ref references in XML received to (re)construct the C/C++ (co-referenced and cyclic) data structures, this flag is the opposite of SOAP_XML_TREE
WITH_NOIDREF
.SOAP_XML_TREE
. #define SOAP_XML_IGNORENS |
soap_mode
XML input flag value to ignore XML namespaces in messages received
#define SOAP_XML_INDENT |
soap_mode
XML output flag value to enable XML (and JSON) message indentation in messages sent
#define SOAP_XML_NIL |
soap_mode
XML output flag value to serialize C/C++ NULL pointers in XML as elements with attribute xsi:nil="true"
#define SOAP_XML_NOTYPE |
soap_mode
XML output flag value to serialize C/C++ data structures in XML without xsi:type
attributes, even when this may be necessary to distinguish base from derived data types
#define SOAP_XML_STRICT |
soap_mode
XML input flag value to enable strict XML validation of messages received, not recommended for SOAP RPC encoding style messaging, but SOAP document/literal style messages can be validated
Alternatively, use soapcpp2 -s
to generate stub and skeleton functions that perform strict XML validation checks.
#define SOAP_XML_TREE |
soap_mode
XML input/output flag value to serialize C/C++ data structures as XML trees without id-href or id-ref multi-references, duplicates co-referenced data in the XML output and automatically breaks data structure cycles to prevent infinite serialization loops, ignores id and href/ref reference attributes in messages received, this flag is the opposite of SOAP_XML_GRAPH
WITH_NOIDREF
.SOAP_XML_GRAPH
, WITH_NOIDREF
. typedef int soap_mode |
The soap_mode
flags to initialize the soap
context, flags can be combined with |
(bit-wise or)
The soap_mode
flags are:
SOAP_C_MBSTRING
SOAP_C_NILSTRING
SOAP_C_NOIOB
SOAP_C_UTFSTRING
SOAP_DOM_ASIS
SOAP_DOM_NODE
SOAP_DOM_TREE
SOAP_ENC
SOAP_ENC_DIME
SOAP_ENC_LATIN
SOAP_ENC_MIME
SOAP_ENC_MTOM
SOAP_ENC_PLAIN
SOAP_ENC_SSL
SOAP_ENC_XML
SOAP_ENC_ZLIB
SOAP_IO
SOAP_IO_BUFFER
SOAP_IO_CHUNK
SOAP_IO_FLUSH
SOAP_IO_KEEPALIVE
SOAP_IO_LENGTH
SOAP_IO_STORE
SOAP_IO_UDP
SOAP_MIME_POSTCHECK
SOAP_SEC_WSUID
SOAP_XML_CANONICAL
SOAP_XML_CANONICAL_NA
SOAP_XML_DEFAULTNS
SOAP_XML_DOM
SOAP_XML_GRAPH
SOAP_XML_IGNORENS
SOAP_XML_INDENT
SOAP_XML_NIL
SOAP_XML_NOTYPE
SOAP_XML_STRICT
SOAP_XML_TREE