Win32 API 日本語リファレンス
ホームNetworking.WindowsWebServices › WS_MESSAGE_PROPERTY_ID

WS_MESSAGE_PROPERTY_ID

列挙型
基底型i4

メンバー 22

名前10進16進説明
WS_MESSAGE_PROPERTY_STATE00x0

このプロパティは WsGetMessageProperty で使用します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは、メッセージの現在の WS_MESSAGE_STATE です。

このプロパティはすべてのメッセージ状態で利用できます。

WS_MESSAGE_PROPERTY_HEAP10x1

このプロパティは WsGetMessageProperty で使用します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは、メッセージの WS_HEAP です。ヒープはメッセージが所有します。 メッセージの利用者は、このヒープ内で追加の割り当てを自由に行えます。ヒープ内で行われた割り当ては、 メッセージがリセットまたは解放されるときに解放されます。

返されたヒープに対して WsResetHeap を呼び出さないでください。呼び出した場合の動作は未定義です。

メッセージ API のいずれかが呼び出されない限り、メッセージオブジェクトがヒープオブジェクトを使用することはありません。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。 空のメッセージのヒープを使用した場合の動作は未定義です。

WS_MESSAGE_PROPERTY_ENVELOPE_VERSION20x2

このプロパティは WsGetMessageProperty で使用します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは、メッセージの WS_ENVELOPE_VERSION です。

WsCreateMessage でメッセージを作成する場合、 エンベロープのバージョンは (プロパティとしてではなく) 明示的なパラメーターとして指定します。

このプロパティは、WS_MESSAGE_PROPERTIES 構造体を使用してメッセージプロパティを指定するときに 指定できます。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。

WS_MESSAGE_PROPERTY_ADDRESSING_VERSION30x3

このプロパティは WsGetMessageProperty で使用します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは、メッセージの WS_ADDRESSING_VERSION です。

WsCreateMessage でメッセージを作成する場合、 アドレッシングのバージョンは (プロパティとしてではなく) 明示的なパラメーターとして指定します。

このプロパティは、WS_MESSAGE_PROPERTIES 構造体を使用してメッセージプロパティを指定するときに 指定できます。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。

WS_MESSAGE_PROPERTY_HEADER_BUFFER40x4

このプロパティは WsGetMessageProperty で使用します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは、メッセージのヘッダー (およびエンベロープ要素と本文要素) を保持する WS_XML_BUFFER です。

このバッファーは、メッセージがリセットまたは解放されるまで有効です。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。

WS_MESSAGE_PROPERTY_HEADER_POSITION50x5

このプロパティは WsGetMessageProperty で使用します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは、ヘッダーバッファー内のヘッダー要素 (すべてのメッセージヘッダーを子として含む要素) の WS_XML_NODE_POSITION です。 ヘッダーバッファー自体は WS_MESSAGE_PROPERTY_HEADER_BUFFER を使用して取得できます。

アプリケーションは、ヘッダーを手動で読み書きするとき (WsSetHeaderWsGetHeaderWsGetCustomHeaderWsAddCustomHeader を使用しない場合) の 開始点として、返された WS_XML_NODE_POSITION を使用できます。 たとえば、この位置を WsSetWriterPositionWsSetReaderPosition に渡して、ヘッダーを含む WS_XML_BUFFER 内で XML ReaderXML Writer の位置を設定できます。さらに、 WsMoveReaderWsMoveWriter を使用して、設定した位置からの 相対的な移動を行えます。

メッセージのヘッダーが読み取られるとき (WsReadMessageStart または WsReadEnvelopeStart)、読み取り対象のメッセージにヘッダー要素が存在しない場合は、 ヘッダー要素がヘッダーバッファーに自動的に追加されます。メッセージが初期化されるとき (WsInitializeMessage による) は、 ヘッダー要素が自動的にメッセージに追加されます。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。

ヘッダー位置は、メッセージがリセットまたは解放されるまで有効です。

