Skip to content

Commit 8a12878

Browse files
committed
Fixed build for Windows platform (after refactor)
1 parent 69a17c3 commit 8a12878

File tree

6 files changed

+141
-52
lines changed

6 files changed

+141
-52
lines changed

projects/msvs/httpserverapp.vcxproj

Lines changed: 49 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
2+
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
33
<ItemGroup Label="ProjectConfigurations">
44
<ProjectConfiguration Include="Debug|Win32">
55
<Configuration>Debug</Configuration>
@@ -19,29 +19,50 @@
1919
</ProjectConfiguration>
2020
</ItemGroup>
2121
<ItemGroup>
22-
<ClCompile Include="..\..\src\FileIncoming.cpp" />
22+
<ClCompile Include="..\..\src\application\Test.cpp" />
23+
<ClCompile Include="..\..\src\client\protocol\ClientHttp1.cpp" />
24+
<ClCompile Include="..\..\src\client\protocol\ClientHttp2.cpp" />
25+
<ClCompile Include="..\..\src\client\protocol\ClientProtocol.cpp" />
26+
<ClCompile Include="..\..\src\client\Request.cpp" />
27+
<ClCompile Include="..\..\src\client\Response.cpp" />
28+
<ClCompile Include="..\..\src\Init.cpp" />
2329
<ClCompile Include="..\..\src\Main.cpp" />
24-
<ClCompile Include="..\..\src\Socket.cpp" />
25-
<ClCompile Include="..\..\src\SocketAdapter.cpp" />
26-
<ClCompile Include="..\..\src\SocketAdapterDefault.cpp" />
27-
<ClCompile Include="..\..\src\SocketAdapterTls.cpp" />
28-
<ClCompile Include="..\..\src\System.cpp" />
29-
<ClCompile Include="..\..\src\Test.cpp" />
30-
<ClCompile Include="..\..\src\Utils.cpp" />
30+
<ClCompile Include="..\..\src\socket\Adapter.cpp" />
31+
<ClCompile Include="..\..\src\socket\AdapterDefault.cpp" />
32+
<ClCompile Include="..\..\src\socket\AdapterTls.cpp" />
33+
<ClCompile Include="..\..\src\socket\List.cpp" />
34+
<ClCompile Include="..\..\src\socket\Socket.cpp" />
35+
<ClCompile Include="..\..\src\system\System.cpp" />
36+
<ClCompile Include="..\..\src\transfer\FileIncoming.cpp" />
37+
<ClCompile Include="..\..\src\transfer\http2\HPack.cpp" />
38+
<ClCompile Include="..\..\src\transfer\http2\Http2.cpp" />
39+
<ClCompile Include="..\..\src\utils\Event.cpp" />
40+
<ClCompile Include="..\..\src\utils\Utils.cpp" />
3141
</ItemGroup>
3242
<ItemGroup>
33-
<ClInclude Include="..\..\src\FileIncoming.h" />
43+
<ClInclude Include="..\..\src\application\Test.h" />
44+
<ClInclude Include="..\..\src\client\protocol\ClientHttp1.h" />
45+
<ClInclude Include="..\..\src\client\protocol\ClientHttp2.h" />
46+
<ClInclude Include="..\..\src\client\protocol\ClientProtocol.h" />
47+
<ClInclude Include="..\..\src\client\Request.h" />
48+
<ClInclude Include="..\..\src\client\Response.h" />
49+
<ClInclude Include="..\..\src\Init.h" />
3450
<ClInclude Include="..\..\src\Main.h" />
35-
<ClInclude Include="..\..\src\RawData.h" />
36-
<ClInclude Include="..\..\src\ServerRequest.h" />
37-
<ClInclude Include="..\..\src\ServerResponse.h" />
38-
<ClInclude Include="..\..\src\Socket.h" />
39-
<ClInclude Include="..\..\src\SocketAdapter.h" />
40-
<ClInclude Include="..\..\src\SocketAdapterDefault.h" />
41-
<ClInclude Include="..\..\src\SocketAdapterTls.h" />
42-
<ClInclude Include="..\..\src\System.h" />
43-
<ClInclude Include="..\..\src\Test.h" />
44-
<ClInclude Include="..\..\src\Utils.h" />
51+
<ClInclude Include="..\..\src\socket\Adapter.h" />
52+
<ClInclude Include="..\..\src\socket\AdapterDefault.h" />
53+
<ClInclude Include="..\..\src\socket\AdapterTls.h" />
54+
<ClInclude Include="..\..\src\socket\List.h" />
55+
<ClInclude Include="..\..\src\socket\Socket.h" />
56+
<ClInclude Include="..\..\src\system\System.h" />
57+
<ClInclude Include="..\..\src\transfer\AppRequest.h" />
58+
<ClInclude Include="..\..\src\transfer\AppResponse.h" />
59+
<ClInclude Include="..\..\src\transfer\FileIncoming.h" />
60+
<ClInclude Include="..\..\src\transfer\http2\HPack.h" />
61+
<ClInclude Include="..\..\src\transfer\http2\Http2.h" />
62+
<ClInclude Include="..\..\src\transfer\HttpStatusCode.h" />
63+
<ClInclude Include="..\..\src\transfer\ProtocolVariant.h" />
64+
<ClInclude Include="..\..\src\utils\Event.h" />
65+
<ClInclude Include="..\..\src\utils\Utils.h" />
4566
</ItemGroup>
4667
<PropertyGroup Label="Globals">
4768
<ProjectGuid>{D1565609-DDDE-4521-8AD9-0D1AD7D18525}</ProjectGuid>
@@ -52,26 +73,26 @@
5273
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
5374
<ConfigurationType>DynamicLibrary</ConfigurationType>
5475
<UseDebugLibraries>true</UseDebugLibraries>
55-
<PlatformToolset>v140</PlatformToolset>
76+
<PlatformToolset>v141</PlatformToolset>
5677
<CharacterSet>MultiByte</CharacterSet>
5778
</PropertyGroup>
5879
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
5980
<ConfigurationType>DynamicLibrary</ConfigurationType>
6081
<UseDebugLibraries>true</UseDebugLibraries>
61-
<PlatformToolset>v140</PlatformToolset>
82+
<PlatformToolset>v141</PlatformToolset>
6283
<CharacterSet>MultiByte</CharacterSet>
6384
</PropertyGroup>
6485
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
6586
<ConfigurationType>DynamicLibrary</ConfigurationType>
6687
<UseDebugLibraries>false</UseDebugLibraries>
67-
<PlatformToolset>v140</PlatformToolset>
88+
<PlatformToolset>v141</PlatformToolset>
6889
<WholeProgramOptimization>true</WholeProgramOptimization>
6990
<CharacterSet>MultiByte</CharacterSet>
7091
</PropertyGroup>
7192
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
7293
<ConfigurationType>DynamicLibrary</ConfigurationType>
7394
<UseDebugLibraries>false</UseDebugLibraries>
74-
<PlatformToolset>v140</PlatformToolset>
95+
<PlatformToolset>v141</PlatformToolset>
7596
<WholeProgramOptimization>true</WholeProgramOptimization>
7697
<CharacterSet>MultiByte</CharacterSet>
7798
</PropertyGroup>
@@ -124,7 +145,7 @@
124145
<PrecompiledHeader>NotUsing</PrecompiledHeader>
125146
<WarningLevel>Level3</WarningLevel>
126147
<Optimization>Disabled</Optimization>
127-
<PreprocessorDefinitions>WIN32;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
148+
<PreprocessorDefinitions>WIN32;NOMINMAX;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
128149
<AssemblerListingLocation>$(IntDir)asm\</AssemblerListingLocation>
129150
<ObjectFileName>$(IntDir)obj\</ObjectFileName>
130151
<MultiProcessorCompilation>true</MultiProcessorCompilation>
@@ -141,7 +162,7 @@
141162
<PrecompiledHeader>NotUsing</PrecompiledHeader>
142163
<WarningLevel>Level3</WarningLevel>
143164
<Optimization>Disabled</Optimization>
144-
<PreprocessorDefinitions>WIN32;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
165+
<PreprocessorDefinitions>WIN32;NOMINMAX;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
145166
<AssemblerListingLocation>$(IntDir)asm\</AssemblerListingLocation>
146167
<ObjectFileName>$(IntDir)obj\</ObjectFileName>
147168
<MultiProcessorCompilation>true</MultiProcessorCompilation>
@@ -160,7 +181,7 @@
160181
<Optimization>MaxSpeed</Optimization>
161182
<FunctionLevelLinking>true</FunctionLevelLinking>
162183
<IntrinsicFunctions>true</IntrinsicFunctions>
163-
<PreprocessorDefinitions>WIN32;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
184+
<PreprocessorDefinitions>WIN32;NOMINMAX;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
164185
<AssemblerListingLocation>$(IntDir)asm\</AssemblerListingLocation>
165186
<ObjectFileName>$(IntDir)obj\</ObjectFileName>
166187
<MultiProcessorCompilation>true</MultiProcessorCompilation>
@@ -181,7 +202,7 @@
181202
<Optimization>MaxSpeed</Optimization>
182203
<FunctionLevelLinking>true</FunctionLevelLinking>
183204
<IntrinsicFunctions>true</IntrinsicFunctions>
184-
<PreprocessorDefinitions>WIN32;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
205+
<PreprocessorDefinitions>WIN32;NOMINMAX;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
185206
<AssemblerListingLocation>$(IntDir)asm\</AssemblerListingLocation>
186207
<ObjectFileName>$(IntDir)obj\</ObjectFileName>
187208
<MultiProcessorCompilation>true</MultiProcessorCompilation>

