ReactOS 0.4.16-dev-297-gc569aee
http.h File Reference
#include <winsock2.h>
#include <ws2tcpip.h>
Include dependency graph for http.h:

Go to the source code of this file.

Classes

struct  _HTTPAPI_VERSION
 
struct  _HTTP_VERSION
 
struct  _HTTP_COOKED_URL
 
struct  _HTTP_TRANSPORT_ADDRESS
 
struct  _HTTP_UNKNOWN_HEADER
 
struct  _HTTP_KNOWN_HEADER
 
struct  _HTTP_REQUEST_HEADERS
 
struct  _HTTP_BYTE_RANGE
 
struct  _HTTP_DATA_CHUNK
 
struct  _HTTP_SSL_CLIENT_CERT_INFO
 
struct  _HTTP_SSL_INFO
 
struct  _HTTP_REQUEST_V1
 
struct  _HTTP_REQUEST_INFO
 
struct  _HTTP_REQUEST_V2
 
struct  _HTTP_RESPONSE_HEADERS
 
struct  _HTTP_RESPONSE_V1
 
struct  _HTTP_RESPONSE_INFO
 
struct  _HTTP_RESPONSE_V2
 
struct  _HTTP_CACHE_POLICY
 
struct  _HTTP_LOG_DATA
 
struct  _HTTP_PROPERTY_FLAGS
 
struct  _HTTP_BINDING_INFO
 

Macros

#define HTTPAPI_VERSION_1   {1,0}
 
#define HTTPAPI_VERSION_2   {2,0}
 
#define HTTP_CREATE_REQUEST_QUEUE_FLAG_OPEN_EXISTING   0x00000001
 
#define HTTP_CREATE_REQUEST_QUEUE_FLAG_CONTROLLER   0x00000002
 
#define HTTP_INITIALIZE_SERVER   0x00000001
 
#define HTTP_INITIALIZE_CONFIG   0x00000002
 
#define HTTP_RECEIVE_REQUEST_FLAG_COPY_BODY   0x00000001
 
#define HTTP_RECEIVE_REQUEST_FLAG_FLUSH_BODY   0x00000002
 
#define HTTP_REQUEST_FLAG_MORE_ENTITY_BODY_EXISTS   0x00000001
 
#define HTTP_REQUEST_FLAG_IP_ROUTED   0x00000002
 
#define HTTP_REQUEST_FLAG_HTTP2   0x00000004
 
#define HTTP_SEND_RESPONSE_FLAG_DISCONNECT   0x00000001
 
#define HTTP_SEND_RESPONSE_FLAG_MORE_DATA   0x00000002
 
#define HTTP_SEND_RESPONSE_FLAG_BUFFER_DATA   0x00000004
 
#define HTTP_SEND_RESPONSE_FLAG_ENABLE_NAGLING   0x00000008
 
#define HTTP_SEND_RESPONSE_FLAG_PROCESS_RANGES   0x00000020
 
#define HTTP_SEND_RESPONSE_FLAG_OPAQUE   0x00000040
 
#define HTTP_URL_FLAG_REMOVE_ALL   0x0000001
 
#define HTTP_NULL_ID   ((ULONGLONG)0)
 
#define HTTP_BYTE_RANGE_TO_EOF   ((ULONGLONG)-1)
 

Typedefs

typedef struct _HTTPAPI_VERSION HTTPAPI_VERSION
 
typedef struct _HTTPAPI_VERSIONPHTTPAPI_VERSION
 
typedef enum _HTTP_SERVICE_CONFIG_ID HTTP_SERVICE_CONFIG_ID
 
typedef enum _HTTP_SERVICE_CONFIG_IDPHTTP_SERVICE_CONFIG_ID
 
typedef ULONGLONG HTTP_OPAQUE_ID
 
typedef ULONGLONGPHTTP_OPAQUE_ID
 
typedef HTTP_OPAQUE_ID HTTP_CONNECTION_ID
 
typedef HTTP_OPAQUE_IDPHTTP_CONNECTION_ID
 
typedef HTTP_OPAQUE_ID HTTP_RAW_CONNECTION_ID
 
typedef HTTP_OPAQUE_IDPHTTP_RAW_CONNECTION_ID
 
typedef HTTP_OPAQUE_ID HTTP_REQUEST_ID
 
typedef HTTP_OPAQUE_IDPHTTP_REQUEST_ID
 
typedef HTTP_OPAQUE_ID HTTP_SERVER_SESSION_ID
 
typedef HTTP_OPAQUE_IDPHTTP_SERVER_SESSION_ID
 
typedef HTTP_OPAQUE_ID HTTP_URL_GROUP_ID
 
typedef HTTP_OPAQUE_IDPHTTP_URL_GROUP_ID
 
typedef ULONGLONG HTTP_URL_CONTEXT
 
typedef struct _HTTP_VERSION HTTP_VERSION
 
typedef struct _HTTP_VERSIONPHTTP_VERSION
 
typedef enum _HTTP_VERB HTTP_VERB
 
typedef enum _HTTP_VERBPHTTP_VERB
 
typedef struct _HTTP_COOKED_URL HTTP_COOKED_URL
 
typedef struct _HTTP_COOKED_URLPHTTP_COOKED_URL
 
typedef struct _HTTP_TRANSPORT_ADDRESS HTTP_TRANSPORT_ADDRESS
 
typedef struct _HTTP_TRANSPORT_ADDRESSPHTTP_TRANSPORT_ADDRESS
 
typedef struct _HTTP_UNKNOWN_HEADER HTTP_UNKNOWN_HEADER
 
typedef struct _HTTP_UNKNOWN_HEADERPHTTP_UNKNOWN_HEADER
 