WS_MESSAGE_PROPERTY_BODY_READER60x6

このプロパティは WsGetMessageProperty で使用します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは、メッセージの本文の読み取りに使用できる WS_XML_READER です。

このリーダーはメッセージオブジェクトが所有し、WsFreeMessage または WsResetMessage が 呼び出されるまでの間のみ有効です。

このプロパティは、メッセージが WS_MESSAGE_STATE_READING 状態にある場合にのみ 利用できます。

WS_MESSAGE_PROPERTY_BODY_WRITER70x7

このプロパティは WsGetMessageProperty で使用します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは、メッセージの本文の書き込みに使用できる WS_XML_WRITER です。

このプロパティは、メッセージが WS_MESSAGE_STATE_WRITING 状態にある場合にのみ 利用できます。

このライターはメッセージオブジェクトが所有し、WsFreeMessage または WsResetMessage が 呼び出されるまでの間のみ有効です。

WS_MESSAGE_PROPERTY_IS_ADDRESSED80x8

このプロパティは WsGetMessageProperty で使用します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは、メッセージがアドレス指定済みかどうかを示す BOOL です。

メッセージが作成またはリセットされると、このプロパティは FALSE に設定されます。

メッセージが読み取られると (WsReadMessageStart または WsReadEnvelopeStart)、このプロパティは TRUE に設定されます。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。

詳細については WsAddressMessage を参照してください。

WS_MESSAGE_PROPERTY_HEAP_PROPERTIES90x9

このプロパティは WsCreateMessage で使用し、メッセージに関連付けられた WS_HEAP のプロパティを指定します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは WS_HEAP_PROPERTIES 型です。

このヒープは、メッセージのヘッダーをバッファリングするために使用されます。

次のヒーププロパティを指定できます。

WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES100xA

このプロパティは WsCreateMessage で使用し、メッセージで使用される XML Readers に適用されるプロパティを指定します。

これらの XML Reader プロパティは、ヘッダーを読み取るときにメッセージオブジェクトによって使用されます。 さらに、チャネルはメッセージを読み取るために作成するリーダーに対してこれらのプロパティを 使用します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは WS_XML_READER_PROPERTIES 型です。

次のプロパティを指定できます。

WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES110xB

このプロパティは WsCreateMessage で使用し、メッセージで使用される XML Writers のプロパティを指定します。

これらの XML Writer プロパティは、ヘッダーを書き込むときにメッセージオブジェクトによって使用されます。 さらに、チャネルはメッセージを書き込むために作成するライターに対してこれらのプロパティを 使用します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは WS_XML_WRITER_PROPERTIES 型です。

次のプロパティを指定できます。

WS_MESSAGE_PROPERTY_IS_FAULT120xC

このプロパティは WsGetMessageProperty または WsSetMessageProperty で使用し、メッセージがフォールトを含むかどうかを示します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは BOOL です。

メッセージが読み取られると (WsReadMessageStart または WsReadEnvelopeStart)、 本文の最初の要素がフォールト要素かどうかに応じてこのプロパティが設定されます。アプリケーションは、 本文をフォールトとして読み取るかどうかを判断する手段としてこのプロパティを検査できます。本文をフォールトとして 読み取るには、WsReadBodyWS_FAULT_TYPE と共に使用して WS_FAULT を取得します。

メッセージが書き込まれるとき (WsWriteMessageStart または WsWriteEnvelopeStart)、 このプロパティを使用して、アプリケーションが本文にフォールトを書き込むかどうかを示すことができます。 一部のチャネルは、メッセージの送信方法を決定するためにこの情報を使用します。 たとえば HTTP は、フォールトに対して 200 ではなく 500 のステータスコードを送信します。

WS_FAULT_MESSAGE を指定して WsInitializeMessage でメッセージを 初期化した場合、このプロパティは TRUE に設定されます。 その他の WS_MESSAGE_INITIALIZATION 値の場合、このプロパティは FALSE に設定されます。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。

WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS130xD

このプロパティは WsCreateMessage で使用し、メッセージヘッダーの処理時に許可されるヘッダーの 最大数を指定します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは ULONG です。

この制限の目的は、ヘッダーを走査する際の反復回数に上限を設けることです。

アプリケーションはヘッダーバッファーの内容を直接変更できるため、この制限はすべての場合に適用されるわけでは ありません。ヘッダーアクセス API (WsSetHeaderWsGetHeaderWsGetCustomHeaderWsGetMappedHeader) のいずれかが 使用される場合にのみ適用されます。

既定値は 64 です。

WS_MESSAGE_PROPERTY_USERNAME140xE

このプロパティは WsGetMessageProperty で使用し、ユーザー名とパスワードに基づくセキュリティが 有効な場合、またはカスタムチャネルが値を設定している場合に、受信したメッセージから 送信者のユーザー名を取得します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは WS_STRING 構造体です。

返される値は、メッセージが解放またはリセットされるまで有効です。

カスタムチャネルは、ユーザー名とパスワードに基づくセキュリティをサポートしている場合、WsSetMessageProperty を使用して メッセージから送信者のユーザー名を設定できます。この関数は、指定された値のコピーを作成します。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。

WS_MESSAGE_PROPERTY_ENCODED_CERT150xF

このプロパティは WsGetMessageProperty で使用し、証明書に基づくセキュリティモード (SSL など) が 有効な場合、またはカスタムチャネルが値を設定している場合に、受信したメッセージから 送信者の証明書をエンコードされたバイト列として取得します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは WS_BYTES 構造体です。

返される値は、メッセージが解放またはリセットされるまで有効です。

カスタムチャネルは、証明書に基づくセキュリティモードをサポートしている場合、WsSetMessageProperty を使用して 受信したメッセージから送信者の証明書を設定できます。この関数は、指定された値のコピーを作成します。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。

WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN160x10

このプロパティは WsGetMessageProperty で使用し、受信したメッセージから送信者を表す Windows トークンを取得します。このプロパティは次の場合に利用できます。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは HANDLE です。

返される値は、メッセージが解放またはリセットされるまで有効です。

カスタムチャネルは、証明書に基づくセキュリティモードをサポートしている場合、WsSetMessageProperty を使用して 受信したメッセージから送信者の証明書を設定できます。この関数は、指定されたハンドルを複製します。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。

WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN170x11

このプロパティは WsGetMessageProperty で使用し、WS_HTTP_HEADER_AUTH_SECURITY_BINDING が使用されている場合、 またはカスタムチャネルが値を設定している場合に、受信したメッセージから送信者を表す Windows トークンを取得します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは HANDLE です。

返される値は、メッセージが解放またはリセットされるまで有効です。

カスタムチャネルは、WsSetMessageProperty を使用して、受信したメッセージから送信者を表す Windows トークンを 設定できます。この関数は、指定されたハンドルを複製します。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。

WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN180x12

このプロパティは WsGetMessageProperty で使用し、WS_KERBEROS_APREQ_MESSAGE_SECURITY_BINDING などの メッセージセキュリティバインドが使用されている場合、またはカスタムチャネルが値を設定している場合に、 受信したメッセージから送信者を表す Windows トークンを取得します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは HANDLE です。

返される値は、メッセージが解放またはリセットされるまで有効です。

カスタムチャネルは、WsSetMessageProperty を使用して、受信したメッセージから送信者を表すトークンを 設定できます。この関数は、指定されたハンドルを複製します。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。

WS_MESSAGE_PROPERTY_SAML_ASSERTION190x13

このプロパティは WsGetMessageProperty で使用し、サーバー側で WS_SAML_MESSAGE_SECURITY_BINDING が 使用されている場合、またはカスタムチャネルが値を設定している場合に、受信したメッセージから 送信者を表す SAML アサーションを取得します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは WS_XML_BUFFER です。

