Forráskód Böngészése

fix(gateway): call emqx_listener:tcp_opts to get final tcp options

zmstone 1 éve
szülő
commit
30f1a822e8

+ 2 - 1
apps/emqx/src/emqx_listeners.erl

@@ -34,7 +34,8 @@
     max_conns/2,
     id_example/0,
     default_max_conn/0,
-    shutdown_count/2
+    shutdown_count/2,
+    tcp_opts/1
 ]).
 
 -export([

+ 1 - 1
apps/emqx_gateway/src/emqx_gateway.app.src

@@ -1,7 +1,7 @@
 %% -*- mode: erlang -*-
 {application, emqx_gateway, [
     {description, "The Gateway management application"},
-    {vsn, "0.2.2"},
+    {vsn, "0.2.3"},
     {registered, []},
     {mod, {emqx_gateway_app, []}},
     {applications, [

+ 12 - 9
apps/emqx_gateway/src/emqx_gateway_utils.erl

@@ -533,16 +533,16 @@ esockd_opts(Type, Opts0) when ?IS_ESOCKD_LISTENER(Type) ->
     maps:to_list(
         case Type of
             tcp ->
-                Opts2#{tcp_options => sock_opts(tcp_options, Opts0)};
+                Opts2#{tcp_options => tcp_opts(Opts0)};
             ssl ->
                 Opts2#{
-                    tcp_options => sock_opts(tcp_options, Opts0),
+                    tcp_options => tcp_opts(Opts0),
                     ssl_options => ssl_opts(ssl_options, Opts0)
                 };
             udp ->
-                Opts2#{udp_options => sock_opts(udp_options, Opts0)};
+                Opts2#{udp_options => udp_opts(Opts0)};
             dtls ->
-                UDPOpts = sock_opts(udp_options, Opts0),
+                UDPOpts = udp_opts(Opts0),
                 DTLSOpts = ssl_opts(dtls_options, Opts0),
                 Opts2#{
                     udp_options => UDPOpts,
@@ -551,11 +551,14 @@ esockd_opts(Type, Opts0) when ?IS_ESOCKD_LISTENER(Type) ->
         end
     ).
 
-sock_opts(Name, Opts) ->
+tcp_opts(Opts) ->
+    emqx_listeners:tcp_opts(Opts).
+
+udp_opts(Opts) ->
     maps:to_list(
         maps:without(
-            [active_n, keepalive],
-            maps:get(Name, Opts, #{})
+            [active_n],
+            maps:get(udp_options, Opts, #{})
         )
     ).
 
@@ -606,10 +609,10 @@ ranch_opts(Type, ListenOn, Opts) ->
     SocketOpts1 =
         case Type of
             wss ->
-                sock_opts(tcp_options, Opts) ++
+                tcp_opts(Opts) ++
                     proplists:delete(handshake_timeout, ssl_opts(ssl_options, Opts));
             ws ->
-                sock_opts(tcp_options, Opts)
+                tcp_opts(Opts)
         end,
     SocketOpts = ip_port(ListenOn) ++ proplists:delete(reuseaddr, SocketOpts1),
     #{