From 7d92fcd444485ecea77849f09f2cc5fa8e3c8d98 Mon Sep 17 00:00:00 2001 From: Stefan Grundmann Date: Thu, 13 Oct 2016 01:24:58 +0000 Subject: [PATCH 1/2] minimal patch to optional enable tls --- .../cowboy_simple_bridge_sup.erl | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/cowboy_bridge_modules/cowboy_simple_bridge_sup.erl b/src/cowboy_bridge_modules/cowboy_simple_bridge_sup.erl index b7cbb2f..a730b8f 100644 --- a/src/cowboy_bridge_modules/cowboy_simple_bridge_sup.erl +++ b/src/cowboy_bridge_modules/cowboy_simple_bridge_sup.erl @@ -27,8 +27,15 @@ init([]) -> {Address, Port} = simple_bridge_util:get_address_and_port(cowboy), IP = simple_bridge_util:parse_ip(Address), - io:format("Starting Cowboy Server on ~p:~p~n", - [IP, Port]), + {Schema, F, TOpts} = case simple_bridge_util:get_env(tls) of + undefined -> {http, start_http, []}; + [_|_] = O -> {https, start_https, O} + end, + + + io:format("Starting Cowboy ~p Server on ~p:~p~n", + [Schema, IP, Port]), + Dispatch = generate_dispatch(), io:format("Using Cowboy Dispatch Table:~n ~p~n",[Dispatch]), @@ -38,7 +45,7 @@ init([]) -> {max_keepalive, 100} ], - cowboy:start_http(http, 100, [{ip, IP}, {port, Port}], Opts), + cowboy:F(Schema, 100, [{ip, IP}, {port, Port}| TOpts], Opts), {ok, { {one_for_one, 5, 10}, []}}. From 198710f208d64900416d259684ae600ecdbfbb5d Mon Sep 17 00:00:00 2001 From: Stefan Grundmann Date: Thu, 13 Oct 2016 01:25:14 +0000 Subject: [PATCH 2/2] get access to tls socket --- src/cowboy_bridge_modules/cowboy_simple_bridge.erl | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/cowboy_bridge_modules/cowboy_simple_bridge.erl b/src/cowboy_bridge_modules/cowboy_simple_bridge.erl index e1dd22c..6273726 100644 --- a/src/cowboy_bridge_modules/cowboy_simple_bridge.erl +++ b/src/cowboy_bridge_modules/cowboy_simple_bridge.erl @@ -136,8 +136,9 @@ request_body(ReqKey) -> put_key(ReqKey, RequestCache#request_cache{body = Body, request = NewReq}), Body. -socket(_ReqKey) -> - undefined. +socket(ReqKey) -> + {_, Req} = get_key(ReqKey), + cowboy_req:get(socket, Req). recv_from_socket(_Length, _Timeout, ReqKey) -> {RequestCache, Req} = get_key(ReqKey),