/* * Copyright 2017 Owen Rudge for CodeWeavers * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef WSDTYPES_H #define WSDTYPES_H interface IWSDMessageParameters; typedef struct _WSD_APP_SEQUENCE WSD_APP_SEQUENCE; typedef struct _WSD_HEADER_RELATESTO WSD_HEADER_RELATESTO; typedef struct _WSD_SOAP_HEADER WSD_SOAP_HEADER; typedef struct _WSD_SOAP_MESSAGE WSD_SOAP_MESSAGE; typedef struct _WSD_NAME_LIST WSD_NAME_LIST; typedef struct _WSD_REFERENCE_PARAMETERS WSD_REFERENCE_PARAMETERS; typedef struct _WSD_REFERENCE_PROPERTIES WSD_REFERENCE_PROPERTIES; typedef struct _WSD_ENDPOINT_REFERENCE WSD_ENDPOINT_REFERENCE; typedef struct _WSD_URI_LIST WSD_URI_LIST; typedef struct _WSD_PROBE WSD_PROBE; typedef struct _WSD_SCOPES WSD_SCOPES; struct _WSD_APP_SEQUENCE { ULONGLONG InstanceId; const WCHAR *SequenceId; ULONGLONG MessageNumber; }; struct _WSD_NAME_LIST { WSD_NAME_LIST *Next; WSDXML_NAME *Element; }; struct _WSD_REFERENCE_PARAMETERS { WSDXML_ELEMENT *Any; }; struct _WSD_REFERENCE_PROPERTIES { WSDXML_ELEMENT *Any; }; struct _WSD_ENDPOINT_REFERENCE { const WCHAR *Address; WSD_REFERENCE_PROPERTIES ReferenceProperties; WSD_REFERENCE_PARAMETERS ReferenceParameters; WSDXML_NAME *PortType; WSDXML_NAME *ServiceName; WSDXML_ELEMENT *Any; }; struct _WSD_URI_LIST { WSD_URI_LIST *Next; const WCHAR *Element; }; struct _WSD_HEADER_RELATESTO { WSDXML_NAME *RelationshipType; const WCHAR *MessageID; }; struct _WSD_SOAP_HEADER { const WCHAR *To; const WCHAR *Action; const WCHAR *MessageID; WSD_HEADER_RELATESTO RelatesTo; WSD_ENDPOINT_REFERENCE *ReplyTo; WSD_ENDPOINT_REFERENCE *From; WSD_ENDPOINT_REFERENCE *FaultTo; WSD_APP_SEQUENCE *AppSequence; WSDXML_ELEMENT *AnyHeaders; }; struct _WSD_SOAP_MESSAGE { WSD_SOAP_HEADER Header; void *Body; WSDXML_TYPE *BodyType; }; struct _WSD_PROBE { WSD_NAME_LIST *Types; WSD_SCOPES *Scopes; WSDXML_ELEMENT *Any; }; struct _WSD_SCOPES { const WCHAR *MatchBy; WSD_URI_LIST *Scopes; }; #endif