| # WS-typemap.dat |
| # |
| #------------------------------------------------------------------------------- |
| #gSOAP XML Web services tools |
| #Copyright (C) 2004-2005, Robert van Engelen, Genivia Inc. All Rights Reserved. |
| #This software is released under one of the following two licenses: |
| #GPL or Genivia's license for commercial use. |
| #------------------------------------------------------------------------------- |
| #GPL license. |
| # |
| #This program is free software; you can redistribute it and/or modify it under |
| #the terms of the GNU General Public License as published by the Free Software |
| #Foundation; either version 2 of the License, or (at your option) any later |
| #version. |
| # |
| #This program 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 General Public License for more details. |
| # |
| #You should have received a copy of the GNU General Public License along with |
| #this program; if not, write to the Free Software Foundation, Inc., 59 Temple |
| #Place, Suite 330, Boston, MA 02111-1307 USA |
| # |
| #Author contact information: |
| #engelen@genivia.com / engelen@acm.org |
| #------------------------------------------------------------------------------- |
| #A commercial use license is available from Genivia, Inc., contact@genivia.com |
| #------------------------------------------------------------------------------- |
| |
| # Bindings for WS-* protocols: |
| |
| wsrp = "http://schemas.xmlsoap.org/rp/" |
| wsen = "http://schemas.xmlsoap.org/ws/2004/09/enumeration" |
| wsa = <http://schemas.xmlsoap.org/ws/2004/08/addressing> |
| wsa3 = <http://schemas.xmlsoap.org/ws/2003/03/addressing> |
| wsp = "http://schemas.xmlsoap.org/ws/2004/09/policy" |
| |
| # wsa:AttributedQName is a QName element extensible with attributes. |
| # We redeclare it as a QName string, assuming we don't need attributes: |
| |
| wsa__AttributedQName = | _QName |
| wsa3__AttributedQName = | _QName |
| |
| # wsa:AttributedURI is an anyURI element extensible with attributes. |
| # We redeclare it as a regular string, assuming we don't need attributes: |
| |
| wsa__AttributedURI = | char* |
| wsa3__AttributedURI = | char* |
| |
| # wsa:ReplyAfterType is an nonnegativeInteger extensible with attributes. |
| # We redeclare it here, assuming we don't need attributes: |
| |
| wsa__ReplyAfterType = | unsigned int |
| |
| # wsse, wsu, ds, and xenc bindings |
| |
| wsse = <http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd> |
| wsu = <http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd> |
| ds = <http://www.w3.org/2000/09/xmldsig#> |
| xenc = <http://www.w3.org/2001/04/xmlenc#> |
| |
| wsse2 = <http://schemas.xmlsoap.org/ws/2002/12/secext> |
| |
| ################################################################################ |
| # |
| # wsu redefinitions |
| # |
| ################################################################################ |
| |
| _wsu__Id = | char* |
| _wsu__Created = | char* |
| _wsu__Expires = | char* |
| |
| wsu__AttributedDateTime = | time_t |
| wsu__AttributedURI = | char* |
| |
| wsu__TimestampType = |
| |
| _wsu__Timestamp =\ |
| typedef struct _wsu__Timestamp\n\ |
| { @char* wsu__Id; // use qualified form to enable signature\n\ |
| char* Created;\n\ |
| char* Expires;\n\ |
| } _wsu__Timestamp; |
| |
| ################################################################################ |
| # |
| # wsse redefinitions |
| # |
| ################################################################################ |
| |
| # wsse:AttributedString has a wsu:Id we don't need |
| wsse__AttributedString = | char* |
| |
| # wsse:EncodedString has an EncodingType attribute we don't need for Nonce |
| wsse__EncodedString = | char* |
| |
| # Don't use global wsse:Nonce |
| _wsse__Nonce = |
| |
| # Don't use wsse:tUsage and global wsse:Usage |
| wsse__tUsage = |
| _wsse__Usage = |
| |
| # Don't use wsse:PasswordString |
| wsse__PasswordString = |
| |
| # But use wsse:Password element with similar content |
| _wsse__Password =\ |
| typedef struct _wsse__Password\n\ |
| { char* __item;\n\ |
| @char* Type;\n\ |
| } _wsse__Password; |
| |
| # Don't use wsse:UsernameTokenType |
| wsse__UsernameTokenType = |
| |
| # But use wsse:UsernameToken element with similar content |
| _wsse__UsernameToken =\ |
| typedef struct _wsse__UsernameToken\n\ |
| { char* Username;\n\ |
| struct _wsse__Password* Password;\n\ |
| char* Nonce;\n\ |
| char* wsu__Created;\n\ |
| @char* wsu__Id;\n\ |
| } _wsse__UsernameToken; |
| |
| # Don't use wsse:BinarySecurityTokenType |
| wsse__BinarySecurityTokenType = |
| |
| # But use wsse:BinarySecurityToken element with similar content |
| _wsse__BinarySecurityToken =\ |
| typedef struct _wsse__BinarySecurityToken\n\ |
| { char* __item;\n\ |
| @char* wsu__Id;\n\ |
| @char* ValueType;\n\ |
| @char* EncodingType;\n\ |
| } _wsse__BinarySecurityToken; |
| |
| # Don't use wsse:SecurityTokenReferenceType |
| wsse__SecurityTokenReferenceType = |
| |
| # But use wsse:SecurityTokenReference element |
| _wsse__SecurityTokenReference =\ |
| typedef struct _wsse__SecurityTokenReference\n\ |
| { struct _wsse__Reference* Reference;\n\ |
| struct _wsse__KeyIdentifier* KeyIdentifier;\n\ |
| struct _wsse__Embedded* Embedded;\n\ |
| @char* wsu__Id;\n\ |
| @char* Usage;\n\ |
| } _wsse__SecurityTokenReference; |
| |
| # Don't use wsse:ReferenceType |
| wsse__ReferenceType = |
| |
| # But use wsse:Reference element |
| _wsse__Reference =\ |
| typedef struct _wsse__Reference\n\ |
| { @char* URI;\n\ |
| @char* ValueType;\n\ |
| } _wsse__Reference; |
| |
| # Don't use wsse:KeyIdentifierType |
| wsse__KeyIdentifierType = |
| |
| # But use wsse:KeyIdentifier |
| _wsse__KeyIdentifier =\ |
| typedef struct _wsse__KeyIdentifier\n\ |
| { char* __item;\n\ |
| @char* wsu__Id;\n\ |
| @char* ValueType;\n\ |
| @char* EncodingType;\n\ |
| } _wsse__KeyIdentifier; |
| |
| # Don't use wsse:EmbeddedType |
| wsse__EmbeddedType = |
| |
| # But use wsse:KeyIdentifier |
| _wsse__Embedded =\ |
| typedef struct _wsse__Embedded\n\ |
| { /* Extensible with embedded tokens and assertions */\n\ |
| @char* wsu__Id;\n\ |
| @char* ValueType;\n\ |
| } _wsse__Embedded; |
| |
| # Don't use wsse:TransformationParametersType |
| wsse__TransformationParametersType = |
| |
| # Don't use wsse:TransformationParameters |
| _wsse__TransformationParameters = |
| |
| # Don't use wsse:SecurityHeaderType |
| wsse__SecurityHeaderType = |
| |
| # But use wsse:Security element with additional content |
| _wsse__Security =\ |
| #import "ds.h"\n\ |
| typedef struct _wsse__Security\n\ |
| { struct _wsu__Timestamp* wsu__Timestamp;\n\ |
| struct _wsse__UsernameToken* UsernameToken;\n\ |
| struct _wsse__BinarySecurityToken* BinarySecurityToken;\n\ |
| struct ds__SignatureType* ds__Signature;\n\ |
| @char* SOAP_ENV__actor;\n\ |
| @char* SOAP_ENV__role;\n\ |
| } _wsse__Security; |
| |
| ################################################################################ |
| # |
| # ds redefinitions |
| # |
| ################################################################################ |
| |
| ds__CryptoBinary = | char* /*base64*/ |
| |
| ds__DigestValueType = | char* /*base64*/ |
| |
| ds__HMACOutputLengthType = | int |
| |
| ds__TransformType = #import "c14n.h"\n\ |
| typedef struct ds__TransformType\n\ |
| { _c14n__InclusiveNamespaces* c14n__InclusiveNamespaces;\n\ |
| _XML __any;\n\ |
| @char* Algorithm;\n\ |
| } ds__TransformType; |
| |
| ds__KeyInfoType =\ |
| typedef struct ds__KeyInfoType\n\ |
| { char* KeyName;\n\ |
| struct ds__KeyValueType* KeyValue;\n\ |
| struct ds__RetrievalMethodType* RetrievalMethod;\n\ |
| struct ds__X509DataType* X509Data;\n\ |
| struct _wsse__SecurityTokenReference* wsse__SecurityTokenReference;\n\ |
| @char* Id;\n\ |
| } ds__KeyInfoType; |
| |
| ds__SignatureType =\ |
| typedef struct ds__SignatureType\n\ |
| { struct ds__SignedInfoType* SignedInfo;\n\ |
| char* SignatureValue;\n\ |
| struct ds__KeyInfoType* KeyInfo;\n\ |
| @char* Id;\n\ |
| } ds__SignatureType; |
| |
| # Add c14n:InclusiveNamespaces element to ds:CanonicalizationMethodType |
| ds__CanonicalizationMethodType = $\ |
| _c14n__InclusiveNamespaces* c14n__InclusiveNamespaces; |
| |
| # ds:SignatureValueType has an Id we don't need |
| ds__SignatureValueType = |
| |
| ds__ObjectType = |
| |
| ds__ManifestType = |
| |
| ds__SignaturePropertyType = |
| |
| ds__SignaturePropertiesType = |
| |
| ds__PGPDataType = |
| |
| ds__SPKIDataType = |
| |
| ################################################################################ |
| # |
| # Common definitions |
| # |
| ################################################################################ |
| |
| # Use regular char* strings for ID |
| |
| xsd__ID = | char* /*ID*/ |
| |
| # Use regular char* strings for NCName |
| |
| xsd__NCName = | char* /*NCName*/ |
| |
| # Use regular char* strings for anyURI |
| |
| xsd__anyURI = | char* /*URI*/ |
| |
| # Use built-in gSOAP _QName |
| |
| xsd__QName = | _QName | _QName |
| |
| # Map xsd:integer to int |
| |
| xsd__integer = | int |
| |
| # Map xsd:nonNegativeInteger to unsigned int |
| |
| xsd__nonNegativeInteger = | unsigned int |
| |
| # Map xsd:base64Binary to char* and manipulate base64 data internally |
| |
| xsd__base64Binary = | char* /*base64*/ |
| |
| # Map xsd:boolean to xsd__boolean_ to avoid redefs |
| |
| xsd__boolean = enum xsd__boolean_ { _false, _true }; | enum xsd__boolean_ |
| |
| # Redeclare wsrp:action_t |
| |
| wsrp__action_USCOREt = | char* |
| |
| # Redeclare wsrp:to_t |
| |
| wsrp__to_USCOREt = | char* |
| |
| # Redeclare wsrp:from_t |
| |
| wsrp__from_USCOREt = | char* |
| |
| # Redeclare wsrp:id_t |
| |
| wsrp__id_USCOREt = | char* |
| |
| # Redeclare wsrp:relatesTo_t |
| |
| wsrp__relatesTo_USCOREt = | char* |
| |
| # Redeclare wsrp:faultcode_t |
| |
| wsrp__faultcode_USCOREt = | char* |
| |
| # Redeclare wsrp:faultreason_t |
| |
| wsrp__faultreason_USCOREt = | char* |
| |