#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "ws2tcpip.h"
#include "winhttp.h"
#include "wine/debug.h"
#include "winhttp_private.h"
Go to the source code of this file.
◆ HANDLE_CHUNK_SIZE
| #define HANDLE_CHUNK_SIZE 0x10 |
◆ addref_object()
◆ alloc_handle()
Definition at line 86 of file handle.c.
87{
90
92
95 {
100 }
102 {
110 }
113
117
121}
static CRITICAL_SECTION handle_cs
#define HANDLE_CHUNK_SIZE
static struct object_header ** handles
static ULONG_PTR max_handles
struct object_header * addref_object(struct object_header *hdr)
static ULONG_PTR next_handle
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
◆ free_handle()
Definition at line 123 of file handle.c.
124{
128
130
132 {
135 {
137 TRACE(
"destroying handle %Ix for object %p\n",
handle + 1,
hdr );
140 }
141 }
142
144
146 {
147 if (
hdr->vtbl->handle_closing)
148 hdr->vtbl->handle_closing(
hdr );
150 }
151
155
157}
void release_object(struct object_header *hdr)
Referenced by pqInsert(), and WinHttpCloseHandle().
◆ grab_object()
Definition at line 55 of file handle.c.
Referenced by WinHttpAddRequestHeaders(), WinHttpCloseHandle(), WinHttpConnect(), WinHttpGetProxyForUrl(), WinHttpOpenRequest(), WinHttpQueryAuthSchemes(), WinHttpQueryDataAvailable(), WinHttpQueryHeaders(), WinHttpQueryOption(), WinHttpReadData(), WinHttpReceiveResponse(), WinHttpSendRequest(), WinHttpSetCredentials(), WinHttpSetOption(), WinHttpSetStatusCallback(), WinHttpSetTimeouts(), WinHttpWebSocketClose(), WinHttpWebSocketCompleteUpgrade(), WinHttpWebSocketQueryCloseStatus(), WinHttpWebSocketReceive(), WinHttpWebSocketSend(), WinHttpWebSocketShutdown(), and WinHttpWriteData().
◆ release_object()
Definition at line 71 of file handle.c.
72{
74 TRACE(
"object %p refcount = %lu\n",
hdr, refs );
75 if (!refs)
76 {
78
80
81 TRACE(
"destroying object %p\n",
hdr );
83 }
84}
#define InterlockedDecrement
static void close_connection(void)
#define WINHTTP_HANDLE_TYPE_REQUEST
#define WINHTTP_CALLBACK_STATUS_HANDLE_CLOSING
Referenced by connect_destroy(), free_handle(), queue_task(), request_destroy(), task_callback(), WinHttpAddRequestHeaders(), WinHttpCloseHandle(), WinHttpConnect(), WinHttpGetProxyForUrl(), WinHttpOpen(), WinHttpOpenRequest(), WinHttpQueryAuthSchemes(), WinHttpQueryDataAvailable(), WinHttpQueryHeaders(), WinHttpQueryOption(), WinHttpReadData(), WinHttpReceiveResponse(), WinHttpSendRequest(), WinHttpSetCredentials(), WinHttpSetOption(), WinHttpSetStatusCallback(), WinHttpSetTimeouts(), WinHttpWebSocketClose(), WinHttpWebSocketCompleteUpgrade(), WinHttpWebSocketQueryCloseStatus(), WinHttpWebSocketReceive(), WinHttpWebSocketSend(), WinHttpWebSocketShutdown(), and WinHttpWriteData().
◆ WINE_DEFAULT_DEBUG_CHANNEL()
| WINE_DEFAULT_DEBUG_CHANNEL |
( |
winhttp |
| ) |
|
◆ handle_cs
◆ handle_cs_debug
Initial value:=
{
0, 0, { (
ULONG_PTR)(__FILE__
": handle_cs") }
}
static CRITICAL_SECTION_DEBUG handle_cs_debug
LIST_ENTRY ProcessLocksList
Definition at line 36 of file handle.c.
◆ handles
◆ max_handles
◆ next_handle