返される値は、メッセージが解放またはリセットされるまで有効です。

カスタムチャネルは、WsSetMessageProperty を使用して、受信したメッセージから送信者を表す SAML アサーションを 設定できます。この関数は、指定されたバッファーを複製します。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。

WS_MESSAGE_PROPERTY_SECURITY_CONTEXT200x14

このプロパティは WsGetMessageProperty で使用し、サーバー側で WS_SECURITY_CONTEXT_MESSAGE_SECURITY_BINDING が使用されている場合に、セキュア会話のハンドルを取得します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは WS_SECURITY_CONTEXT です。

返される値は、メッセージが解放またはリセットされるまで有効です。

WS_MESSAGE_PROPERTY_PROTECTION_LEVEL210x15

このプロパティは WsGetMessageProperty で使用し、メッセージのセキュリティ保護レベルを取得します。

付随する WS_MESSAGE_PROPERTY 構造体の value メンバーは WS_PROTECTION_LEVEL 値です。

チャネルがセキュリティを使用しない場合、またはセキュリティの検証に失敗した場合、保護レベルは WS_PROTECTION_LEVEL_NONE に設定されます。それ以外の場合は、アプリケーションが要求したレベルに設定されます。

このプロパティは、WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTSFALSE に設定されている場合に、セキュリティ検証の状態を判断するために使用できます。

カスタムチャネルは、WsSetMessageProperty を使用して、受信したメッセージの保護レベルを 設定できます。

このプロパティは WS_MESSAGE_STATE_EMPTY を除くすべてのメッセージ状態で利用できます。

公式ドキュメント

