Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
7a3ef9b
Add WebSocket compression build and dependency plumbing
jhugard Apr 16, 2026
b739781
Introduce the websocketpp-backed Windows transport
jhugard Apr 16, 2026
5698ddb
Replace compression flags with explicit WebSocket options
jhugard Apr 16, 2026
818751b
Add WebSocket samples and compression validation coverage
jhugard Apr 16, 2026
a593c5b
Unify deterministic WebSocket behavior on WinHTTP
jhugard Apr 16, 2026
0fa4a01
Update third-party compliance metadata (AI Review)
jhugard Apr 16, 2026
0a76816
Fix WebSocket API issues (AI Review)
jhugard Apr 16, 2026
81436e8
Build hygiene and documentation comments (AI Review)
jhugard Apr 16, 2026
d1e0f90
Simplify WebSocket option flag handling (AI Review)
jhugard Apr 16, 2026
b1b8d97
Handle websocketpp close status consistently
jhugard Apr 22, 2026
c475339
Fix websocket async queue topology
jhugard Apr 23, 2026
10aed2d
Address PR feedback on WebSocket semantics docs
jhugard Apr 24, 2026
5ba0134
Fix websocket connect completion merge
jhugard Apr 24, 2026
6b8a612
Fix no-websockets build variants
jhugard Apr 24, 2026
9fbc9c1
Make hybrid websocket helpers const
jhugard Apr 24, 2026
cdaebe6
Fix strict-mode WinTLS websocket build
jhugard Apr 25, 2026
c90949a
Harden Linux helper scripts for container builds
jhugard Apr 28, 2026
6cdd639
Silence non-GDK curl multi poll warning
jhugard Apr 28, 2026
cc5fa18
Align Apple minizip Xcode wiring
jhugard Apr 28, 2026
5f8ec91
Fix Win32 compression test linker settings
jhugard Apr 28, 2026
fba869d
Reject zero WebSocket receive buffer size
jhugard Apr 28, 2026
bae2321
Disable zstd in Linux curl helper
jhugard Apr 28, 2026
7dad3d9
Silence Apple websocketpp documentation warning
jhugard Apr 28, 2026
ea05d34
Address PR feedback: lock ordering, translate_ec comment, type-erasur…
jhugard Apr 30, 2026
749f8f9
Merge remote-tracking branch 'upstream/main' into websocket-compression
jhugard May 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -157,4 +157,7 @@ Build/**/*.log
packages/

#Exclude copied headers
Samples/GDK-Http/httpClient
Samples/GDK-Http/httpClient

