anchor.diff:  code_change(_OldVsn, St, _Extra) ->
       {ok, St}.
   
  -
  -connection_authorized(FromPid, {NRemoteAddress, NRemotePort} = Conn, CompSpec) ->
  -    
  -    { LocalAddress, LocalPort } = rvi_common:node_address_tuple(),
  -
  -    %% If FromPid (the genserver managing the socket) is not yet registered
  -    %% with the conneciton manager, this is an incoming connection
  -    %% from the client. We should respond with our own authorize followed by
  -    %% a service announce
  -    case connection_manager:find_connection_by_pid(FromPid) of
  -	not_found ->
  -	    ?info("dlink_tcp:authorize(): New connection!"),
  -	    connection_manager:add_connection(NRemoteAddress, NRemotePort, FromPid),
  -	    ?debug("dlink_tcp:authorize(): Sending authorize."),
  -	    Res = connection:send(FromPid, 
  -			    { authorize, 
  -			      1, LocalAddress, LocalPort, rvi_binary, 
  -			      get_certificates(CompSpec),
  -			      get_authorize_jwt(CompSpec)
  -			    }),
  -	    ?debug("dlink_tcp:authorize(): Sending authorize: ~p", [ Res]),
  -	    ok;
  -	_ -> ok
  -    end,
  -
  -    %% Send our own service announcement to the remote server
  -    %% that just authorized to us.
  -    [ ok, LocalServices ] = service_discovery_rpc:get_services_by_module(CompSpec, local),
  -    
  -    [ ok, FilteredServices ] = authorize_rpc:filter_by_destination(
  -				 CompSpec, LocalServices, Conn),
  -
  -    %% Send an authorize back to the remote node
  -    ?info("dlink_tcp:authorize(): Announcing local services: ~p to remote ~p:~p",
  -	  [FilteredServices, NRemoteAddress, NRemotePort]),
  -
  -    [ok, JWT] = authorize_rpc:sign_message(
  -		  CompSpec, availability_msg(available, FilteredServices)),
  -
  -    connection:send(FromPid, {service_announce, 2, JWT}),
  -
  -    %% Setup ping interval
  -    gen_server:call(?SERVER, { setup_initial_ping, NRemoteAddress, NRemotePort, FromPid }),
  -    ok.
  -
  -
   setup_reconnect_timer(MSec, IP, Port, CompSpec) ->
       erlang:send_after(MSec, ?MODULE, 
   		      { rvi_setup_persistent_connection, 
   			IP, Port, CompSpec }),
       ok.
  -
   
   get_services_by_connection(ConnPid) ->
       case ets:lookup(?CONNECTION_TABLE, ConnPid) of
  
positive.code:     %% Send our own servide announcement to the remote server
      %% that just authorized to us.
      [ ok, LocalServices ] = service_discovery_rpc:get_services_by_module(CompSpec, local),
      
      [ ok, FilteredServices ] = authorize_rpc:filter_by_destination(
                                   CompSpec, LocalServices, Conn),
  
      %% Send an authorize back to the remote node
      ?info("dlink_tcp:authorize(): Announcing local services: ~p to remote ~p:~p",
  	  [FilteredServices, RemoteAddress, RemotePort]),
  
      [ ok, JWT ] = authorize_rpc:sign_message(
                      CompSpec, availability_msg(available, FilteredServices)),
      connection:send(FromPid, 
                      term_to_json(
                        {struct, 		     
                         [ { ?DLINK_ARG_TRANSACTION_ID, 1 },
                           { ?DLINK_ARG_CMD, ?DLINK_CMD_SERVICE_ANNOUNCE },
                           { ?DLINK_ARG_SIGNATURE, JWT } ]})),
  
      %% Setup ping interval
      gen_server:call(?SERVER, { setup_initial_ping, RemoteAddress, RemotePort, FromPid }),
      ok.
  
  process_data(_FromPid, RemoteIP, RemotePort, ProtocolMod, Data, CompSpec) ->
  
negative.code:     ?debug("dlink_tcp:authorize(): TransactionID:  ~p", [ TransactionID ]),
      ?debug("dlink_tcp:authorize(): Signature:      ~p", [ Signature ]),
  
      { _NRemoteAddress, _NRemotePort} = Conn =
          case { RemoteAddress, RemotePort } of
              { "0.0.0.0", 0 } ->
  
  