


      RRRRWWWWHHHHOOOODDDD((((1111))))                    ((((bbbbssssdddd 4444....2222))))                    RRRRWWWWHHHHOOOODDDD((((1111))))



      NNNNAAAAMMMMEEEE
           rwhod - system status server

      SSSSYYYYNNNNTTTTAAAAXXXX
           ////eeeettttcccc////rrrrwwwwhhhhoooodddd

      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
           _R_w_h_o_d is the server which maintains the database used by the
           _r_w_h_o(1) and _r_u_p_t_i_m_e(1) programs.  Its operation is
           predicated on the ability to _b_r_o_a_d_c_a_s_t messages on a
           network.

           _R_w_h_o_d operates as both a producer and consumer of status
           information.  As a producer of information, it periodically
           queries the state of the system and constructs status
           messages which are broadcast on a network.  As a consumer of
           information, it listens for other _r_w_h_o_d servers' status
           messages, validating them, then recording them in a
           collection of files located in the directory
           /_u_s_r/_s_p_o_o_l/_r_w_h_o.

           The _r_w_h_o server transmits and receives messages at the port
           indicated in the ``rwho'' service specification, see
           _s_e_r_v_i_c_e_s(4).  The messages sent and received are of the
           form:

           struct    outmp {
                char out_line[8];/* tty name */
                char out_name[8];/* user id */
                long out_time;/* time on */
           };

           struct    whod {
                char wd_vers;
                char wd_type;
                char wd_fill[2];
                int  wd_sendtime;
                int  wd_recvtime;
                char wd_hostname[32];
                int  wd_loadav[3];
                int  wd_boottime;
                struct    whoent {
                     structoutmp we_utmp;
                     int  we_idle;
                } wd_we[1024 / sizeof (struct whoent)];
           };

           The array at the end of the message contains information
           about the users logged in to the sending machine.  This
           information includes the contents of the _u_t_m_p(4) entry for
           each non-idle terminal line and a value indicating the time
           since a character was last received on the terminal line.



      Page 1                                                   (9010-E)






      RRRRWWWWHHHHOOOODDDD((((1111))))                    ((((bbbbssssdddd 4444....2222))))                    RRRRWWWWHHHHOOOODDDD((((1111))))



           Messages received by the _r_w_h_o server are discarded unless
           they originated at a _r_w_h_o server's port.  In addition, if
           the host's name in the message contains any unprintable
           ASCII characters, the message is discarded.  Valid messages
           received by _r_w_h_o_d are placed in files named _w_h_o_d._h_o_s_t_n_a_m_e in
           the directory /_u_s_r/_s_p_o_o_l/_r_w_h_o.  These files contain only the
           most recent message, in the format described above.

           Status messages are generated approximately once every 60
           seconds.

      SSSSEEEEEEEE AAAALLLLSSSSOOOO
           rwho(1), ruptime(1)










































      Page 2                                                   (9010-E)






      RRRRWWWWHHHHOOOODDDD((((1111))))                    ((((bbbbssssdddd 4444....2222))))                    RRRRWWWWHHHHOOOODDDD((((1111))))



      BBBBUUUUGGGGSSSS
           Should relay status information between networks. People
           often interpret the server dying as a machine going down.




















































      Page 3                                                   (9010-E)