typedef struct _HTTP_KNOWN_HEADER HTTP_KNOWN_HEADER
 
typedef struct _HTTP_KNOWN_HEADERPHTTP_KNOWN_HEADER
 
typedef enum _HTTP_HEADER_ID HTTP_HEADER_ID
 
typedef enum _HTTP_HEADER_IDPHTTP_HEADER_ID
 
typedef struct _HTTP_REQUEST_HEADERS HTTP_REQUEST_HEADERS
 
typedef struct _HTTP_REQUEST_HEADERSPHTTP_REQUEST_HEADERS
 
typedef enum _HTTP_DATA_CHUNK_TYPE HTTP_DATA_CHUNK_TYPE
 
typedef enum _HTTP_DATA_CHUNK_TYPEPHTTP_DATA_CHUNK_TYPE
 
typedef struct _HTTP_BYTE_RANGE HTTP_BYTE_RANGE
 
typedef struct _HTTP_BYTE_RANGEPHTTP_BYTE_RANGE
 
typedef struct _HTTP_DATA_CHUNK HTTP_DATA_CHUNK
 
typedef struct _HTTP_DATA_CHUNKPHTTP_DATA_CHUNK
 
typedef struct _HTTP_SSL_CLIENT_CERT_INFO HTTP_SSL_CLIENT_CERT_INFO
 
typedef struct _HTTP_SSL_CLIENT_CERT_INFOPHTTP_SSL_CLIENT_CERT_INFO
 
typedef struct _HTTP_SSL_INFO HTTP_SSL_INFO
 
typedef struct _HTTP_SSL_INFOPHTTP_SSL_INFO
 
typedef struct _HTTP_REQUEST_V1 HTTP_REQUEST_V1
 
typedef enum _HTTP_REQUEST_INFO_TYPE HTTP_REQUEST_INFO_TYPE
 
typedef enum _HTTP_REQUEST_INFO_TYPEPHTTP_REQUEST_INFO_TYPE
 
typedef struct _HTTP_REQUEST_INFO HTTP_REQUEST_INFO
 
typedef struct _HTTP_REQUEST_INFOPHTTP_REQUEST_INFO
 
typedef struct _HTTP_REQUEST_V2 HTTP_REQUEST_V2
 
typedef struct _HTTP_REQUEST_V2PHTTP_REQUEST_V2
 
typedef HTTP_REQUEST_V2 HTTP_REQUEST
 
typedef HTTP_REQUEST_V2PHTTP_REQUEST
 
typedef struct _HTTP_RESPONSE_HEADERS HTTP_RESPONSE_HEADERS
 
typedef struct _HTTP_RESPONSE_HEADERSPHTTP_RESPONSE_HEADERS
 
typedef struct _HTTP_RESPONSE_V1 HTTP_RESPONSE_V1
 
typedef struct _HTTP_RESPONSE_V1PHTTP_RESPONSE_V1
 
typedef enum _HTTP_RESPONSE_INFO_TYPE HTTP_RESPONSE_INFO_TYPE
 
typedef enum _HTTP_RESPONSE_INFO_TYPEPHTTP_RESPONSE_INFO_TYPE
 
typedef struct _HTTP_RESPONSE_INFO HTTP_RESPONSE_INFO
 
typedef struct _HTTP_RESPONSE_INFOPHTTP_RESPONSE_INFO
 
typedef struct _HTTP_RESPONSE_V2 HTTP_RESPONSE_V2
 
typedef struct _HTTP_RESPONSE_V2PHTTP_RESPONSE_V2
 
typedef HTTP_RESPONSE_V2 HTTP_RESPONSE
 
typedef HTTP_RESPONSE_V2PHTTP_RESPONSE
 
typedef enum _HTTP_CACHE_POLICY_TYPE HTTP_CACHE_POLICY_TYPE
 
typedef enum _HTTP_CACHE_POLICY_TYPEPHTTP_CACHE_POLICY_TYPE
 
typedef struct _HTTP_CACHE_POLICY HTTP_CACHE_POLICY
 
typedef struct _HTTP_CACHE_POLICYPHTTP_CACHE_POLICY
 
typedef enum _HTTP_LOG_DATA_TYPE HTTP_LOG_DATA_TYPE
 
typedef enum _HTTP_LOG_DATA_TYPEPHTTP_LOG_DATA_TYPE
 
typedef struct _HTTP_LOG_DATA HTTP_LOG_DATA
 
typedef struct _HTTP_LOG_DATAPHTTP_LOG_DATA
 
typedef enum _HTTP_SERVER_PROPERTY HTTP_SERVER_PROPERTY
 
typedef enum _HTTP_SERVER_PROPERTYPHTTP_SERVER_PROPERTY
 
typedef struct _HTTP_PROPERTY_FLAGS HTTP_PROPERTY_FLAGS
 
typedef struct _HTTP_PROPERTY_FLAGSPHTTP_PROPERTY_FLAGS
 
typedef struct _HTTP_BINDING_INFO HTTP_BINDING_INFO
 
typedef struct _HTTP_BINDING_INFOPHTTP_BINDING_INFO
 

Enumerations

enum  _HTTP_SERVICE_CONFIG_ID {
  HttpServiceConfigIPListenList , HttpServiceConfigSSLCertInfo , HttpServiceConfigUrlAclInfo , HttpServiceConfigTimeout ,
  HttpServiceConfigMax
}
 
