xref: /illumos-gate/usr/src/head/protocols/rwhod.h (revision fc8ae2ec4282de7ec96f48e11078345f3dc0ac3d)
1 /*
2  * CDDL HEADER START
3  *
4  * The contents of this file are subject to the terms of the
5  * Common Development and Distribution License, Version 1.0 only
6  * (the "License").  You may not use this file except in compliance
7  * with the License.
8  *
9  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10  * or http://www.opensolaris.org/os/licensing.
11  * See the License for the specific language governing permissions
12  * and limitations under the License.
13  *
14  * When distributing Covered Code, include this CDDL HEADER in each
15  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16  * If applicable, add the following below this CDDL HEADER, with the
17  * fields enclosed by brackets "[]" replaced with your own identifying
18  * information: Portions Copyright [yyyy] [name of copyright owner]
19  *
20  * CDDL HEADER END
21  */
22 /*
23  * Copyright 1989 Sun Microsystems, Inc.  All rights reserved.
24  * Use is subject to license terms.
25  */
26 
27 /*	Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T	*/
28 /*	  All Rights Reserved	*/
29 
30 /*
31  * Portions of this source code were derived from Berkeley 4.3 BSD
32  * under license from the Regents of the University of California.
33  */
34 
35 /*
36  * rwho protocol packet format.
37  */
38 
39 #ifndef _PROTOCOLS_RWHOD_H
40 #define	_PROTOCOLS_RWHOD_H
41 
42 #ifdef	__cplusplus
43 extern "C" {
44 #endif
45 
46 struct	outmp {
47 	char	out_line[8];		/* tty name */
48 	char	out_name[8];		/* user id */
49 	long	out_time;		/* time on */
50 };
51 
52 struct	whod {
53 	char	wd_vers;		/* protocol version # */
54 	char	wd_type;		/* packet type, see below */
55 	char	wd_pad[2];
56 	int	wd_sendtime;		/* time stamp by sender */
57 	int	wd_recvtime;		/* time stamp applied by receiver */
58 	char	wd_hostname[32];	/* hosts's name */
59 	int	wd_loadav[3];		/* load average as in uptime */
60 	int	wd_boottime;		/* time system booted */
61 	struct	whoent {
62 		struct	outmp we_utmp;	/* active tty info */
63 		int	we_idle;	/* tty idle time */
64 	} wd_we[1024 / sizeof (struct whoent)];
65 };
66 
67 #define	WHODVERSION	1
68 #define	WHODTYPE_STATUS	1		/* host status */
69 
70 #ifdef	__cplusplus
71 }
72 #endif
73 
74 #endif	/* _PROTOCOLS_RWHOD_H */
75