First step towards SSL support.

This commit is contained in:
2016-08-06 10:04:45 +02:00
parent 9cc9b95190
commit 210fae5000
3 changed files with 25 additions and 6 deletions

View File

@@ -13,7 +13,7 @@
<library name="base" location="$ISE_LIBRARY\library\base\base-safe.ecf"/>
<library name="http" location="..\..\library\network\protocol\http\http-safe.ecf"/>
<library name="wsf" location="..\..\library\server\wsf\wsf-safe.ecf"/>
<library name="wsf_proxy" location="..\..\library\server\wsf_proxy\wsf_proxy-safe.ecf"/>
<library name="wsf_proxy" location="..\..\library\server\wsf_proxy\wsf_proxy-safe.ecf" readonly="false"/>
</target>
<target name="proxy" extends="common">
<root class="APPLICATION" feature="make_and_launch"/>

View File

@@ -84,7 +84,6 @@ feature -- Execution
execute (request: WSF_REQUEST; response: WSF_RESPONSE)
-- Execute reverse proxy request.
local
l_socket: NETWORK_STREAM_SOCKET
h: HTTP_HEADER
l_http_query: STRING
l_status_line: STRING
@@ -94,8 +93,7 @@ feature -- Execution
i: INTEGER
l_completed: BOOLEAN
do
if attached (create {INET_ADDRESS_FACTORY}).create_from_name (host) as l_peer_address then
create l_socket.make_client_by_address_and_port (l_peer_address, port)
if attached (create {WSF_PROXY_SOCKET_FACTORY}).socket (host, port) as l_socket then
l_socket.set_connect_timeout (connect_timeout) -- milliseconds
l_socket.set_timeout (timeout) -- seconds

View File

@@ -5,8 +5,29 @@
<library name="base" location="$ISE_LIBRARY\library\base\base-safe.ecf"/>
<library name="http" location="..\..\..\library\network\protocol\http\http-safe.ecf"/>
<library name="net" location="$ISE_LIBRARY\library\net\net-safe.ecf"/>
<library name="net_ssl" location="$ISE_LIBRARY/unstable/library/network/socket/netssl/net_ssl-safe.ecf">
<condition>
<custom name="ssl_supported" value="true"/>
</condition>
</library>
<library name="wsf" location="..\wsf\wsf-safe.ecf"/>
<cluster name="rewriter" location=".\rewriter" recursive="true"/>
<cluster name="reverse_proxy" location=".\reverse_proxy" recursive="true"/>
<cluster name="network" location=".\network\" recursive="true">
<file_rule>
<exclude>ssl</exclude>
<exclude>no_ssl</exclude>
</file_rule>
<cluster name="network_ssl" location="$\ssl">
<condition>
<custom name="ssl_supported" value="true"/>
</condition>
</cluster>
<cluster name="network_no_ssl" location="$\no_ssl">
<condition>
<custom name="ssl_supported" excluded_value="true"/>
</condition>
</cluster>
</cluster>
<cluster name="reverse_proxy" location=".\reverse_proxy\" recursive="true"/>
<cluster name="rewriter" location=".\rewriter\" recursive="true"/>
</target>
</system>