175b63130SGarrett Wollman /* 275b63130SGarrett Wollman * Sun RPC is a product of Sun Microsystems, Inc. and is provided for 375b63130SGarrett Wollman * unrestricted use provided that this legend is included on all tape 475b63130SGarrett Wollman * media and as a part of the software program in whole or part. Users 575b63130SGarrett Wollman * may copy or modify Sun RPC without charge, but are not authorized 675b63130SGarrett Wollman * to license or distribute it to anyone else except as part of a product or 775b63130SGarrett Wollman * program developed by the user. 875b63130SGarrett Wollman * 975b63130SGarrett Wollman * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE 1075b63130SGarrett Wollman * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR 1175b63130SGarrett Wollman * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. 1275b63130SGarrett Wollman * 1375b63130SGarrett Wollman * Sun RPC is provided with no support and without any obligation on the 1475b63130SGarrett Wollman * part of Sun Microsystems, Inc. to assist in its use, correction, 1575b63130SGarrett Wollman * modification or enhancement. 1675b63130SGarrett Wollman * 1775b63130SGarrett Wollman * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE 1875b63130SGarrett Wollman * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC 1975b63130SGarrett Wollman * OR ANY PART THEREOF. 2075b63130SGarrett Wollman * 2175b63130SGarrett Wollman * In no event will Sun Microsystems, Inc. be liable for any lost revenue 2275b63130SGarrett Wollman * or profits or other special, indirect and consequential damages, even if 2375b63130SGarrett Wollman * Sun has been advised of the possibility of such damages. 2475b63130SGarrett Wollman * 2575b63130SGarrett Wollman * Sun Microsystems, Inc. 2675b63130SGarrett Wollman * 2550 Garcia Avenue 2775b63130SGarrett Wollman * Mountain View, California 94043 2875b63130SGarrett Wollman */ 2975b63130SGarrett Wollman 3075b63130SGarrett Wollman /* 3175b63130SGarrett Wollman * Find out about remote users 3275b63130SGarrett Wollman */ 3375b63130SGarrett Wollman 3475b63130SGarrett Wollman #ifndef RPC_HDR 3575b63130SGarrett Wollman %#ifndef lint 3675b63130SGarrett Wollman %/*static char sccsid[] = "from: @(#)rnusers.x 1.2 87/09/20 Copyr 1987 Sun Micro";*/ 3775b63130SGarrett Wollman %/*static char sccsid[] = "from: @(#)rnusers.x 2.1 88/08/01 4.0 RPCSRC";*/ 389bd1654aSBill Paul %static char rcsid[] = "$Id: rnusers.x,v 1.1 1994/08/04 19:01:50 wollman Exp $"; 3975b63130SGarrett Wollman %#endif /* not lint */ 4075b63130SGarrett Wollman #endif 4175b63130SGarrett Wollman 4275b63130SGarrett Wollman const MAXUSERS = 100; 4375b63130SGarrett Wollman const MAXUTLEN = 256; 4475b63130SGarrett Wollman 4575b63130SGarrett Wollman struct utmp { 4675b63130SGarrett Wollman string ut_line<MAXUTLEN>; 4775b63130SGarrett Wollman string ut_name<MAXUTLEN>; 4875b63130SGarrett Wollman string ut_host<MAXUTLEN>; 4975b63130SGarrett Wollman int ut_time; 5075b63130SGarrett Wollman }; 5175b63130SGarrett Wollman 5275b63130SGarrett Wollman 5375b63130SGarrett Wollman struct utmpidle { 5475b63130SGarrett Wollman utmp ui_utmp; 5575b63130SGarrett Wollman unsigned int ui_idle; 5675b63130SGarrett Wollman }; 5775b63130SGarrett Wollman 5875b63130SGarrett Wollman typedef utmp utmparr<MAXUSERS>; 5975b63130SGarrett Wollman 6075b63130SGarrett Wollman typedef utmpidle utmpidlearr<MAXUSERS>; 6175b63130SGarrett Wollman 629bd1654aSBill Paul const RUSERS_MAXUSERLEN = 32; 639bd1654aSBill Paul const RUSERS_MAXLINELEN = 32; 649bd1654aSBill Paul const RUSERS_MAXHOSTLEN = 257; 659bd1654aSBill Paul 669bd1654aSBill Paul struct rusers_utmp { 679bd1654aSBill Paul string ut_user<RUSERS_MAXUSERLEN>; /* aka ut_name */ 689bd1654aSBill Paul string ut_line<RUSERS_MAXLINELEN>; /* device */ 699bd1654aSBill Paul string ut_host<RUSERS_MAXHOSTLEN>; /* host user logged on from */ 709bd1654aSBill Paul int ut_type; /* type of entry */ 719bd1654aSBill Paul int ut_time; /* time entry was made */ 729bd1654aSBill Paul unsigned int ut_idle; /* minutes idle */ 739bd1654aSBill Paul }; 749bd1654aSBill Paul 759bd1654aSBill Paul typedef rusers_utmp utmp_array<>; 769bd1654aSBill Paul 7775b63130SGarrett Wollman program RUSERSPROG { 7875b63130SGarrett Wollman /* 7975b63130SGarrett Wollman * Old version does not include idle information 8075b63130SGarrett Wollman */ 8175b63130SGarrett Wollman version RUSERSVERS_ORIG { 8275b63130SGarrett Wollman int 8375b63130SGarrett Wollman RUSERSPROC_NUM(void) = 1; 8475b63130SGarrett Wollman 8575b63130SGarrett Wollman utmparr 8675b63130SGarrett Wollman RUSERSPROC_NAMES(void) = 2; 8775b63130SGarrett Wollman 8875b63130SGarrett Wollman utmparr 8975b63130SGarrett Wollman RUSERSPROC_ALLNAMES(void) = 3; 9075b63130SGarrett Wollman } = 1; 9175b63130SGarrett Wollman 9275b63130SGarrett Wollman /* 9375b63130SGarrett Wollman * Includes idle information 9475b63130SGarrett Wollman */ 9575b63130SGarrett Wollman version RUSERSVERS_IDLE { 9675b63130SGarrett Wollman int 9775b63130SGarrett Wollman RUSERSPROC_NUM(void) = 1; 9875b63130SGarrett Wollman 9975b63130SGarrett Wollman utmpidlearr 10075b63130SGarrett Wollman RUSERSPROC_NAMES(void) = 2; 10175b63130SGarrett Wollman 10275b63130SGarrett Wollman utmpidlearr 10375b63130SGarrett Wollman RUSERSPROC_ALLNAMES(void) = 3; 10475b63130SGarrett Wollman } = 2; 1059bd1654aSBill Paul 1069bd1654aSBill Paul /* 1079bd1654aSBill Paul * Version 3 rusers procedures (from Solaris). 1089bd1654aSBill Paul * (Thanks a lot Sun.) 1099bd1654aSBill Paul */ 1109bd1654aSBill Paul version RUSERSVERS_3 { 1119bd1654aSBill Paul int 1129bd1654aSBill Paul RUSERSPROC_NUM(void) = 1; 1139bd1654aSBill Paul 1149bd1654aSBill Paul utmp_array 1159bd1654aSBill Paul RUSERSPROC_NAMES(void) = 2; 1169bd1654aSBill Paul 1179bd1654aSBill Paul utmp_array 1189bd1654aSBill Paul RUSERSPROC_ALLNAMES(void) = 3; 1199bd1654aSBill Paul } = 3; 1209bd1654aSBill Paul 12175b63130SGarrett Wollman } = 100002; 12275b63130SGarrett Wollman 123