各メッセージプロパティは WS_MESSAGE_PROPERTY 型で、ID によって識別され、対応する 値を持ちます。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum WS_MESSAGE_PROPERTY_ID : int {
    WS_MESSAGE_PROPERTY_STATE = 0,
    WS_MESSAGE_PROPERTY_HEAP = 1,
    WS_MESSAGE_PROPERTY_ENVELOPE_VERSION = 2,
    WS_MESSAGE_PROPERTY_ADDRESSING_VERSION = 3,
    WS_MESSAGE_PROPERTY_HEADER_BUFFER = 4,
    WS_MESSAGE_PROPERTY_HEADER_POSITION = 5,
    WS_MESSAGE_PROPERTY_BODY_READER = 6,
    WS_MESSAGE_PROPERTY_BODY_WRITER = 7,
    WS_MESSAGE_PROPERTY_IS_ADDRESSED = 8,
    WS_MESSAGE_PROPERTY_HEAP_PROPERTIES = 9,
    WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES = 10,
    WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES = 11,
    WS_MESSAGE_PROPERTY_IS_FAULT = 12,
    WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS = 13,
    WS_MESSAGE_PROPERTY_USERNAME = 14,
    WS_MESSAGE_PROPERTY_ENCODED_CERT = 15,
    WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN = 16,
    WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN = 17,
    WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN = 18,
    WS_MESSAGE_PROPERTY_SAML_ASSERTION = 19,
    WS_MESSAGE_PROPERTY_SECURITY_CONTEXT = 20,
    WS_MESSAGE_PROPERTY_PROTECTION_LEVEL = 21
} WS_MESSAGE_PROPERTY_ID;
public enum WS_MESSAGE_PROPERTY_ID : int
{
    WS_MESSAGE_PROPERTY_STATE = 0,
    WS_MESSAGE_PROPERTY_HEAP = 1,
    WS_MESSAGE_PROPERTY_ENVELOPE_VERSION = 2,
    WS_MESSAGE_PROPERTY_ADDRESSING_VERSION = 3,
    WS_MESSAGE_PROPERTY_HEADER_BUFFER = 4,
    WS_MESSAGE_PROPERTY_HEADER_POSITION = 5,
    WS_MESSAGE_PROPERTY_BODY_READER = 6,
    WS_MESSAGE_PROPERTY_BODY_WRITER = 7,
    WS_MESSAGE_PROPERTY_IS_ADDRESSED = 8,
    WS_MESSAGE_PROPERTY_HEAP_PROPERTIES = 9,
    WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES = 10,
    WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES = 11,
    WS_MESSAGE_PROPERTY_IS_FAULT = 12,
    WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS = 13,
    WS_MESSAGE_PROPERTY_USERNAME = 14,
    WS_MESSAGE_PROPERTY_ENCODED_CERT = 15,
    WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN = 16,
    WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN = 17,
    WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN = 18,
    WS_MESSAGE_PROPERTY_SAML_ASSERTION = 19,
    WS_MESSAGE_PROPERTY_SECURITY_CONTEXT = 20,
    WS_MESSAGE_PROPERTY_PROTECTION_LEVEL = 21,
}
Public Enum WS_MESSAGE_PROPERTY_ID As Integer
    WS_MESSAGE_PROPERTY_STATE = 0
    WS_MESSAGE_PROPERTY_HEAP = 1
    WS_MESSAGE_PROPERTY_ENVELOPE_VERSION = 2
    WS_MESSAGE_PROPERTY_ADDRESSING_VERSION = 3
    WS_MESSAGE_PROPERTY_HEADER_BUFFER = 4
    WS_MESSAGE_PROPERTY_HEADER_POSITION = 5
    WS_MESSAGE_PROPERTY_BODY_READER = 6
    WS_MESSAGE_PROPERTY_BODY_WRITER = 7
    WS_MESSAGE_PROPERTY_IS_ADDRESSED = 8
    WS_MESSAGE_PROPERTY_HEAP_PROPERTIES = 9
    WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES = 10
    WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES = 11
    WS_MESSAGE_PROPERTY_IS_FAULT = 12
    WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS = 13
    WS_MESSAGE_PROPERTY_USERNAME = 14
    WS_MESSAGE_PROPERTY_ENCODED_CERT = 15
    WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN = 16
    WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN = 17
    WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN = 18
    WS_MESSAGE_PROPERTY_SAML_ASSERTION = 19
    WS_MESSAGE_PROPERTY_SECURITY_CONTEXT = 20
    WS_MESSAGE_PROPERTY_PROTECTION_LEVEL = 21
End Enum
import enum

class WS_MESSAGE_PROPERTY_ID(enum.IntEnum):
    WS_MESSAGE_PROPERTY_STATE = 0
    WS_MESSAGE_PROPERTY_HEAP = 1
    WS_MESSAGE_PROPERTY_ENVELOPE_VERSION = 2
    WS_MESSAGE_PROPERTY_ADDRESSING_VERSION = 3
    WS_MESSAGE_PROPERTY_HEADER_BUFFER = 4
    WS_MESSAGE_PROPERTY_HEADER_POSITION = 5
    WS_MESSAGE_PROPERTY_BODY_READER = 6
    WS_MESSAGE_PROPERTY_BODY_WRITER = 7
    WS_MESSAGE_PROPERTY_IS_ADDRESSED = 8
    WS_MESSAGE_PROPERTY_HEAP_PROPERTIES = 9
    WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES = 10
    WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES = 11
    WS_MESSAGE_PROPERTY_IS_FAULT = 12
    WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS = 13
    WS_MESSAGE_PROPERTY_USERNAME = 14
    WS_MESSAGE_PROPERTY_ENCODED_CERT = 15
    WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN = 16
    WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN = 17
    WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN = 18
    WS_MESSAGE_PROPERTY_SAML_ASSERTION = 19
    WS_MESSAGE_PROPERTY_SECURITY_CONTEXT = 20
    WS_MESSAGE_PROPERTY_PROTECTION_LEVEL = 21