enum  _HTTP_VERB {
  HttpVerbUnparsed = 0 , HttpVerbUnknown , HttpVerbInvalid , HttpVerbOPTIONS ,
  HttpVerbGET , HttpVerbHEAD , HttpVerbPOST , HttpVerbPUT ,
  HttpVerbDELETE , HttpVerbTRACE , HttpVerbCONNECT , HttpVerbTRACK ,
  HttpVerbMOVE , HttpVerbCOPY , HttpVerbPROPFIND , HttpVerbPROPPATCH ,
  HttpVerbMKCOL , HttpVerbLOCK , HttpVerbUNLOCK , HttpVerbSEARCH ,
  HttpVerbMaximum
}
 
enum  _HTTP_HEADER_ID {
  HttpHeaderCacheControl = 0 , HttpHeaderConnection = 1 , HttpHeaderDate = 2 , HttpHeaderKeepAlive = 3 ,
  HttpHeaderPragma = 4 , HttpHeaderTrailer = 5 , HttpHeaderTransferEncoding = 6 , HttpHeaderUpgrade = 7 ,
  HttpHeaderVia = 8 , HttpHeaderWarning = 9 , HttpHeaderAllow = 10 , HttpHeaderContentLength = 11 ,
  HttpHeaderContentType = 12 , HttpHeaderContentEncoding = 13 , HttpHeaderContentLanguage = 14 , HttpHeaderContentLocation = 15 ,
  HttpHeaderContentMd5 = 16 , HttpHeaderContentRange = 17 , HttpHeaderExpires = 18 , HttpHeaderLastModified = 19 ,
  HttpHeaderAccept = 20 , HttpHeaderAcceptCharset = 21 , HttpHeaderAcceptEncoding = 22 , HttpHeaderAcceptLanguage = 23 ,
  HttpHeaderAuthorization = 24 , HttpHeaderCookie = 25 , HttpHeaderExpect = 26 , HttpHeaderFrom = 27 ,
  HttpHeaderHost = 28 , HttpHeaderIfMatch = 29 , HttpHeaderIfModifiedSince = 30 , HttpHeaderIfNoneMatch = 31 ,
  HttpHeaderIfRange = 32 , HttpHeaderIfUnmodifiedSince = 33 , HttpHeaderMaxForwards = 34 , HttpHeaderProxyAuthorization = 35 ,
  HttpHeaderReferer = 36 , HttpHeaderRange = 37 , HttpHeaderTe = 38 , HttpHeaderTranslate = 39 ,
  HttpHeaderUserAgent = 40 , HttpHeaderRequestMaximum = 41 , HttpHeaderAcceptRanges = 20 , HttpHeaderAge = 21 ,
  HttpHeaderEtag = 22 , HttpHeaderLocation = 23 , HttpHeaderProxyAuthenticate = 24 , HttpHeaderRetryAfter = 25 ,
  HttpHeaderServer = 26 , HttpHeaderSetCookie = 27 , HttpHeaderVary = 28 , HttpHeaderWwwAuthenticate = 29 ,
  HttpHeaderResponseMaximum = 30 , HttpHeaderMaximum = 41
}
 
enum  _HTTP_DATA_CHUNK_TYPE {
  HttpDataChunkFromMemory = 0 , HttpDataChunkFromFileHandle , HttpDataChunkFromFragmentCache , HttpDataChunkFromFragmentCacheEx ,
  HttpDataChunkMaximum
}
 
enum  _HTTP_REQUEST_INFO_TYPE { HttpRequestInfoTypeAuth = 0 }
 
enum  _HTTP_RESPONSE_INFO_TYPE { HttpResponseInfoTypeMultipleKnownHeaders = 0 , HttpResponseInfoTypeAuthenticationProperty , HttpResponseInfoTypeQosProperty , HttpResponseInfoTypeChannelBind }
 
enum  _HTTP_CACHE_POLICY_TYPE { HttpCachePolicyNocache , HttpCachePolicyUserInvalidates , HttpCachePolicyTimeToLive , HttpCachePolicyMaximum }
 
enum  _HTTP_LOG_DATA_TYPE { HttpLogDataTypeFields = 0 }
 
enum  _HTTP_SERVER_PROPERTY {
  HttpServerAuthenticationProperty , HttpServerLoggingProperty , HttpServerQosProperty , HttpServerTimeoutsProperty ,
  HttpServerQueueLengthProperty , HttpServerStateProperty , HttpServer503VerbosityProperty , HttpServerBindingProperty ,
  HttpServerExtendedAuthenticationProperty , HttpServerListenEndpointProperty , HttpServerChannelBindProperty , HttpServerProtectionLevelProperty
}
 

Functions

ULONG WINAPI HttpAddUrl (HANDLE, PCWSTR, PVOID)
 
ULONG WINAPI HttpAddUrlToUrlGroup (HTTP_URL_GROUP_ID id, const WCHAR *url, HTTP_URL_CONTEXT context, ULONG reserved)
 
ULONG WINAPI HttpCloseRequestQueue (HANDLE handle)
 
ULONG WINAPI HttpCloseServerSession (HTTP_SERVER_SESSION_ID id)
 
ULONG WINAPI HttpCloseUrlGroup (HTTP_URL_GROUP_ID id)
 
ULONG WINAPI HttpCreateHttpHandle (PHANDLE, ULONG)
 
ULONG WINAPI HttpCreateRequestQueue (HTTPAPI_VERSION version, const WCHAR *name, SECURITY_ATTRIBUTES *sa, ULONG flags, HANDLE *handle)
 
ULONG WINAPI HttpCreateServerSession (HTTPAPI_VERSION, PHTTP_SERVER_SESSION_ID, ULONG)
 
ULONG WINAPI HttpCreateUrlGroup (HTTP_SERVER_SESSION_ID session_id, HTTP_URL_GROUP_ID *group_id, ULONG reserved)
 
