Browse Source

Add define for USE_ALPN

bel2125 4 years ago
parent
commit
e5b67c74b5

+ 2 - 2
VisualStudio/civetweb_lua/civetweb_lua.vcxproj

@@ -102,7 +102,7 @@
       </PrecompiledHeader>
       <WarningLevel>Level3</WarningLevel>
       <Optimization>Disabled</Optimization>
-      <PreprocessorDefinitions>STOP_FLAG_NEEDS_LOCK;OPENSSL_API_1_0;MG_EXPERIMENTAL_INTERFACES;USE_SERVER_STATS;USE_DUKTAPE;USE_IPV6;LUA_COMPAT_ALL;USE_LUA;USE_LUA_SQLITE3;USE_LUA_FILE_SYSTEM;USE_LUA_LUAXML;USE_WEBSOCKET;WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions>STOP_FLAG_NEEDS_LOCK;OPENSSL_API_1_0;USE_HTTP2;MG_EXPERIMENTAL_INTERFACES;USE_SERVER_STATS;USE_DUKTAPE;USE_IPV6;LUA_COMPAT_ALL;USE_LUA;USE_LUA_SQLITE3;USE_LUA_FILE_SYSTEM;USE_LUA_LUAXML;USE_WEBSOCKET;WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <AdditionalIncludeDirectories>$(ProjectDir)..\..\include;$(ProjectDir)..\..\src\third_party;$(ProjectDir)..\..\src\third_party\lua-5.2.4\src;$(ProjectDir)..\..\src\third_party\duktape-1.5.2\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ClCompile>
     <Link>
@@ -219,4 +219,4 @@
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
   <ImportGroup Label="ExtensionTargets">
   </ImportGroup>
-</Project>
+</Project>

+ 19 - 70
VisualStudio/civetweb_lua/civetweb_lua.vcxproj.filters

@@ -1,82 +1,31 @@
 <?xml version="1.0" encoding="utf-8"?>
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <ItemGroup>
-    <Filter Include="Source Files">
-      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
-      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
-    </Filter>
-    <Filter Include="Header Files">
-      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
-      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
-    </Filter>
-    <Filter Include="Resource Files">
-      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
-      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
-    </Filter>
-    <Filter Include="inl files">
-      <UniqueIdentifier>{1ef3413b-2315-48f2-ad22-57af6b4f7aca}</UniqueIdentifier>
-    </Filter>
+    <ClCompile Include="..\..\src\civetweb.c" />
+    <ClCompile Include="..\..\src\main.c" />
   </ItemGroup>
   <ItemGroup>
-    <ClInclude Include="..\..\include\civetweb.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="..\..\src\third_party\lua-5.2.4\src\lua.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="..\..\src\third_party\lua-5.2.4\src\lauxlib.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
-    <ClInclude Include="..\..\src\third_party\civetweb_lua.h">
-      <Filter>Header Files</Filter>
-    </ClInclude>
+    <ClInclude Include="..\..\include\civetweb.h" />
+    <ClInclude Include="..\..\src\third_party\civetweb_lua.h" />
+    <ClInclude Include="..\..\src\third_party\lua-5.2.4\src\lauxlib.h" />
+    <ClInclude Include="..\..\src\third_party\lua-5.2.4\src\lua.h" />
   </ItemGroup>
   <ItemGroup>
-    <ClCompile Include="..\..\src\civetweb.c">
-      <Filter>Source Files</Filter>
-    </ClCompile>
-    <ClCompile Include="..\..\src\main.c">
-      <Filter>Source Files</Filter>
-    </ClCompile>
+    <ResourceCompile Include="..\..\resources\res.rc" />
   </ItemGroup>
   <ItemGroup>
-    <ResourceCompile Include="..\..\resources\res.rc">
-      <Filter>Resource Files</Filter>
-    </ResourceCompile>
+    <Image Include="..\..\resources\systray.ico" />
   </ItemGroup>
   <ItemGroup>
-    <Image Include="..\..\resources\systray.ico">
-      <Filter>Resource Files</Filter>
-    </Image>
+    <None Include="..\..\src\handle_form.inl" />
+    <None Include="..\..\src\md5.inl" />
+    <None Include="..\..\src\mod_http2.inl" />
+    <None Include="..\..\src\mod_lua_shared.inl" />
+    <None Include="..\..\src\response.inl" />
+    <None Include="..\..\src\mod_zlib.inl" />
+    <None Include="..\..\src\sha1.inl" />
+    <None Include="..\..\src\mod_duktape.inl" />
+    <None Include="..\..\src\mod_lua.inl" />
+    <None Include="..\..\src\timer.inl" />
   </ItemGroup>
-  <ItemGroup>
-    <None Include="..\..\src\md5.inl">
-      <Filter>inl files</Filter>
-    </None>
-    <None Include="..\..\src\sha1.inl">
-      <Filter>inl files</Filter>
-    </None>
-    <None Include="..\..\src\mod_lua.inl">
-      <Filter>inl files</Filter>
-    </None>
-    <None Include="..\..\src\timer.inl">
-      <Filter>inl files</Filter>
-    </None>
-    <None Include="..\..\src\mod_duktape.inl">
-      <Filter>inl files</Filter>
-    </None>
-    <None Include="..\..\src\handle_form.inl">
-      <Filter>inl files</Filter>
-    </None>
-    <None Include="..\..\src\mod_lua_shared.inl">
-      <Filter>inl files</Filter>
-    </None>
-    <None Include="..\..\src\mod_http2.inl">
-      <Filter>inl files</Filter>
-    </None>
-    <None Include="..\..\src\response.inl">
-    <None Include="..\..\src\mod_zlib.inl">
-      <Filter>inl files</Filter>
-    </None>
-  </ItemGroup>
-</Project>
+</Project>

+ 5 - 0
src/civetweb.c

@@ -7002,6 +7002,7 @@ static void handle_request(struct mg_connection *);
 #if defined(NO_SSL)
 #error "HTTP2 requires ALPN, APLN requires SSL/TLS"
 #endif
+#define USE_ALPN
 #include "mod_http2.inl"
 /* Not supported with HTTP/2 */
 #define HTTP1_only                                                             \
@@ -16359,6 +16360,7 @@ ssl_servername_callback(SSL *ssl, int *ad, void *arg)
 }
 
 
+#ifdef USE_ALPN
 static const char alpn_proto_list[] = "\x02h2\x08http/1.1\x08http/1.0";
 static const char *alpn_proto_order_http1[] = {alpn_proto_list + 3,
                                                alpn_proto_list + 3 + 8,
@@ -16459,6 +16461,7 @@ init_alpn(struct mg_context *phys_ctx, struct mg_domain_context *dom_ctx)
 
 	return ret;
 }
+#endif
 
 
 /* Setup SSL CTX as required by CivetWeb */
@@ -16682,6 +16685,7 @@ init_ssl_ctx_impl(struct mg_context *phys_ctx,
 		SSL_CTX_set_timeout(dom_ctx->ssl_ctx, (long)ssl_cache_timeout);
 	}
 
+#ifdef USE_ALPN
 	/* Initialize ALPN only of TLS library (OpenSSL version) supports ALPN */
 #if !defined(NO_SSL_DL)
 	if (!tls_feature_missing[TLS_ALPN])
@@ -16689,6 +16693,7 @@ init_ssl_ctx_impl(struct mg_context *phys_ctx,
 	{
 		init_alpn(phys_ctx, dom_ctx);
 	}
+#endif
 
 	return 1;
 }