# Keep working planning / handoff docs out of commits
.github/working/
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,6 @@
[submodule "External/zlib"]
path = External/zlib
url = https://github.com/madler/zlib
[submodule "External/boost-wintls"]
path = External/boost-wintls
url = https://github.com/laudrup/boost-wintls.git
Original file line number Diff line number Diff line change
Expand Up @@ -60,12 +60,17 @@ public void disconnect(int closeStatus) {

@Override
public void onOpen(WebSocket webSocket, Response response) {
onOpen();
Headers responseHeaders = response != null ? response.headers() : null;
onOpen(getHeaderNames(responseHeaders), getHeaderValues(responseHeaders));
}

@Override
public void onFailure(WebSocket webSocket, Throwable t, Response response) {
onFailure(response != null ? response.code() : -1);
Headers responseHeaders = response != null ? response.headers() : null;
onFailure(
response != null ? response.code() : -1,
getHeaderNames(responseHeaders),
getHeaderValues(responseHeaders));
}

@Override
Expand Down Expand Up @@ -93,8 +98,8 @@ public void onMessage(WebSocket webSocket, okio.ByteString bytes) {
onBinaryMessage(buffer);
}

public native void onOpen();
public native void onFailure(int statusCode);
public native void onOpen(String[] headerNames, String[] headerValues);
public native void onFailure(int statusCode, String[] headerNames, String[] headerValues);
public native void onClose(int code);
public native void onMessage(String text);
public native void onBinaryMessage(ByteBuffer data);
Expand All @@ -109,4 +114,28 @@ protected void finalize()
private long pingInterval;

private WebSocket socket;

private static String[] getHeaderNames(Headers headers) {
if (headers == null) {
return null;
}

String[] names = new String[headers.size()];
for (int i = 0; i < headers.size(); ++i) {
names[i] = headers.name(i);
}
return names;
}

private static String[] getHeaderValues(Headers headers) {
if (headers == null) {
return null;
}

String[] values = new String[headers.size()];
for (int i = 0; i < headers.size(); ++i) {
values[i] = headers.value(i);
}
return values;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -141,11 +141,15 @@
828CED582AFC484D00CA08B1 /* gzread.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED252AFC484D00CA08B1 /* gzread.c */; settings = {COMPILER_FLAGS = "-Wno-error=implicit-int-conversion -Wno-error=shorten-64-to-32"; }; };
828CED5C2AFC484D00CA08B1 /* adler32.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED262AFC484D00CA08B1 /* adler32.c */; settings = {COMPILER_FLAGS = "-Wno-error=macro-redefined"; }; };
828CED602AFC484D00CA08B1 /* trees.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED272AFC484D00CA08B1 /* trees.c */; settings = {COMPILER_FLAGS = "-Wno-error=comma -Wno-error=macro-redefined"; }; };
828CED612AFC486100CA08B1 /* ioapi.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED632AFC486100CA08B1 /* ioapi.c */; };
828CED652AFC486000CA08B1 /* unzip.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED642AFC486000CA08B1 /* unzip.c */; };
828CED662AFC486000CA08B1 /* unzip.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED642AFC486000CA08B1 /* unzip.c */; };
828CED672AFC486000CA08B1 /* unzip.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED642AFC486000CA08B1 /* unzip.c */; };
828CED682AFC486000CA08B1 /* unzip.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED642AFC486000CA08B1 /* unzip.c */; };
828CED692AFC486100CA08B1 /* ioapi.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED632AFC486100CA08B1 /* ioapi.c */; };
828CED6C2AFD885100CA08B1 /* adler32.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED262AFC484D00CA08B1 /* adler32.c */; settings = {COMPILER_FLAGS = "-Wno-error=macro-redefined"; }; };
828CED6A2AFC486100CA08B1 /* ioapi.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED632AFC486100CA08B1 /* ioapi.c */; };
828CED6B2AFC486100CA08B1 /* ioapi.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED632AFC486100CA08B1 /* ioapi.c */; };
828CED6D2AFD885100CA08B1 /* crc32.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED1E2AFC484D00CA08B1 /* crc32.c */; settings = {COMPILER_FLAGS = "-Wno-error=implicit-int-conversion -Wno-error=shorten-64-to-32 -Wno-error=macro-redefined"; }; };
828CED6E2AFD885100CA08B1 /* deflate.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED1D2AFC484D00CA08B1 /* deflate.c */; settings = {COMPILER_FLAGS = "-Wno-error=implicit-int-conversion -Wno-error=shorten-64-to-32 -Wno-error=comma -Wno-error=macro-redefined"; }; };
828CED6F2AFD885100CA08B1 /* gzread.c in Sources */ = {isa = PBXBuildFile; fileRef = 828CED252AFC484D00CA08B1 /* gzread.c */; settings = {COMPILER_FLAGS = "-Wno-error=implicit-int-conversion -Wno-error=shorten-64-to-32"; }; };
Expand Down Expand Up @@ -446,6 +450,7 @@
828CED252AFC484D00CA08B1 /* gzread.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = gzread.c; path = ../External/zlib/gzread.c; sourceTree = "<group>"; };
828CED262AFC484D00CA08B1 /* adler32.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = adler32.c; path = ../External/zlib/adler32.c; sourceTree = "<group>"; };
828CED272AFC484D00CA08B1 /* trees.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = trees.c; path = ../External/zlib/trees.c; sourceTree = "<group>"; };
828CED632AFC486100CA08B1 /* ioapi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ioapi.c; path = ../External/zlib/contrib/minizip/ioapi.c; sourceTree = "<group>"; };
828CED642AFC486000CA08B1 /* unzip.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = unzip.c; path = ../External/zlib/contrib/minizip/unzip.c; sourceTree = "<group>"; };
9C3B253E212F29CF0080AEC6 /* websocketpp_websocket.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = websocketpp_websocket.cpp; sourceTree = "<group>"; };
9C3B253F212F29CF0080AEC6 /* x509_cert_utilities.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = x509_cert_utilities.hpp; sourceTree = "<group>"; };
Expand Down Expand Up @@ -868,6 +873,7 @@
828CED182AFC47DD00CA08B1 /* Zlib */ = {
isa = PBXGroup;
children = (
828CED632AFC486100CA08B1 /* ioapi.c */,
828CED642AFC486000CA08B1 /* unzip.c */,
828CED262AFC484D00CA08B1 /* adler32.c */,
828CED1B2AFC484D00CA08B1 /* compress.c */,
Expand Down Expand Up @@ -1345,6 +1351,7 @@
buildActionMask = 2147483647;
files = (
58A7E9ED209ADEB100CC6774 /* global_publics.cpp in Sources */,
828CED612AFC486100CA08B1 /* ioapi.c in Sources */,
828CED652AFC486000CA08B1 /* unzip.c in Sources */,
58A7E9EF209ADEB100CC6774 /* global.cpp in Sources */,
A23D0BA62B925EC900624E90 /* utils_apple.mm in Sources */,
Expand Down Expand Up @@ -1426,6 +1433,7 @@
828CED752AFD885100CA08B1 /* trees.c in Sources */,
828CED762AFD885100CA08B1 /* zutil.c in Sources */,
7DB100DE2119F91B00AE22F5 /* pch.cpp in Sources */,
828CED692AFC486100CA08B1 /* ioapi.c in Sources */,
828CED662AFC486000CA08B1 /* unzip.c in Sources */,
7DB100D1211927DF00AE22F5 /* uri.cpp in Sources */,
7DB100D2211927DF00AE22F5 /* utils.cpp in Sources */,
Expand Down Expand Up @@ -1489,6 +1497,7 @@
828CED802AFD886600CA08B1 /* trees.c in Sources */,
828CED812AFD886600CA08B1 /* zutil.c in Sources */,
D9EF882725A522BC005C4BDF /* global_publics.cpp in Sources */,
828CED6A2AFC486100CA08B1 /* ioapi.c in Sources */,
828CED672AFC486000CA08B1 /* unzip.c in Sources */,
D9EF882925A522BC005C4BDF /* global.cpp in Sources */,
727979122A4E32A800EB7079 /* ExternalWebSocketProvider.cpp in Sources */,
Expand Down Expand Up @@ -1550,6 +1559,7 @@
828CED8B2AFD887000CA08B1 /* trees.c in Sources */,
828CED8C2AFD887000CA08B1 /* zutil.c in Sources */,
D9FF0A5E25A5366A0061B717 /* global_publics.cpp in Sources */,
828CED6B2AFC486100CA08B1 /* ioapi.c in Sources */,
828CED682AFC486000CA08B1 /* unzip.c in Sources */,
D9FF0A6025A5366A0061B717 /* global.cpp in Sources */,
727979132A4E32A800EB7079 /* ExternalWebSocketProvider.cpp in Sources */,
Expand Down Expand Up @@ -1828,13 +1838,16 @@
GCC_PREFIX_HEADER = "$(SRCROOT)/../../Source/Common/pch.h";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
"HC_ENABLE_WEBSOCKET_COMPRESSION=1",
"HC_LINK_STATIC=1",
"HC_TRACE_BUILD_LEVEL=HC_PRIVATE_TRACE_LEVEL_VERBOSE",
);
GCC_TREAT_WARNINGS_AS_ERRORS = YES;
HEADER_SEARCH_PATHS = (
"$(SRCROOT)/../../Include",
"$(SRCROOT)/../../Source/Common",
"$(SRCROOT)/../../External/zlib",
"$(SRCROOT)/../../External/zlib/contrib/minizip",
"$(SRCROOT)/../../External/websocketpp",
"$(SRCROOT)/../../External/asio/asio/include",
"$(BUILT_PRODUCTS_DIR)/openssl/include",
Expand All @@ -1860,13 +1873,16 @@
GCC_PREFIX_HEADER = "$(SRCROOT)/../../Source/Common/pch.h";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
"HC_ENABLE_WEBSOCKET_COMPRESSION=1",
"HC_LINK_STATIC=1",
"HC_TRACE_BUILD_LEVEL=HC_PRIVATE_TRACE_LEVEL_IMPORTANT",
);
GCC_TREAT_WARNINGS_AS_ERRORS = YES;
HEADER_SEARCH_PATHS = (
"$(SRCROOT)/../../Include",
"$(SRCROOT)/../../Source/Common",
"$(SRCROOT)/../../External/zlib",
"$(SRCROOT)/../../External/zlib/contrib/minizip",
"$(SRCROOT)/../../External/websocketpp",
"$(SRCROOT)/../../External/asio/asio/include",
"$(BUILT_PRODUCTS_DIR)/openssl/include",
Expand Down Expand Up @@ -2005,6 +2021,7 @@
GCC_PREFIX_HEADER = "$(SRCROOT)/../../Source/Common/pch.h";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
"HC_ENABLE_WEBSOCKET_COMPRESSION=1",
"HC_LINK_STATIC=1",
"HC_TRACE_BUILD_LEVEL=HC_PRIVATE_TRACE_LEVEL_VERBOSE",
);
Expand All @@ -2013,6 +2030,8 @@
HEADER_SEARCH_PATHS = (
"$(SRCROOT)/../../Include",
"$(SRCROOT)/../../Source/Common",
"$(SRCROOT)/../../External/zlib",
"$(SRCROOT)/../../External/zlib/contrib/minizip",
"$(SRCROOT)/../../External/websocketpp",
"$(SRCROOT)/../../External/asio/asio/include",
"$(BUILT_PRODUCTS_DIR)/openssl/include",
Expand Down Expand Up @@ -2040,6 +2059,7 @@
GCC_PREFIX_HEADER = "$(SRCROOT)/../../Source/Common/pch.h";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
"HC_ENABLE_WEBSOCKET_COMPRESSION=1",
"HC_LINK_STATIC=1",
"HC_TRACE_BUILD_LEVEL=HC_PRIVATE_TRACE_LEVEL_IMPORTANT",
);
Expand All @@ -2048,6 +2068,8 @@
HEADER_SEARCH_PATHS = (
"$(SRCROOT)/../../Include",
"$(SRCROOT)/../../Source/Common",
"$(SRCROOT)/../../External/zlib",
"$(SRCROOT)/../../External/zlib/contrib/minizip",
"$(SRCROOT)/../../External/websocketpp",
"$(SRCROOT)/../../External/asio/asio/include",
"$(BUILT_PRODUCTS_DIR)/openssl/include",
Expand Down
6 changes: 5 additions & 1 deletion Build/libHttpClient.CMake/GetLibHCFlags.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,18 @@ function(GET_LIBHC_FLAGS OUT_FLAGS OUT_FLAGS_DEBUG OUT_FLAGS_RELEASE)
PARENT_SCOPE
)

if (DEFINED HC_NOWEBSOCKETS)
if (HC_NOWEBSOCKETS)
list(APPEND FLAGS "-DHC_NOWEBSOCKETS=1")
endif()

if (DEFINED HC_NOZLIB)
list(APPEND FLAGS "-DHC_NOZLIB=1")
endif()

if (HC_ENABLE_WEBSOCKET_COMPRESSION)
list(APPEND FLAGS "-DHC_ENABLE_WEBSOCKET_COMPRESSION=1")
endif()

set("${OUT_FLAGS}" "${FLAGS}" PARENT_SCOPE)

set("${OUT_FLAGS_DEBUG}"
Expand Down
22 changes: 20 additions & 2 deletions Build/libHttpClient.GDK.Shared/libHttpClient.GDK.Shared.vcxitems
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@
<HasSharedItems>true</HasSharedItems>
<ItemsProjectGuid>{8ca3b500-0d89-4db1-ba8b-98aeb468ca13}</ItemsProjectGuid>
</PropertyGroup>
<PropertyGroup>
<HCEnableWebSocketCompression Condition="'$(HCEnableWebSocketCompression)' == ''">true</HCEnableWebSocketCompression>
<HCEnableGDKXboxWebSocketCompression Condition="'$(HCEnableGDKXboxWebSocketCompression)' == ''">false</HCEnableGDKXboxWebSocketCompression>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);$(MSBuildThisFileDirectory)</AdditionalIncludeDirectories>
Expand All @@ -21,9 +25,21 @@
<ClCompile Include="$(MSBuildThisFileDirectory)..\..\Source\HTTP\Curl\CurlProvider.cpp" />
<ClCompile Include="$(MSBuildThisFileDirectory)..\..\Source\HTTP\WinHttp\winhttp_connection.cpp" />
<ClCompile Include="$(MSBuildThisFileDirectory)..\..\Source\HTTP\WinHttp\winhttp_provider.cpp" />
<ClCompile Include="$(MSBuildThisFileDirectory)..\..\Source\HTTP\WinHttp\winhttp_websocket_hybrid.cpp" Condition="Exists('$(HCRoot)\External\boost-wintls\include\wintls.hpp') and '$(HCEnableWebSocketCompression)' == 'true'">
<PreprocessorDefinitions>HC_ENABLE_WEBSOCKET_COMPRESSION=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="$(MSBuildThisFileDirectory)..\..\Source\HTTP\WinHttp\winhttp_proxy_helper.cpp" />
<ClCompile Include="$(MSBuildThisFileDirectory)..\..\Source\Platform\GDK\PlatformComponents_GDK.cpp" />
<ClCompile Include="$(MSBuildThisFileDirectory)..\..\Source\Platform\GDK\PlatformComponents_GDK.cpp">
<PreprocessorDefinitions Condition="'$(HCEnableWebSocketCompression)' == 'true' and Exists('$(HCRoot)\External\boost-wintls\include\wintls.hpp') and '$(HCEnableGDKXboxWebSocketCompression)' == 'true'">HC_ENABLE_WEBSOCKET_COMPRESSION=1;HC_ENABLE_GDK_XBOX_WEBSOCKET_COMPRESSION=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions Condition="'$(HCEnableWebSocketCompression)' == 'true' and Exists('$(HCRoot)\External\boost-wintls\include\wintls.hpp') and '$(HCEnableGDKXboxWebSocketCompression)' != 'true'">HC_ENABLE_WEBSOCKET_COMPRESSION=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ClCompile Include="$(MSBuildThisFileDirectory)..\..\Source\Platform\Windows\PlatformTrace_Windows.cpp" />
<ClCompile Include="$(MSBuildThisFileDirectory)..\..\Source\WebSocket\Websocketpp\websocketpp_websocket.cpp" Condition="Exists('$(HCRoot)\External\boost-wintls\include\wintls.hpp') and '$(HCEnableWebSocketCompression)' == 'true'">
<AdditionalIncludeDirectories>$(HCRoot)\External\asio\asio\include;$(HCRoot)\External\websocketpp;$(HCRoot)\External\boost-wintls\include;$(HCRoot)\External\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;_WEBSOCKETPP_CPP11_STL_;_WEBSOCKETPP_CPP11_RANDOM_DEVICE_;HC_ENABLE_WEBSOCKET_COMPRESSION=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalOptions>/std:c++17 %(AdditionalOptions)</AdditionalOptions>
<PrecompiledHeader>NotUsing</PrecompiledHeader>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Source\Common\Win\utils_win.h" />
Expand All @@ -33,5 +49,7 @@
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Source\HTTP\Curl\CurlProvider.h" />
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Source\HTTP\WinHttp\winhttp_connection.h" />
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Source\HTTP\WinHttp\winhttp_provider.h" />
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Source\WebSocket\Websocketpp\websocketpp_websocket.h" Condition="Exists('$(HCRoot)\External\boost-wintls\include\wintls.hpp')" />
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Source\WebSocket\Websocketpp\wintls_socket.hpp" Condition="Exists('$(HCRoot)\External\boost-wintls\include\wintls.hpp')" />
</ItemGroup>
</Project>
</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@
<Filter Include="Source\Platform\Windows">
<UniqueIdentifier>{e917aa51-b574-4f8d-a4e6-01c61d3592a5}</UniqueIdentifier>
</Filter>
<Filter Include="Source\WebSocket\Websocketpp">
<UniqueIdentifier>{3bb5d493-f184-4f6b-82fc-846f0170b41b}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="$(MSBuildThisFileDirectory)..\..\Source\Common\Win\utils_win.cpp">
Expand Down Expand Up @@ -61,6 +64,9 @@
<Filter>Source\HTTP\Curl</Filter>
</ClCompile>
<ClCompile Include="$(MSBuildThisFileDirectory)..\..\Source\HTTP\WinHttp\winhttp_proxy_helper.cpp" />
<ClCompile Include="$(MSBuildThisFileDirectory)..\..\Source\WebSocket\Websocketpp\websocketpp_websocket.cpp">
<Filter>Source\WebSocket\Websocketpp</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Source\Common\Win\utils_win.h">
Expand All @@ -84,5 +90,11 @@
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Source\HTTP\Curl\CurlDynamicLoader.h">
<Filter>Source\HTTP\Curl</Filter>
</ClInclude>
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Source\WebSocket\Websocketpp\websocketpp_websocket.h">
<Filter>Source\WebSocket\Websocketpp</Filter>
</ClInclude>
<ClInclude Include="$(MSBuildThisFileDirectory)..\..\Source\WebSocket\Websocketpp\wintls_socket.hpp">
<Filter>Source\WebSocket\Websocketpp</Filter>
</ClInclude>
</ItemGroup>
</Project>
</Project>
Loading
Loading