anchor.diff:  -define(JNODEBIN, "jnode").
   -define(BLOCKING_TIMEOUT, 1000).
   
  --record(jsrv, {workers  = []
  -              ,worker   = no
  -              ,n        = 0
  -              ,peer     = null
  -              ,bindir   = ?BINDIR
  -              ,stopping = false
  -              }).
  +-record(ej, {workers  = []
  +            ,worker   = no
  +            ,n        = 0
  +            ,peer     = null
  +            ,bindir   = ?BINDIR
  +            ,stopping = false
  +            }).
   
   %% ------ PUBLIC -----
   
  
positive.code:     end.
      
  quick_handshake(Peer) ->
      log:info(self(), "quick handshake to: ~p", [Peer]),
      run_handshake(Peer).
  
  full_handshake(Peer,Bindir) ->
      log:info(self(), "full handshake to: ~p", [Peer]),
      port(Bindir),
      timer:sleep(500),
      case run_handshake(Peer) of
  
negative.code: 
  shutdown(Peer,S) ->
      send_peer(Peer, Ref=get_ref(), ?TAG_NODE, [?EJMSGPART(call,shutdown)]),
      lists:map(fun(W) -> W ! {'STOP'} end, S#ej.workers),
      receive
          {Peer,Ref,{?TAG_OK,[?EJMSGPART(call,bye)]}} -> 
              log:info(self(), "shutdown confirmed by peer", []),
  