anchor.diff:      % io:format("handle_cast ~p~n", [_Msg]),
   	{noreply, State}.
   
  -handle_info({tcp, Sock, Data}, #state{buf=Buf, native_if_mod=_Mod, is_secure=_IsSec}=State) ->
  +handle_info({tcp, Sock, Data}, #state{buf=Buf}=State) ->
       ok = inet:setopts(Sock, [{active, once}]),
       NewBuf = <<Buf/binary, Data/binary>>,
       Res = (catch binary_to_term(NewBuf)),
  
positive.code:         , csock = undefined
          , buf = <<>>
          , native_if_mod
          , is_secure = false
      }).
  
  -export([start_link/1
          , init/1
  
negative.code:         , send_resp/2
  		]).
  
  start_srv(HostIf, Port) when is_integer(Port) ->
      {ok, IfIpAddr} = inet:getaddr(HostIf, inet),
      gen_server:call(?MODULE, {start_listen, IfIpAddr, Port}).
  
  stop_srv() -> gen_server:call(?MODULE, {stop_listen}).
  
  start_link(Params) ->
  	gen_server:start_link({local, ?MODULE}, ?MODULE, Params, []).
  
  init([Sock, true]) ->
      io:format("~p tcp client ~p~n", [self(), Sock]),
      {ok, #state{csock=Sock}};
  init(Params) ->
      {_, Interface} = lists:keyfind(tcp_ip,1,Params),
      {_, ListenPort} = lists:keyfind(tcp_port,1,Params),
      case inet:getaddr(Interface, inet) of
          {error, Reason} ->
              {stop, Reason};
  