// WS_MESSAGE_PROPERTY_ID
pub const WS_MESSAGE_PROPERTY_STATE: i32 = 0;
pub const WS_MESSAGE_PROPERTY_HEAP: i32 = 1;
pub const WS_MESSAGE_PROPERTY_ENVELOPE_VERSION: i32 = 2;
pub const WS_MESSAGE_PROPERTY_ADDRESSING_VERSION: i32 = 3;
pub const WS_MESSAGE_PROPERTY_HEADER_BUFFER: i32 = 4;
pub const WS_MESSAGE_PROPERTY_HEADER_POSITION: i32 = 5;
pub const WS_MESSAGE_PROPERTY_BODY_READER: i32 = 6;
pub const WS_MESSAGE_PROPERTY_BODY_WRITER: i32 = 7;
pub const WS_MESSAGE_PROPERTY_IS_ADDRESSED: i32 = 8;
pub const WS_MESSAGE_PROPERTY_HEAP_PROPERTIES: i32 = 9;
pub const WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES: i32 = 10;
pub const WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES: i32 = 11;
pub const WS_MESSAGE_PROPERTY_IS_FAULT: i32 = 12;
pub const WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS: i32 = 13;
pub const WS_MESSAGE_PROPERTY_USERNAME: i32 = 14;
pub const WS_MESSAGE_PROPERTY_ENCODED_CERT: i32 = 15;
pub const WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN: i32 = 16;
pub const WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN: i32 = 17;
pub const WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN: i32 = 18;
pub const WS_MESSAGE_PROPERTY_SAML_ASSERTION: i32 = 19;
pub const WS_MESSAGE_PROPERTY_SECURITY_CONTEXT: i32 = 20;
pub const WS_MESSAGE_PROPERTY_PROTECTION_LEVEL: i32 = 21;
// WS_MESSAGE_PROPERTY_ID
const (
	WS_MESSAGE_PROPERTY_STATE int32 = 0
	WS_MESSAGE_PROPERTY_HEAP int32 = 1
	WS_MESSAGE_PROPERTY_ENVELOPE_VERSION int32 = 2
	WS_MESSAGE_PROPERTY_ADDRESSING_VERSION int32 = 3
	WS_MESSAGE_PROPERTY_HEADER_BUFFER int32 = 4
	WS_MESSAGE_PROPERTY_HEADER_POSITION int32 = 5
	WS_MESSAGE_PROPERTY_BODY_READER int32 = 6
	WS_MESSAGE_PROPERTY_BODY_WRITER int32 = 7
	WS_MESSAGE_PROPERTY_IS_ADDRESSED int32 = 8
	WS_MESSAGE_PROPERTY_HEAP_PROPERTIES int32 = 9
	WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES int32 = 10
	WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES int32 = 11
	WS_MESSAGE_PROPERTY_IS_FAULT int32 = 12
	WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS int32 = 13
	WS_MESSAGE_PROPERTY_USERNAME int32 = 14
	WS_MESSAGE_PROPERTY_ENCODED_CERT int32 = 15
	WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN int32 = 16
	WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN int32 = 17
	WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN int32 = 18
	WS_MESSAGE_PROPERTY_SAML_ASSERTION int32 = 19
	WS_MESSAGE_PROPERTY_SECURITY_CONTEXT int32 = 20
	WS_MESSAGE_PROPERTY_PROTECTION_LEVEL int32 = 21
)
const
  WS_MESSAGE_PROPERTY_STATE = 0;
  WS_MESSAGE_PROPERTY_HEAP = 1;
  WS_MESSAGE_PROPERTY_ENVELOPE_VERSION = 2;
  WS_MESSAGE_PROPERTY_ADDRESSING_VERSION = 3;
  WS_MESSAGE_PROPERTY_HEADER_BUFFER = 4;
  WS_MESSAGE_PROPERTY_HEADER_POSITION = 5;
  WS_MESSAGE_PROPERTY_BODY_READER = 6;
  WS_MESSAGE_PROPERTY_BODY_WRITER = 7;
  WS_MESSAGE_PROPERTY_IS_ADDRESSED = 8;
  WS_MESSAGE_PROPERTY_HEAP_PROPERTIES = 9;
  WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES = 10;
  WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES = 11;
  WS_MESSAGE_PROPERTY_IS_FAULT = 12;
  WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS = 13;
  WS_MESSAGE_PROPERTY_USERNAME = 14;
  WS_MESSAGE_PROPERTY_ENCODED_CERT = 15;
  WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN = 16;
  WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN = 17;
  WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN = 18;
  WS_MESSAGE_PROPERTY_SAML_ASSERTION = 19;
  WS_MESSAGE_PROPERTY_SECURITY_CONTEXT = 20;
  WS_MESSAGE_PROPERTY_PROTECTION_LEVEL = 21;
