File: Windows.Win32.HTTP_REQUEST_V1.g.cs
Project: src\src\Servers\IIS\IIS\src\Microsoft.AspNetCore.Server.IIS.csproj (Microsoft.AspNetCore.Server.IIS)
// ------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
// ------------------------------------------------------------------------------

#pragma warning disable CS1591,CS1573,CS0465,CS0649,CS8019,CS1570,CS1584,CS1658,CS0436,CS8981
using global::System;
using global::System.Diagnostics;
using global::System.Diagnostics.CodeAnalysis;
using global::System.Runtime.CompilerServices;
using global::System.Runtime.InteropServices;
using global::System.Runtime.Versioning;
using winmdroot = global::Windows.Win32;
namespace Windows.Win32
{
	namespace Networking.HttpServer
	{
		/// <summary>Uses the HTTP_REQUEST structure to return data associated with a specific request.</summary>
		/// <remarks>The unprocessed URL contained in the <b>pRawUrl</b> member is for tracking and statistical purposes only. For other purposes, use the processed, canonical URL contained in the <b>CookedUrl</b> member.</remarks>
		[global::System.CodeDom.Compiler.GeneratedCode("Microsoft.Windows.CsWin32", "0.3.46-beta+dd815b2b9b")]
		internal partial struct HTTP_REQUEST_V1
		{
			/// <summary>
			/// <para>A combination of zero or more of the following flag values may be combined, with OR, as appropriate. </para>
			/// <para>This doc was truncated.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/http/ns-http-http_request_v1#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal uint Flags;

			/// <summary>
			/// <para>An identifier for the connection on which the request was received. Use this value when calling <a href="https://docs.microsoft.com/windows/desktop/api/http/nf-http-httpwaitfordisconnect">HttpWaitForDisconnect</a> or <a href="https://docs.microsoft.com/windows/desktop/api/http/nf-http-httpreceiveclientcertificate">HttpReceiveClientCertificate</a>.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/http/ns-http-http_request_v1#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal ulong ConnectionId;

			/// <summary>
			/// <para>A value used to identify the request when calling <a href="https://docs.microsoft.com/windows/desktop/api/http/nf-http-httpreceiverequestentitybody">HttpReceiveRequestEntityBody</a>, <a href="https://docs.microsoft.com/windows/desktop/api/http/nf-http-httpsendhttpresponse">HttpSendHttpResponse</a>, and/or <a href="https://docs.microsoft.com/windows/desktop/api/http/nf-http-httpsendresponseentitybody">HttpSendResponseEntityBody</a>.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/http/ns-http-http_request_v1#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal ulong RequestId;

			/// <summary>
			/// <para>The context that is associated with the URL in the <i>pRawUrl</i> parameter. <b>Windows Server 2003 with SP1 and Windows XP with SP2:  </b></para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/http/ns-http-http_request_v1#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal ulong UrlContext;

			/// <summary>
			/// <para>An <a href="https://docs.microsoft.com/windows/desktop/api/http/ns-http-http_version">HTTP_VERSION</a> structure that contains the version of HTTP specified by this request.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/http/ns-http-http_request_v1#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal winmdroot.Networking.HttpServer.HTTP_VERSION Version;

			/// <summary>
			/// <para>An HTTP verb associated with this request. This member can be one of the values from the <a href="https://docs.microsoft.com/windows/desktop/api/http/ne-http-http_verb">HTTP_VERB</a> enumeration.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/http/ns-http-http_request_v1#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal winmdroot.Networking.HttpServer.HTTP_VERB Verb;

			/// <summary>If the <b>Verb</b> member contains a value equal to <b>HttpVerbUnknown</b>, the <b>UnknownVerbLength</b> member contains the size, in bytes, of the string pointed to by the <b>pUnknownVerb</b> member, not including the terminating null character. If <b>Verb</b> is not equal to <b>HttpVerbUnknown</b>, <b>UnknownVerbLength</b> is equal to zero.</summary>
			internal ushort UnknownVerbLength;

			/// <summary>The size, in bytes, of the unprocessed URL string pointed to by the <b>pRawUrl</b> member, not including the terminating null character.</summary>
			internal ushort RawUrlLength;

			/// <summary>If the <b>Verb</b> member is equal to <b>HttpVerbUnknown</b>, <b>pUnknownVerb</b>, points to a null-terminated string of octets that contains the HTTP verb for this request; otherwise, the application ignores this parameter.</summary>
			internal winmdroot.Foundation.PCSTR pUnknownVerb;

			/// <summary>A pointer to a string of octets that contains the original, unprocessed URL targeted by this request.  Use this unprocessed URL only for tracking or statistical purposes; the  <b>CookedUrl</b> member contains the canonical form of the URL for general use.</summary>
			internal winmdroot.Foundation.PCSTR pRawUrl;

			/// <summary>
			/// <para>An <a href="https://docs.microsoft.com/windows/desktop/api/http/ns-http-http_cooked_url">HTTP_COOKED_URL</a> structure that contains a parsed canonical wide-character version of the URL targeted by this request. This is the version of the URL HTTP Listeners should act upon, rather than the raw URL.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/http/ns-http-http_request_v1#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal winmdroot.Networking.HttpServer.HTTP_COOKED_URL CookedUrl;

			/// <summary>
			/// <para>An <a href="https://docs.microsoft.com/windows/desktop/api/http/ns-http-http_transport_address">HTTP_TRANSPORT_ADDRESS</a> structure that contains the transport addresses for the connection for this request.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/http/ns-http-http_request_v1#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal winmdroot.Networking.HttpServer.HTTP_TRANSPORT_ADDRESS Address;

			/// <summary>
			/// <para>An <a href="https://docs.microsoft.com/windows/desktop/api/http/ns-http-http_request_headers">HTTP_REQUEST_HEADERS</a> structure that contains the headers specified in this request.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/http/ns-http-http_request_v1#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal winmdroot.Networking.HttpServer.HTTP_REQUEST_HEADERS Headers;

			/// <summary>The total number of bytes received from the network comprising this request.</summary>
			internal ulong BytesReceived;

			/// <summary>The number of elements in the <b>pEntityChunks</b> array. If no entity body was copied, this value is zero.</summary>
			internal ushort EntityChunkCount;

			/// <summary>
			/// <para>A pointer to an array of <a href="https://docs.microsoft.com/windows/desktop/api/http/ns-http-http_data_chunk">HTTP_DATA_CHUNK</a> structures that contains the data blocks making up the entity body. <a href="https://docs.microsoft.com/windows/desktop/api/http/nf-http-httpreceivehttprequest">HttpReceiveHttpRequest</a> does not copy the entity body unless called with the HTTP_RECEIVE_REQUEST_FLAG_COPY_BODY flag set.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/http/ns-http-http_request_v1#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal unsafe winmdroot.Networking.HttpServer.HTTP_DATA_CHUNK* pEntityChunks;

			/// <summary>Raw connection ID for an Secure Sockets Layer (SSL) request.</summary>
			internal ulong RawConnectionId;

			/// <summary>
			/// <para>A pointer to an <a href="https://docs.microsoft.com/windows/desktop/api/http/ns-http-http_ssl_info">HTTP_SSL_INFO</a> structure that contains Secure Sockets Layer (SSL) information about the connection on which the request was received.</para>
			/// <para><see href="https://learn.microsoft.com/windows/win32/api/http/ns-http-http_request_v1#members">Read more on docs.microsoft.com</see>.</para>
			/// </summary>
			internal unsafe winmdroot.Networking.HttpServer.HTTP_SSL_INFO* pSslInfo;
		}
	}
}