ULONG WINAPI HttpDeleteServiceConfiguration (HANDLE, HTTP_SERVICE_CONFIG_ID, PVOID, ULONG, LPOVERLAPPED)
 
ULONG WINAPI HttpInitialize (HTTPAPI_VERSION version, ULONG flags, void *reserved)
 
ULONG WINAPI HttpTerminate (ULONG flags, void *reserved)
 
ULONG WINAPI HttpQueryServiceConfiguration (HANDLE, HTTP_SERVICE_CONFIG_ID, PVOID, ULONG, PVOID, ULONG, PULONG, LPOVERLAPPED)
 
ULONG WINAPI HttpReceiveHttpRequest (HANDLE queue, HTTP_REQUEST_ID id, ULONG flags, HTTP_REQUEST *request, ULONG size, ULONG *ret_size, OVERLAPPED *ovl)
 
ULONG WINAPI HttpRemoveUrl (HANDLE queue, const WCHAR *url)
 
ULONG WINAPI HttpRemoveUrlFromUrlGroup (HTTP_URL_GROUP_ID id, const WCHAR *url, ULONG flags)
 
ULONG WINAPI HttpSendHttpResponse (HANDLE queue, HTTP_REQUEST_ID id, ULONG flags, HTTP_RESPONSE *response, HTTP_CACHE_POLICY *cache_policy, ULONG *ret_size, void *reserved1, ULONG reserved2, OVERLAPPED *ovl, HTTP_LOG_DATA *log_data)
 
ULONG WINAPI HttpSetServiceConfiguration (HANDLE, HTTP_SERVICE_CONFIG_ID, PVOID, ULONG, LPOVERLAPPED)
 
ULONG WINAPI HttpSetUrlGroupProperty (HTTP_URL_GROUP_ID id, HTTP_SERVER_PROPERTY property, void *value, ULONG length)
 

Macro Definition Documentation

◆ HTTP_BYTE_RANGE_TO_EOF

#define HTTP_BYTE_RANGE_TO_EOF   ((ULONGLONG)-1)

Definition at line 223 of file http.h.

◆ HTTP_CREATE_REQUEST_QUEUE_FLAG_CONTROLLER

#define HTTP_CREATE_REQUEST_QUEUE_FLAG_CONTROLLER   0x00000002

Definition at line 41 of file http.h.

◆ HTTP_CREATE_REQUEST_QUEUE_FLAG_OPEN_EXISTING

#define HTTP_CREATE_REQUEST_QUEUE_FLAG_OPEN_EXISTING   0x00000001

Definition at line 40 of file http.h.

◆ HTTP_INITIALIZE_CONFIG

#define HTTP_INITIALIZE_CONFIG   0x00000002

Definition at line 44 of file http.h.

◆ HTTP_INITIALIZE_SERVER

#define HTTP_INITIALIZE_SERVER   0x00000001

Definition at line 43 of file http.h.

◆ HTTP_NULL_ID

#define HTTP_NULL_ID   ((ULONGLONG)0)

Definition at line 71 of file http.h.

◆ HTTP_RECEIVE_REQUEST_FLAG_COPY_BODY

#define HTTP_RECEIVE_REQUEST_FLAG_COPY_BODY   0x00000001

Definition at line 46 of file http.h.

◆ HTTP_RECEIVE_REQUEST_FLAG_FLUSH_BODY

#define HTTP_RECEIVE_REQUEST_FLAG_FLUSH_BODY   0x00000002

Definition at line 47 of file http.h.

◆ HTTP_REQUEST_FLAG_HTTP2

#define HTTP_REQUEST_FLAG_HTTP2   0x00000004

Definition at line 51 of file http.h.

◆ HTTP_REQUEST_FLAG_IP_ROUTED

#define HTTP_REQUEST_FLAG_IP_ROUTED   0x00000002

Definition at line 50 of file http.h.

◆ HTTP_REQUEST_FLAG_MORE_ENTITY_BODY_EXISTS

#define HTTP_REQUEST_FLAG_MORE_ENTITY_BODY_EXISTS   0x00000001

Definition at line 49 of file http.h.

◆ HTTP_SEND_RESPONSE_FLAG_BUFFER_DATA

#define HTTP_SEND_RESPONSE_FLAG_BUFFER_DATA   0x00000004

Definition at line 55 of file http.h.

◆ HTTP_SEND_RESPONSE_FLAG_DISCONNECT

#define HTTP_SEND_RESPONSE_FLAG_DISCONNECT   0x00000001

Definition at line 53 of file http.h.

◆ HTTP_SEND_RESPONSE_FLAG_ENABLE_NAGLING

#define HTTP_SEND_RESPONSE_FLAG_ENABLE_NAGLING   0x00000008

Definition at line 56 of file http.h.

◆ HTTP_SEND_RESPONSE_FLAG_MORE_DATA

#define HTTP_SEND_RESPONSE_FLAG_MORE_DATA   0x00000002

Definition at line 54 of file http.h.

◆ HTTP_SEND_RESPONSE_FLAG_OPAQUE

#define HTTP_SEND_RESPONSE_FLAG_OPAQUE   0x00000040

Definition at line 58 of file http.h.

◆ HTTP_SEND_RESPONSE_FLAG_PROCESS_RANGES

#define HTTP_SEND_RESPONSE_FLAG_PROCESS_RANGES   0x00000020

Definition at line 57 of file http.h.

◆ HTTP_URL_FLAG_REMOVE_ALL

#define HTTP_URL_FLAG_REMOVE_ALL   0x0000001

Definition at line 60 of file http.h.

◆ HTTPAPI_VERSION_1

#define HTTPAPI_VERSION_1   {1,0}

Definition at line 37 of file http.h.

◆ HTTPAPI_VERSION_2

