= ranch:set_transport_options(3) == Name ranch:set_transport_options - Set the transport options == Description [source,erlang] ---- set_transport_options(Ref :: ranch:ref(), TransOpts :: ranch:opts()) -> ok | {error, Reason :: term()} ---- Set the transport options. The complete set of transport options is replaced. To update a subset of the transport options, it is recommended to get the current transport options using link:man:ranch:get_transport_options(3)[ranch:get_transport_options(3)], update them and then set them back using this function. Changes to the following options will take effect... * immediately: ** `max_connections` ** `handshake_timeout` ** `shutdown` * only after the listener has been suspended and resumed: ** `num_acceptors` ** `num_listen_sockets` ** `post_listen_callback` ** `socket_opts` * only when the entire listener is restarted: ** `connection_type` ** `num_conns_sups` ** `logger` == Arguments Ref:: The listener name. TransOpts:: The new transport options. == Return value The atom `ok` is returned on success. An error tuple is returned on failure, for example if the given transport options contain invalid values. == Changelog * *2.0*: The restriction that the listener must be suspended has been removed. * *2.0*: The `TransOpts` argument must no longer contain Ranch-specific options if given as a list. Use a map. == Examples .Set the transport options [source,erlang] ---- Ref = example, ok = ranch:suspend_listener(Ref), ok = ranch:set_transport_options(Ref, TransOpts), ok = ranch:resume_listener(Ref). ---- .Update the listener TCP port within the `socket_opts` transport option [source,erlang] ---- Ref = example, TransOpts0 = ranch:get_transport_options(Ref), #{socket_opts = SocketOpts0} = TransOpts0, SocketOpts = [{port, 12345}|proplists:delete(port, SocketOpts0)], TransOpts = TransOpts0#{socket_opts = SocketOpts}, ok = ranch:suspend_listener(Ref), ok = ranch:set_transport_options(Ref, TransOpts), ok = ranch:resume_listener(Ref). ---- == See also link:man:ranch:suspend_listener(3)[ranch:suspend_listener(3)], link:man:ranch:resume_listener(3)[ranch:resume_listener(3)], link:man:ranch:get_transport_options(3)[ranch:get_transport_options(3)], link:man:ranch:set_max_connections(3)[ranch:set_max_connections(3)], link:man:ranch:set_protocol_options(3)[ranch:set_protocol_options(3)], link:man:ranch(3)[ranch(3)]