projects/msvs/httpserverapp.vcxproj.filters

Lines changed: 82 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -15,69 +15,132 @@
1515
</Filter>
1616
</ItemGroup>
1717
<ItemGroup>
18-
<ClCompile Include="..\..\src\FileIncoming.cpp">
18+
<ClCompile Include="..\..\src\Init.cpp">
1919
<Filter>Source Files</Filter>
2020
</ClCompile>
2121
<ClCompile Include="..\..\src\Main.cpp">
2222
<Filter>Source Files</Filter>
2323
</ClCompile>
24-
<ClCompile Include="..\..\src\Socket.cpp">
24+
<ClCompile Include="..\..\src\utils\Event.cpp">
2525
<Filter>Source Files</Filter>
2626
</ClCompile>
27-
<ClCompile Include="..\..\src\System.cpp">
27+
<ClCompile Include="..\..\src\utils\Utils.cpp">
2828
<Filter>Source Files</Filter>
2929
</ClCompile>
30-
<ClCompile Include="..\..\src\Test.cpp">
30+
<ClCompile Include="..\..\src\transfer\FileIncoming.cpp">
3131
<Filter>Source Files</Filter>
3232
</ClCompile>
33-
<ClCompile Include="..\..\src\Utils.cpp">
33+
<ClCompile Include="..\..\src\transfer\http2\HPack.cpp">
3434
<Filter>Source Files</Filter>
3535
</ClCompile>
36-
<ClCompile Include="..\..\src\SocketAdapter.cpp">
36+
<ClCompile Include="..\..\src\transfer\http2\Http2.cpp">
3737
<Filter>Source Files</Filter>
3838
</ClCompile>
39-
<ClCompile Include="..\..\src\SocketAdapterDefault.cpp">
39+
<ClCompile Include="..\..\src\system\System.cpp">
4040
<Filter>Source Files</Filter>
4141
</ClCompile>
42-
<ClCompile Include="..\..\src\SocketAdapterTls.cpp">
42+
<ClCompile Include="..\..\src\socket\Adapter.cpp">
43+
<Filter>Source Files</Filter>
44+
</ClCompile>
45+
<ClCompile Include="..\..\src\socket\AdapterDefault.cpp">
46+
<Filter>Source Files</Filter>
47+
</ClCompile>
48+
<ClCompile Include="..\..\src\socket\AdapterTls.cpp">
49+
<Filter>Source Files</Filter>
50+
</ClCompile>
51+
<ClCompile Include="..\..\src\socket\List.cpp">
52+
<Filter>Source Files</Filter>
53+
</ClCompile>
54+
<ClCompile Include="..\..\src\socket\Socket.cpp">
55+
<Filter>Source Files</Filter>
56+
</ClCompile>
57+
<ClCompile Include="..\..\src\client\Request.cpp">
58+
<Filter>Source Files</Filter>
59+
</ClCompile>
60+
<ClCompile Include="..\..\src\client\Response.cpp">
61+
<Filter>Source Files</Filter>
62+
</ClCompile>
63+
<ClCompile Include="..\..\src\client\protocol\ClientHttp1.cpp">
64+
<Filter>Source Files</Filter>
65+
</ClCompile>
66+
<ClCompile Include="..\..\src\client\protocol\ClientHttp2.cpp">
67+
<Filter>Source Files</Filter>
68+
</ClCompile>
69+
<ClCompile Include="..\..\src\client\protocol\ClientProtocol.cpp">
70+
<Filter>Source Files</Filter>
71+
</ClCompile>
72+
<ClCompile Include="..\..\src\application\Test.cpp">
4373
<Filter>Source Files</Filter>
4474
</ClCompile>
4575
</ItemGroup>
4676
<ItemGroup>
47-
<ClInclude Include="..\..\src\FileIncoming.h">
77+
<ClInclude Include="..\..\src\Init.h">
4878
<Filter>Header Files</Filter>
4979
</ClInclude>
5080
<ClInclude Include="..\..\src\Main.h">
5181
<Filter>Header Files</Filter>
5282
</ClInclude>
53-
<ClInclude Include="..\..\src\RawData.h">
83+
<ClInclude Include="..\..\src\utils\Event.h">
84+
<Filter>Header Files</Filter>
85+
</ClInclude>
86+
<ClInclude Include="..\..\src\utils\Utils.h">
87+
<Filter>Header Files</Filter>
88+
</ClInclude>
89+
<ClInclude Include="..\..\src\transfer\AppRequest.h">
90+
<Filter>Header Files</Filter>
91+
</ClInclude>
92+
<ClInclude Include="..\..\src\transfer\AppResponse.h">
93+
<Filter>Header Files</Filter>
94+
</ClInclude>
95+
<ClInclude Include="..\..\src\transfer\FileIncoming.h">
96+
<Filter>Header Files</Filter>
97+
</ClInclude>
98+
<ClInclude Include="..\..\src\transfer\HttpStatusCode.h">
99+
<Filter>Header Files</Filter>
100+
</ClInclude>
101+
<ClInclude Include="..\..\src\transfer\ProtocolVariant.h">
102+
<Filter>Header Files</Filter>
103+
</ClInclude>
104+
<ClInclude Include="..\..\src\transfer\http2\HPack.h">
105+
<Filter>Header Files</Filter>
106+
</ClInclude>
107+
<ClInclude Include="..\..\src\transfer\http2\Http2.h">
108+
<Filter>Header Files</Filter>
109+
</ClInclude>
110+
<ClInclude Include="..\..\src\system\System.h">
111+
<Filter>Header Files</Filter>
112+
</ClInclude>
113+
<ClInclude Include="..\..\src\socket\Adapter.h">
114+
<Filter>Header Files</Filter>
115+
</ClInclude>
116+
<ClInclude Include="..\..\src\socket\AdapterDefault.h">
54117
<Filter>Header Files</Filter>
55118
</ClInclude>
56-
<ClInclude Include="..\..\src\ServerRequest.h">
119+
<ClInclude Include="..\..\src\socket\AdapterTls.h">
57120
<Filter>Header Files</Filter>
58121
</ClInclude>
59-
<ClInclude Include="..\..\src\ServerResponse.h">
122+
<ClInclude Include="..\..\src\socket\List.h">
60123
<Filter>Header Files</Filter>
61124
</ClInclude>
62-
<ClInclude Include="..\..\src\Socket.h">
125+
<ClInclude Include="..\..\src\socket\Socket.h">
63126
<Filter>Header Files</Filter>
64127
</ClInclude>
65-
<ClInclude Include="..\..\src\System.h">
128+
<ClInclude Include="..\..\src\client\Request.h">
66129
<Filter>Header Files</Filter>
67130
</ClInclude>
68-
<ClInclude Include="..\..\src\Test.h">
131+
<ClInclude Include="..\..\src\client\Response.h">
69132
<Filter>Header Files</Filter>
70133
</ClInclude>
71-
<ClInclude Include="..\..\src\Utils.h">
134+
<ClInclude Include="..\..\src\client\protocol\ClientHttp1.h">
72135
<Filter>Header Files</Filter>
73136
</ClInclude>
74-
<ClInclude Include="..\..\src\SocketAdapter.h">
137+
<ClInclude Include="..\..\src\client\protocol\ClientHttp2.h">
75138
<Filter>Header Files</Filter>
76139
</ClInclude>
77-
<ClInclude Include="..\..\src\SocketAdapterDefault.h">
140+
<ClInclude Include="..\..\src\client\protocol\ClientProtocol.h">
78141
<Filter>Header Files</Filter>
79142
</ClInclude>
80-
<ClInclude Include="..\..\src\SocketAdapterTls.h">
143+
<ClInclude Include="..\..\src\application\Test.h">
81144
<Filter>Header Files</Filter>
82145
</ClInclude>
83146
</ItemGroup>