// WS_MESSAGE_PROPERTY_ID
pub const WS_MESSAGE_PROPERTY_STATE: i32 = 0;
pub const WS_MESSAGE_PROPERTY_HEAP: i32 = 1;
pub const WS_MESSAGE_PROPERTY_ENVELOPE_VERSION: i32 = 2;
pub const WS_MESSAGE_PROPERTY_ADDRESSING_VERSION: i32 = 3;
pub const WS_MESSAGE_PROPERTY_HEADER_BUFFER: i32 = 4;
pub const WS_MESSAGE_PROPERTY_HEADER_POSITION: i32 = 5;
pub const WS_MESSAGE_PROPERTY_BODY_READER: i32 = 6;
pub const WS_MESSAGE_PROPERTY_BODY_WRITER: i32 = 7;
pub const WS_MESSAGE_PROPERTY_IS_ADDRESSED: i32 = 8;
pub const WS_MESSAGE_PROPERTY_HEAP_PROPERTIES: i32 = 9;
pub const WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES: i32 = 10;
pub const WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES: i32 = 11;
pub const WS_MESSAGE_PROPERTY_IS_FAULT: i32 = 12;
pub const WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS: i32 = 13;
pub const WS_MESSAGE_PROPERTY_USERNAME: i32 = 14;
pub const WS_MESSAGE_PROPERTY_ENCODED_CERT: i32 = 15;
pub const WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN: i32 = 16;
pub const WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN: i32 = 17;
pub const WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN: i32 = 18;
pub const WS_MESSAGE_PROPERTY_SAML_ASSERTION: i32 = 19;
pub const WS_MESSAGE_PROPERTY_SECURITY_CONTEXT: i32 = 20;
pub const WS_MESSAGE_PROPERTY_PROTECTION_LEVEL: i32 = 21;
const
  WS_MESSAGE_PROPERTY_STATE* = 0
  WS_MESSAGE_PROPERTY_HEAP* = 1
  WS_MESSAGE_PROPERTY_ENVELOPE_VERSION* = 2
  WS_MESSAGE_PROPERTY_ADDRESSING_VERSION* = 3
  WS_MESSAGE_PROPERTY_HEADER_BUFFER* = 4
  WS_MESSAGE_PROPERTY_HEADER_POSITION* = 5
  WS_MESSAGE_PROPERTY_BODY_READER* = 6
  WS_MESSAGE_PROPERTY_BODY_WRITER* = 7
  WS_MESSAGE_PROPERTY_IS_ADDRESSED* = 8
  WS_MESSAGE_PROPERTY_HEAP_PROPERTIES* = 9
  WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES* = 10
  WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES* = 11
  WS_MESSAGE_PROPERTY_IS_FAULT* = 12
  WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS* = 13
  WS_MESSAGE_PROPERTY_USERNAME* = 14
  WS_MESSAGE_PROPERTY_ENCODED_CERT* = 15
  WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN* = 16
  WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN* = 17
  WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN* = 18
  WS_MESSAGE_PROPERTY_SAML_ASSERTION* = 19
  WS_MESSAGE_PROPERTY_SECURITY_CONTEXT* = 20
  WS_MESSAGE_PROPERTY_PROTECTION_LEVEL* = 21