#define HTTPAPI_VERSION_2   {2,0}

Definition at line 38 of file http.h.

Typedef Documentation

◆ HTTP_BINDING_INFO

◆ HTTP_BYTE_RANGE

◆ HTTP_CACHE_POLICY

◆ HTTP_CACHE_POLICY_TYPE

◆ HTTP_CONNECTION_ID

Definition at line 74 of file http.h.

◆ HTTP_COOKED_URL

◆ HTTP_DATA_CHUNK

◆ HTTP_DATA_CHUNK_TYPE

◆ HTTP_HEADER_ID

◆ HTTP_KNOWN_HEADER

◆ HTTP_LOG_DATA

◆ HTTP_LOG_DATA_TYPE

◆ HTTP_OPAQUE_ID

Definition at line 73 of file http.h.

◆ HTTP_PROPERTY_FLAGS

◆ HTTP_RAW_CONNECTION_ID

Definition at line 75 of file http.h.

◆ HTTP_REQUEST

Definition at line 324 of file http.h.

◆ HTTP_REQUEST_HEADERS

◆ HTTP_REQUEST_ID

Definition at line 76 of file http.h.

◆ HTTP_REQUEST_INFO

◆ HTTP_REQUEST_INFO_TYPE

◆ HTTP_REQUEST_V1

◆ HTTP_REQUEST_V2

◆ HTTP_RESPONSE

Definition at line 377 of file http.h.

◆ HTTP_RESPONSE_HEADERS

◆ HTTP_RESPONSE_INFO

◆ HTTP_RESPONSE_INFO_TYPE

◆ HTTP_RESPONSE_V1

◆ HTTP_RESPONSE_V2

◆ HTTP_SERVER_PROPERTY

◆ HTTP_SERVER_SESSION_ID

Definition at line 77 of file http.h.

◆ HTTP_SERVICE_CONFIG_ID

◆ HTTP_SSL_CLIENT_CERT_INFO

◆ HTTP_SSL_INFO

◆ HTTP_TRANSPORT_ADDRESS

◆ HTTP_UNKNOWN_HEADER

◆ HTTP_URL_CONTEXT

Definition at line 79 of file http.h.

◆ HTTP_URL_GROUP_ID

Definition at line 78 of file http.h.

◆ HTTP_VERB

◆ HTTP_VERSION

◆ HTTPAPI_VERSION

◆ PHTTP_BINDING_INFO

◆ PHTTP_BYTE_RANGE

◆ PHTTP_CACHE_POLICY

◆ PHTTP_CACHE_POLICY_TYPE

◆ PHTTP_CONNECTION_ID

Definition at line 74 of file http.h.

◆ PHTTP_COOKED_URL

◆ PHTTP_DATA_CHUNK

◆ PHTTP_DATA_CHUNK_TYPE

◆ PHTTP_HEADER_ID

◆ PHTTP_KNOWN_HEADER

◆ PHTTP_LOG_DATA

◆ PHTTP_LOG_DATA_TYPE

◆ PHTTP_OPAQUE_ID

Definition at line 73 of file http.h.

◆ PHTTP_PROPERTY_FLAGS

◆ PHTTP_RAW_CONNECTION_ID

Definition at line 75 of file http.h.

◆ PHTTP_REQUEST

Definition at line 324 of file http.h.

◆ PHTTP_REQUEST_HEADERS

◆ PHTTP_REQUEST_ID

Definition at line 76 of file http.h.

◆ PHTTP_REQUEST_INFO

◆ PHTTP_REQUEST_INFO_TYPE

◆ PHTTP_REQUEST_V2

◆ PHTTP_RESPONSE

Definition at line 377 of file http.h.

◆ PHTTP_RESPONSE_HEADERS

◆ PHTTP_RESPONSE_INFO

◆ PHTTP_RESPONSE_INFO_TYPE

◆ PHTTP_RESPONSE_V1

◆ PHTTP_RESPONSE_V2

◆ PHTTP_SERVER_PROPERTY

◆ PHTTP_SERVER_SESSION_ID

Definition at line 77 of file http.h.

◆ PHTTP_SERVICE_CONFIG_ID

◆ PHTTP_SSL_CLIENT_CERT_INFO

◆ PHTTP_SSL_INFO

◆ PHTTP_TRANSPORT_ADDRESS

◆ PHTTP_UNKNOWN_HEADER

◆ PHTTP_URL_GROUP_ID

Definition at line 78 of file http.h.

◆ PHTTP_VERB

◆ PHTTP_VERSION

◆ PHTTPAPI_VERSION

Enumeration Type Documentation

◆ _HTTP_CACHE_POLICY_TYPE

Enumerator
HttpCachePolicyNocache 
HttpCachePolicyUserInvalidates 
HttpCachePolicyTimeToLive 
HttpCachePolicyMaximum 

Definition at line 379 of file http.h.

