anchor.diff:       start_exec_direct_fun1_read_write_advanced,
        start_shell_sock_exec_fun,
        start_shell_sock_daemon_exec,
  +     start_shell_sock_daemon_exec_multi,
        encode_decode_pty_opts,
        connect_sock_not_tcp,
        daemon_sock_not_tcp,
  
positive.code: 							     {user_interaction, false}]),
      do_simple_exec(ConnectionRef).
  
  
  simple_exec_sock(_Config) ->
      {ok, Sock} = ssh_test_lib:gen_tcp_connect("localhost", ?SSH_DEFAULT_PORT, [{active,false}]),
      {ok, ConnectionRef} = ssh:connect(Sock, [{silently_accept_hosts, true},
  					     {user_interaction, false}]),
      do_simple_exec(ConnectionRef).
      
  
  
  do_simple_exec(ConnectionRef) ->
      {ok, ChannelId0} = ssh_connection:session_channel(ConnectionRef, infinity),
      success = ssh_connection:exec(ConnectionRef, ChannelId0,
  				  "echo testing", infinity),
      %% receive response to input
      receive
  	{ssh_cm, ConnectionRef, {data, ChannelId0, 0, <<"testing\n">>}} ->
  	    ok
      after 
  	10000 -> ct:fail("timeout ~p:~p",[?MODULE,?LINE])
      end,
  
      %% receive close messages
      receive
  	{ssh_cm, ConnectionRef, {eof, ChannelId0}} ->
  	    ok
      after 
  	10000 -> ct:fail("timeout ~p:~p",[?MODULE,?LINE])
      end,
      receive
  	{ssh_cm, ConnectionRef, {exit_status, ChannelId0, 0}} ->
  	    ok
      after 
  	10000 -> ct:fail("timeout ~p:~p",[?MODULE,?LINE])
      end,
      receive
  	{ssh_cm, ConnectionRef,{closed, ChannelId0}} ->
  	    ok
      after 
  	10000 -> ct:fail("timeout ~p:~p",[?MODULE,?LINE])
      end.
  
  %%--------------------------------------------------------------------
  
negative.code:          start_shell_exec_fun2/1,
           start_shell_exec_fun3/1,
           start_shell_sock_daemon_exec/1,
           start_shell_sock_daemon_exec_multi/1,
           start_shell_sock_exec_fun/1,
           start_subsystem_on_closed_channel/1,
           stop_listener/1
  