anchor.diff:  	mochiweb:start_http(Port, Options, MFArgs).
   
   open_listener(Protocol, Port, Options) ->
  -    {ok, PktOpts} = application:get_env(emqttd, mqtt_packet),
  -    MFArgs = {emqttd_client, start_link, [PktOpts]},
  -    esockd:open(Protocol, Port, emqttd_opts:merge(?MQTT_SOCKOPTS, Options) , MFArgs).
  +    MFArgs = {emqttd_client, start_link, [env(packet)]},
  +    esockd:open(Protocol, Port, merge_sockopts(Options) , MFArgs).
  +
  +merge_sockopts(Options) ->
  +    SockOpts = emqttd_opts:merge(?MQTT_SOCKOPTS,
  +                                 proplists:get_value(sockopts, Options, [])),
  +    emqttd_opts:merge(Options, [{sockopts, SockOpts}]).
   
   %%------------------------------------------------------------------------------
   %% @doc Close Listeners
  
positive.code:             lager:error("unload plugin ~p error: ~p", [App, Reason]), {error, Reason}
      end.
  
  
  %%------------------------------------------------------------------------------
  %% @doc Is running?
  %% @end
  
negative.code: 
  -author("Feng Lee <feng@emqtt.io>").
  
  -export([start/0, env/1,
           open_listeners/1, close_listeners/1,
           load_all_plugins/0, unload_all_plugins/0,
           load_plugin/1, unload_plugin/1,
  