src/client/protocol/ClientHttp2.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33

44
#include "../../transfer/http2/HPack.h"
55

6+
#include <array>
67
#include <random>
78

89
namespace HttpClient

src/socket/List.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,7 @@ namespace Socket
268268
struct ::sockaddr_in client_addr = {};
269269
socklen_t client_addr_len = sizeof(client_addr);
270270

271-
client_socket = ::accept(event.fd, static_cast<struct ::sockaddr *>(&client_addr), &client_addr_len);
271+
client_socket = ::accept(event.fd, reinterpret_cast<::sockaddr *>(&client_addr), &client_addr_len);
272272

273273
if (~0 != client_socket)
274274
{
@@ -302,7 +302,7 @@ namespace Socket
302302
struct ::sockaddr_in client_addr = {};
303303
socklen_t client_addr_len = sizeof(client_addr);
304304

305-
client_socket = ::accept(event.data.fd, reinterpret_cast<struct ::sockaddr *>(&client_addr), &client_addr_len);
305+
client_socket = ::accept(event.data.fd, reinterpret_cast<::sockaddr *>(&client_addr), &client_addr_len);
306306

307307
if (~0 != client_socket)
308308
{

src/socket/Socket.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -270,7 +270,7 @@ namespace Socket
270270
long Socket::recv(void *buf, const size_t length) const noexcept
271271
{
272272
#ifdef WIN32
273-
return ::recv(this->socket_handle, buf, static_cast<const int>(length), 0);
273+
return ::recv(this->socket_handle, reinterpret_cast<char *>(buf), static_cast<const int>(length), 0);
274274
#elif POSIX
275275
return ::recv(this->socket_handle, buf, length, 0);
276276
#else
@@ -295,7 +295,7 @@ namespace Socket
295295

296296
if (1 == ::WSAPoll(&event, 1, static_cast<::INT>(timeout.count() ) ) && event.revents & POLLRDNORM)
297297
{
298-
recv_len = this->recv(this->socket_handle, buf, static_cast<const int>(length), 0);
298+
recv_len = ::recv(this->socket_handle, reinterpret_cast<char *>(buf), static_cast<const int>(length), 0);
299299
}
300300
#elif POSIX
301301
struct ::pollfd event = {

src/transfer/http2/Http2.h

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,11 @@
99
#include <unordered_map>
1010
#include <cstddef>
1111

12-
#include <arpa/inet.h>
12+
#ifdef WIN32
13+
#undef NO_ERROR
14+
#elif POSIX
15+
#include <arpa/inet.h>
16+
#endif
1317

1418
namespace Http2
1519
{

0 commit comments

Comments
 (0)