home *** CD-ROM | disk | FTP | other *** search
/ IRIS Development Option 6.2 / IRIS_Development_Option_6.2_814-0478-001.iso / dist / WorkShop.idb / usr / share / catman / u_man / cat1 / cvconnect.z / cvconnect
Text File  |  1996-03-14  |  6KB  |  132 lines

  1.  
  2.  
  3.  
  4. CCCCVVVVCCCCOOOONNNNNNNNEEEECCCCTTTT((((1111MMMM))))                                                    CCCCVVVVCCCCOOOONNNNNNNNEEEECCCCTTTT((((1111MMMM))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      cvconnect - The WorkShop Debugger Connection Helper
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      /usr/lib/WorkShop/cvconnect -h host -n pcsnum -p port
  13.  
  14. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  15.      _c_v_c_o_n_n_e_c_t is invoked by the WorkShop Debugger and Performance tools in
  16.      order to establish a secure connection to the debug server, _c_v_p_c_s.  It is
  17.      not normally run by users.
  18.  
  19. SSSSEEEECCCCUUUURRRRIIIITTTTYYYY
  20.      The WorkShop tools provide access which is a subset of that provided by
  21.      _r_s_h(1).  Users may debug or run performance experiments on processes on
  22.      their own host, or on any other host in the connected network, subject to
  23.      certain constraints.  In all cases, the access rights granted to the
  24.      session are those of the user ID of the person who begins the session, as
  25.      granted to that UID by the system where the target process actually runs.
  26.  
  27.      When the host where the command is typed (the "user" host) is the same as
  28.      the host where the target program actually runs (the "target" host),
  29.      access is always granted.
  30.  
  31.      When the user host is not the same as the target host ("remote"
  32.      debugging), an authentication procedure is conducted before allowing the
  33.      session to begin.  At the user's end, this procedure is managed by
  34.      _c_v_c_o_n_n_e_c_t, which is a set-UID program in order to ensure the security of
  35.      this negotiation.
  36.  
  37.    AAAAcccccccceeeessssssss
  38.      The rights granted are always those of the user, as determined by the
  39.      numeric user ID.  For a remote debugging session, these rights are
  40.      granted according to the following authentication protocol:
  41.  
  42.      1)   _c_v_c_o_n_n_e_c_t initiates a connection to the WorkShop Debugger daemon,
  43.           _c_v_p_c_s_d.
  44.  
  45.      2)   The daemon checks _c_v_c_o_n_n_e_c_t'_s source port.  If the port is not in
  46.           the range 512-1023, the daemon aborts the connection.
  47.  
  48.      3)   The server checks the client's source address and requests the
  49.           corresponding host name (see _g_e_t_h_o_s_t_b_y_a_d_d_r(3N), _h_o_s_t_s(4), and
  50.           _n_a_m_e_d(1M)).  If the hostname cannot be determined, the connection is
  51.           aborted.
  52.  
  53.      4)   The daemon confirms that the numeric UID in use by _c_v_c_o_n_n_e_c_t is
  54.           defined on the daemon's system, using _g_e_t_p_w_u_i_d(3).
  55.  
  56.      5)   The daemon then tries to validate the user using _r_u_s_e_r_o_k(3N), which
  57.           uses the file /_e_t_c/_h_o_s_t_s._e_q_u_i_v and the ._r_h_o_s_t_s file found in the
  58.           user's home directory.  If the user is not the super-user, (user id
  59.           0), the file /_e_t_c/_h_o_s_t_s._e_q_u_i_v is consulted for a list of hosts
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. CCCCVVVVCCCCOOOONNNNNNNNEEEECCCCTTTT((((1111MMMM))))                                                    CCCCVVVVCCCCOOOONNNNNNNNEEEECCCCTTTT((((1111MMMM))))
  71.  
  72.  
  73.  
  74.           considered ``equivalent''.  If the client's host name is present in
  75.           this file, the authentication is considered successful.  If the
  76.           lookup fails, or the user is the super-user, then the file ._r_h_o_s_t_s
  77.           in the home directory of the remote user is checked for the machine
  78.           name and identity of the user on the client's machine. If this
  79.           lookup fails, the connection is terminated. The -l option prevents
  80.           _r_u_s_e_r_o_k(3N) from doing any validation based on the user's
  81.           ``.rhosts'' file, unless the user is the superuser.
  82.  
  83.      6)   If necessary, the daemon creates a call socket, forks, sets its UID
  84.           and groups to those of _c_v_c_o_n_n_e_c_t and execs _c_v_p_c_s (passing along -l
  85.           and -L flags, if any), and records the port ID of the call socket.
  86.           If the incoming request is from the same host, user, and debugging
  87.           session as an already-running _c_v_p_c_s, the daemon merely looks up this
  88.           call socket port number.  Either way, the call socket port ID is
  89.           then returned to _c_v_c_o_n_n_e_c_t.
  90.  
  91.      7)   _C_v_c_o_n_n_e_c_t then calls up _c_v_p_c_s using the call socket ID returned to
  92.           it from _c_p_v_c_s_d.  The same authentication steps are performed again,
  93.           with the additional requirement that the UID of _c_v_c_o_n_n_e_c_t must match
  94.           the UID _c_v_p_c_s inherited from _c_v_p_c_s_d.
  95.  
  96.      8)   If the authentication passes, _c_v_p_c_s acknowledges the connection.
  97.           _C_v_c_o_n_n_e_c_t sends it the port ID originally provided it in its
  98.           options, on which the true client has been awaiting a call.  _C_v_p_c_s
  99.           connects to the true client, and debugging proceeds.
  100.  
  101. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  102.      cvd(1), cvperf(1), cvpcsd(1m), cvpcs(1m) gethostbyaddr (3N), hosts (4),
  103.      named (1M)
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.                                                                         PPPPaaaaggggeeee 2222
  127.  
  128.  
  129.  
  130.