380{
enum _HTTP_CACHE_POLICY_TYPE HTTP_CACHE_POLICY_TYPE
enum _HTTP_CACHE_POLICY_TYPE * PHTTP_CACHE_POLICY_TYPE
@ HttpCachePolicyMaximum
Definition: http.h:384
@ HttpCachePolicyUserInvalidates
Definition: http.h:382
@ HttpCachePolicyNocache
Definition: http.h:381
@ HttpCachePolicyTimeToLive
Definition: http.h:383

◆ _HTTP_DATA_CHUNK_TYPE

Enumerator
HttpDataChunkFromMemory 
HttpDataChunkFromFileHandle 
HttpDataChunkFromFragmentCache 
HttpDataChunkFromFragmentCacheEx 
HttpDataChunkMaximum 

Definition at line 214 of file http.h.

215{
@ HttpDataChunkFromFragmentCache
Definition: http.h:218
@ HttpDataChunkFromMemory
Definition: http.h:216
@ HttpDataChunkMaximum
Definition: http.h:220
@ HttpDataChunkFromFileHandle
Definition: http.h:217
@ HttpDataChunkFromFragmentCacheEx
Definition: http.h:219
enum _HTTP_DATA_CHUNK_TYPE HTTP_DATA_CHUNK_TYPE
enum _HTTP_DATA_CHUNK_TYPE * PHTTP_DATA_CHUNK_TYPE

◆ _HTTP_HEADER_ID

Enumerator
HttpHeaderCacheControl 
HttpHeaderConnection 
HttpHeaderDate 
HttpHeaderKeepAlive 
HttpHeaderPragma 
HttpHeaderTrailer 
HttpHeaderTransferEncoding 
HttpHeaderUpgrade 
HttpHeaderVia 
HttpHeaderWarning 
HttpHeaderAllow 
HttpHeaderContentLength 
HttpHeaderContentType 
HttpHeaderContentEncoding 
HttpHeaderContentLanguage 
HttpHeaderContentLocation 
HttpHeaderContentMd5 
HttpHeaderContentRange 
HttpHeaderExpires 
HttpHeaderLastModified 
HttpHeaderAccept 
HttpHeaderAcceptCharset 
HttpHeaderAcceptEncoding 
HttpHeaderAcceptLanguage 
HttpHeaderAuthorization 
HttpHeaderCookie 
HttpHeaderExpect 
HttpHeaderFrom 
HttpHeaderHost 
HttpHeaderIfMatch 
HttpHeaderIfModifiedSince 
HttpHeaderIfNoneMatch 
HttpHeaderIfRange 
HttpHeaderIfUnmodifiedSince 
HttpHeaderMaxForwards 
HttpHeaderProxyAuthorization 
HttpHeaderReferer 
HttpHeaderRange 
HttpHeaderTe 
HttpHeaderTranslate 
HttpHeaderUserAgent 
HttpHeaderRequestMaximum 
HttpHeaderAcceptRanges 
HttpHeaderAge 
HttpHeaderEtag 
HttpHeaderLocation 
HttpHeaderProxyAuthenticate 
HttpHeaderRetryAfter 
HttpHeaderServer 
HttpHeaderSetCookie 
HttpHeaderVary 
HttpHeaderWwwAuthenticate 
HttpHeaderResponseMaximum 
HttpHeaderMaximum 

Definition at line 144 of file http.h.

145{
148 HttpHeaderDate = 2,
154 HttpHeaderVia = 8,
156 HttpHeaderAllow = 10,
166
167 HttpHeaderAccept = 20,
172 HttpHeaderCookie = 25,
173 HttpHeaderExpect = 26,
174 HttpHeaderFrom = 27,
175 HttpHeaderHost = 28,
184 HttpHeaderRange = 37,
185 HttpHeaderTe = 38,
189
191 HttpHeaderAge = 21,
192 HttpHeaderEtag = 22,
196 HttpHeaderServer = 26,
198 HttpHeaderVary = 28,
201
@ HttpHeaderDate
Definition: http.h:148
@ HttpHeaderTransferEncoding
Definition: http.h:152
@ HttpHeaderIfRange
Definition: http.h:179
@ HttpHeaderContentLanguage
Definition: http.h:160
@ HttpHeaderAccept
Definition: http.h:167
@ HttpHeaderWarning
Definition: http.h:155
@ HttpHeaderIfUnmodifiedSince
Definition: http.h:180
@ HttpHeaderLocation
Definition: http.h:193
@ HttpHeaderCacheControl
Definition: http.h:146
@ HttpHeaderReferer
Definition: http.h:183
@ HttpHeaderHost
Definition: http.h:175
@ HttpHeaderVary
Definition: http.h:198
@ HttpHeaderTrailer
Definition: http.h:151
@ HttpHeaderIfModifiedSince
Definition: http.h:177
@ HttpHeaderAcceptEncoding
Definition: http.h:169
@ HttpHeaderContentLocation
Definition: http.h:161
@ HttpHeaderIfMatch
Definition: http.h:176
@ HttpHeaderAge
Definition: http.h:191
@ HttpHeaderAcceptRanges
Definition: http.h:190
@ HttpHeaderLastModified
Definition: http.h:165
@ HttpHeaderUpgrade
Definition: http.h:153
@ HttpHeaderKeepAlive
Definition: http.h:149
@ HttpHeaderIfNoneMatch
Definition: http.h:178
@ HttpHeaderRetryAfter
Definition: http.h:195
@ HttpHeaderContentEncoding
Definition: http.h:159
@ HttpHeaderContentLength
Definition: http.h:157
@ HttpHeaderAllow
Definition: http.h:156
@ HttpHeaderProxyAuthenticate
Definition: http.h:194
@ HttpHeaderEtag
Definition: http.h:192
@ HttpHeaderAcceptLanguage
Definition: http.h:170
@ HttpHeaderTranslate
Definition: http.h:186
@ HttpHeaderSetCookie
Definition: http.h:197
@ HttpHeaderAuthorization
Definition: http.h:171
@ HttpHeaderExpect
Definition: http.h:173
@ HttpHeaderTe
Definition: http.h:185
@ HttpHeaderResponseMaximum
Definition: http.h:200
@ HttpHeaderContentRange
Definition: http.h:163
@ HttpHeaderRange
Definition: http.h:184
@ HttpHeaderRequestMaximum
Definition: http.h:188
@ HttpHeaderFrom
Definition: http.h:174
@ HttpHeaderCookie
Definition: http.h:172
@ HttpHeaderContentType
Definition: http.h:158
@ HttpHeaderServer
Definition: http.h:196
@ HttpHeaderExpires
Definition: http.h:164
@ HttpHeaderMaximum
Definition: http.h:202
@ HttpHeaderMaxForwards
Definition: http.h:181
@ HttpHeaderContentMd5
Definition: http.h:162
@ HttpHeaderAcceptCharset
Definition: http.h:168
@ HttpHeaderUserAgent
Definition: http.h:187
@ HttpHeaderVia
Definition: http.h:154
@ HttpHeaderProxyAuthorization
Definition: http.h:182
@ HttpHeaderConnection
Definition: http.h:147
@ HttpHeaderPragma
Definition: http.h:150
@ HttpHeaderWwwAuthenticate
Definition: http.h:199
enum _HTTP_HEADER_ID HTTP_HEADER_ID
enum _HTTP_HEADER_ID * PHTTP_HEADER_ID

◆ _HTTP_LOG_DATA_TYPE

Enumerator
HttpLogDataTypeFields 

Definition at line 393 of file http.h.

394{
@ HttpLogDataTypeFields
Definition: http.h:395
enum _HTTP_LOG_DATA_TYPE * PHTTP_LOG_DATA_TYPE
enum _HTTP_LOG_DATA_TYPE HTTP_LOG_DATA_TYPE

◆ _HTTP_REQUEST_INFO_TYPE

Enumerator
HttpRequestInfoTypeAuth 

Definition at line 297 of file http.h.

298{
enum _HTTP_REQUEST_INFO_TYPE HTTP_REQUEST_INFO_TYPE
enum _HTTP_REQUEST_INFO_TYPE * PHTTP_REQUEST_INFO_TYPE
@ HttpRequestInfoTypeAuth
Definition: http.h:299

◆ _HTTP_RESPONSE_INFO_TYPE

Enumerator
HttpResponseInfoTypeMultipleKnownHeaders 
HttpResponseInfoTypeAuthenticationProperty 
HttpResponseInfoTypeQosProperty 
HttpResponseInfoTypeChannelBind 

Definition at line 347 of file http.h.

348{
@ HttpResponseInfoTypeMultipleKnownHeaders
Definition: http.h:349
@ HttpResponseInfoTypeChannelBind
Definition: http.h:352
@ HttpResponseInfoTypeAuthenticationProperty
Definition: http.h:350
@ HttpResponseInfoTypeQosProperty
Definition: http.h:351
enum _HTTP_RESPONSE_INFO_TYPE HTTP_RESPONSE_INFO_TYPE
enum _HTTP_RESPONSE_INFO_TYPE * PHTTP_RESPONSE_INFO_TYPE

◆ _HTTP_SERVER_PROPERTY

Enumerator
HttpServerAuthenticationProperty 
HttpServerLoggingProperty 
HttpServerQosProperty 
HttpServerTimeoutsProperty 
HttpServerQueueLengthProperty 
HttpServerStateProperty 
HttpServer503VerbosityProperty 
HttpServerBindingProperty 
HttpServerExtendedAuthenticationProperty 
HttpServerListenEndpointProperty 
HttpServerChannelBindProperty 
HttpServerProtectionLevelProperty 

Definition at line 403 of file http.h.

404{
enum _HTTP_SERVER_PROPERTY HTTP_SERVER_PROPERTY
enum _HTTP_SERVER_PROPERTY * PHTTP_SERVER_PROPERTY
@ HttpServerQueueLengthProperty
Definition: http.h:409
@ HttpServerBindingProperty
Definition: http.h:412
@ HttpServerLoggingProperty
Definition: http.h:406
@ HttpServerExtendedAuthenticationProperty
Definition: http.h:413
@ HttpServerStateProperty
Definition: http.h:410
@ HttpServerChannelBindProperty
Definition: http.h:415
@ HttpServer503VerbosityProperty
Definition: http.h:411
@ HttpServerListenEndpointProperty
Definition: http.h:414
@ HttpServerQosProperty
Definition: http.h:407
@ HttpServerTimeoutsProperty
Definition: http.h:408
@ HttpServerAuthenticationProperty
Definition: http.h:405
@ HttpServerProtectionLevelProperty
Definition: http.h:416

◆ _HTTP_SERVICE_CONFIG_ID

Enumerator
HttpServiceConfigIPListenList 
HttpServiceConfigSSLCertInfo 
HttpServiceConfigUrlAclInfo 
HttpServiceConfigTimeout 
HttpServiceConfigMax 

Definition at line 62 of file http.h.

63{
@ HttpServiceConfigMax
Definition: http.h:68
@ HttpServiceConfigIPListenList
Definition: http.h:64
@ HttpServiceConfigTimeout
Definition: http.h:67
@ HttpServiceConfigSSLCertInfo
Definition: http.h:65
@ HttpServiceConfigUrlAclInfo
Definition: http.h:66
enum _HTTP_SERVICE_CONFIG_ID * PHTTP_SERVICE_CONFIG_ID
enum _HTTP_SERVICE_CONFIG_ID HTTP_SERVICE_CONFIG_ID

◆ _HTTP_VERB

Enumerator
HttpVerbUnparsed 
HttpVerbUnknown 
HttpVerbInvalid 
HttpVerbOPTIONS 
HttpVerbGET 
HttpVerbHEAD 
HttpVerbPOST 
HttpVerbPUT 
HttpVerbDELETE 
HttpVerbTRACE 
HttpVerbCONNECT 
HttpVerbTRACK 
HttpVerbMOVE 
HttpVerbCOPY 
HttpVerbPROPFIND 
HttpVerbPROPPATCH 
HttpVerbMKCOL 
HttpVerbLOCK 
HttpVerbUNLOCK 
HttpVerbSEARCH 
HttpVerbMaximum 

Definition at line 87 of file http.h.

88{
enum _HTTP_VERB HTTP_VERB
@ HttpVerbMKCOL
Definition: http.h:105
@ HttpVerbUnparsed
Definition: http.h:89
@ HttpVerbUNLOCK
Definition: http.h:107
@ HttpVerbMaximum
Definition: http.h:109
@ HttpVerbGET
Definition: http.h:93
@ HttpVerbTRACE
Definition: http.h:98
@ HttpVerbCONNECT
Definition: http.h:99
@ HttpVerbSEARCH
Definition: http.h:108
@ HttpVerbPUT
Definition: http.h:96
@ HttpVerbHEAD
Definition: http.h:94
@ HttpVerbInvalid
Definition: http.h:91
@ HttpVerbTRACK
Definition: http.h:100
@ HttpVerbUnknown
Definition: http.h:90
@ HttpVerbLOCK
Definition: http.h:106
@ HttpVerbPOST
Definition: http.h:95
@ HttpVerbOPTIONS
Definition: http.h:92
@ HttpVerbCOPY
Definition: http.h:102
@ HttpVerbMOVE
Definition: http.h:101
@ HttpVerbPROPPATCH
Definition: http.h:104
@ HttpVerbDELETE
Definition: http.h:97
@ HttpVerbPROPFIND
Definition: http.h:103
enum _HTTP_VERB * PHTTP_VERB

Function Documentation

◆ HttpAddUrl()

ULONG WINAPI HttpAddUrl ( HANDLE  ,
PCWSTR  ,
PVOID   
)

◆ HttpAddUrlToUrlGroup()

ULONG WINAPI HttpAddUrlToUrlGroup ( HTTP_URL_GROUP_ID  id,
const WCHAR url,
HTTP_URL_CONTEXT  context,
ULONG  reserved 
)

◆ HttpCloseRequestQueue()

ULONG WINAPI HttpCloseRequestQueue ( HANDLE  handle)

◆ HttpCloseServerSession()

ULONG WINAPI HttpCloseServerSession ( HTTP_SERVER_SESSION_ID  id)

◆ HttpCloseUrlGroup()

ULONG WINAPI HttpCloseUrlGroup ( HTTP_URL_GROUP_ID  id)

◆ HttpCreateHttpHandle()

ULONG WINAPI HttpCreateHttpHandle ( PHANDLE  ,
ULONG   
)

◆ HttpCreateRequestQueue()

ULONG WINAPI HttpCreateRequestQueue ( HTTPAPI_VERSION  version,
const WCHAR name,
SECURITY_ATTRIBUTES sa,
ULONG  flags,
HANDLE handle 
)

◆ HttpCreateServerSession()

ULONG WINAPI HttpCreateServerSession ( HTTPAPI_VERSION  ,
PHTTP_SERVER_SESSION_ID  ,
ULONG   
)

◆ HttpCreateUrlGroup()

ULONG WINAPI HttpCreateUrlGroup ( HTTP_SERVER_SESSION_ID  session_id,
HTTP_URL_GROUP_ID group_id,
ULONG  reserved 
)

◆ HttpDeleteServiceConfiguration()

ULONG WINAPI HttpDeleteServiceConfiguration ( HANDLE  ,
HTTP_SERVICE_CONFIG_ID  ,
PVOID  ,
ULONG  ,
LPOVERLAPPED   
)

◆ HttpInitialize()

ULONG WINAPI HttpInitialize ( HTTPAPI_VERSION  version,
ULONG  flags,
void reserved 
)

◆ HttpQueryServiceConfiguration()

ULONG WINAPI HttpQueryServiceConfiguration ( HANDLE  ,
HTTP_SERVICE_CONFIG_ID  ,
PVOID  ,
ULONG  ,
PVOID  ,
ULONG  ,
PULONG  ,
LPOVERLAPPED   
)

◆ HttpReceiveHttpRequest()

ULONG WINAPI HttpReceiveHttpRequest ( HANDLE  queue,
HTTP_REQUEST_ID  id,
ULONG  flags,
HTTP_REQUEST request,
ULONG  size,
ULONG ret_size,
OVERLAPPED ovl 
)

◆ HttpRemoveUrl()

ULONG WINAPI HttpRemoveUrl ( HANDLE  queue,
const WCHAR url 
)

◆ HttpRemoveUrlFromUrlGroup()

ULONG WINAPI HttpRemoveUrlFromUrlGroup ( HTTP_URL_GROUP_ID  id,
const WCHAR url,
ULONG  flags 
)

◆ HttpSendHttpResponse()

ULONG WINAPI HttpSendHttpResponse ( HANDLE  queue,
HTTP_REQUEST_ID  id,
ULONG  flags,
HTTP_RESPONSE response,
HTTP_CACHE_POLICY cache_policy,
ULONG ret_size,
void reserved1,
ULONG  reserved2,
OVERLAPPED ovl,
HTTP_LOG_DATA log_data 
)

◆ HttpSetServiceConfiguration()

ULONG WINAPI HttpSetServiceConfiguration ( HANDLE  ,
HTTP_SERVICE_CONFIG_ID  ,
PVOID  ,
ULONG  ,
LPOVERLAPPED   
)

◆ HttpSetUrlGroupProperty()

ULONG WINAPI HttpSetUrlGroupProperty ( HTTP_URL_GROUP_ID  id,
HTTP_SERVER_PROPERTY  property,
void value,
ULONG  length 
)

◆ HttpTerminate()

ULONG WINAPI HttpTerminate ( ULONG  flags,
void reserved 
)