enum WS_MESSAGE_PROPERTY_ID : int {
    WS_MESSAGE_PROPERTY_STATE = 0,
    WS_MESSAGE_PROPERTY_HEAP = 1,
    WS_MESSAGE_PROPERTY_ENVELOPE_VERSION = 2,
    WS_MESSAGE_PROPERTY_ADDRESSING_VERSION = 3,
    WS_MESSAGE_PROPERTY_HEADER_BUFFER = 4,
    WS_MESSAGE_PROPERTY_HEADER_POSITION = 5,
    WS_MESSAGE_PROPERTY_BODY_READER = 6,
    WS_MESSAGE_PROPERTY_BODY_WRITER = 7,
    WS_MESSAGE_PROPERTY_IS_ADDRESSED = 8,
    WS_MESSAGE_PROPERTY_HEAP_PROPERTIES = 9,
    WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES = 10,
    WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES = 11,
    WS_MESSAGE_PROPERTY_IS_FAULT = 12,
    WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS = 13,
    WS_MESSAGE_PROPERTY_USERNAME = 14,
    WS_MESSAGE_PROPERTY_ENCODED_CERT = 15,
    WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN = 16,
    WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN = 17,
    WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN = 18,
    WS_MESSAGE_PROPERTY_SAML_ASSERTION = 19,
    WS_MESSAGE_PROPERTY_SECURITY_CONTEXT = 20,
    WS_MESSAGE_PROPERTY_PROTECTION_LEVEL = 21,
}
#define global WS_MESSAGE_PROPERTY_STATE                            0x0
#define global WS_MESSAGE_PROPERTY_HEAP                             0x1
#define global WS_MESSAGE_PROPERTY_ENVELOPE_VERSION                 0x2
#define global WS_MESSAGE_PROPERTY_ADDRESSING_VERSION               0x3
#define global WS_MESSAGE_PROPERTY_HEADER_BUFFER                    0x4
#define global WS_MESSAGE_PROPERTY_HEADER_POSITION                  0x5
#define global WS_MESSAGE_PROPERTY_BODY_READER                      0x6
#define global WS_MESSAGE_PROPERTY_BODY_WRITER                      0x7
#define global WS_MESSAGE_PROPERTY_IS_ADDRESSED                     0x8
#define global WS_MESSAGE_PROPERTY_HEAP_PROPERTIES                  0x9
#define global WS_MESSAGE_PROPERTY_XML_READER_PROPERTIES            0xA
#define global WS_MESSAGE_PROPERTY_XML_WRITER_PROPERTIES            0xB
#define global WS_MESSAGE_PROPERTY_IS_FAULT                         0xC
#define global WS_MESSAGE_PROPERTY_MAX_PROCESSED_HEADERS            0xD
#define global WS_MESSAGE_PROPERTY_USERNAME                         0xE
#define global WS_MESSAGE_PROPERTY_ENCODED_CERT                     0xF
#define global WS_MESSAGE_PROPERTY_TRANSPORT_SECURITY_WINDOWS_TOKEN 0x10
#define global WS_MESSAGE_PROPERTY_HTTP_HEADER_AUTH_WINDOWS_TOKEN   0x11
#define global WS_MESSAGE_PROPERTY_MESSAGE_SECURITY_WINDOWS_TOKEN   0x12
#define global WS_MESSAGE_PROPERTY_SAML_ASSERTION                   0x13
#define global WS_MESSAGE_PROPERTY_SECURITY_CONTEXT                 0x14
#define global WS_MESSAGE_PROPERTY_PROTECTION_LEVEL                 0x15