/*
 * Please do not edit this file.
 * It was generated using rpcgen.
 */

#ifndef _RNUSERS_H_RPCGEN
#define _RNUSERS_H_RPCGEN

#include <rpc/rpc.h>

/*
 * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
 * unrestricted use provided that this legend is included on all tape
 * media and as a part of the software program in whole or part.  Users
 * may copy or modify Sun RPC without charge, but are not authorized
 * to license or distribute it to anyone else except as part of a product or
 * program developed by the user or with the express written consent of
 * Sun Microsystems, Inc.
 *
 * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE
 * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
 *
 * Sun RPC is provided with no support and without any obligation on the
 * part of Sun Microsystems, Inc. to assist in its use, correction,
 * modification or enhancement.
 *
 * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
 * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC
 * OR ANY PART THEREOF.
 *
 * In no event will Sun Microsystems, Inc. be liable for any lost revenue
 * or profits or other special, indirect and consequential damages, even if
 * Sun has been advised of the possibility of such damages.
 *
 * Sun Microsystems, Inc.
 * 2550 Garcia Avenue
 * Mountain View, California  94043
 */
/*
 * Copyright (c) 1987, 1990 by Sun Microsystems, Inc.
 */

/* from @(#)rnusers.x	1.4 91/03/11 TIRPC 1.0 */
#ifndef _rpcsvc_rnusers_h
#define _rpcsvc_rnusers_h
/*
 * This is a utmp entry that does not correspond to a genuine user
 */
#ifndef nonuser
#define nonuser(ut) ((ut).ut_host[0] == 0 && %      strncmp((ut).ut_line, "tty", 3) == 0 && ((ut).ut_line[3] == 'p' %                                            || (ut).ut_line[3] == 'q' %                                            || (ut).ut_line[3] == 'r' %                                            || (ut).ut_line[3] == 's'))
#endif /* !def nonuser */
#define MAXUSERS 100
#define MAXUTLEN 256

struct ru_utmp {
	char *ut_line;
	char *ut_name;
	char *ut_host;
	int ut_time;
};
typedef struct ru_utmp ru_utmp;
#ifdef __cplusplus 
extern "C" bool_t xdr_ru_utmp(XDR *, ru_utmp*);
#elif __STDC__ 
extern  bool_t xdr_ru_utmp(XDR *, ru_utmp*);
#else /* Old Style C */ 
bool_t xdr_ru_utmp();
#endif /* Old Style C */ 


struct utmpidle {
	ru_utmp ui_utmp;
	u_int ui_idle;
};
typedef struct utmpidle utmpidle;
#ifdef __cplusplus 
extern "C" bool_t xdr_utmpidle(XDR *, utmpidle*);
#elif __STDC__ 
extern  bool_t xdr_utmpidle(XDR *, utmpidle*);
#else /* Old Style C */ 
bool_t xdr_utmpidle();
#endif /* Old Style C */ 


typedef struct {
	u_int utmparr_len;
	ru_utmp *utmparr_val;
} utmparr;
#ifdef __cplusplus 
extern "C" bool_t xdr_utmparr(XDR *, utmparr*);
#elif __STDC__ 
extern  bool_t xdr_utmparr(XDR *, utmparr*);
#else /* Old Style C */ 
bool_t xdr_utmparr();
#endif /* Old Style C */ 


typedef struct {
	u_int utmpidlearr_len;
	utmpidle *utmpidlearr_val;
} utmpidlearr;
#ifdef __cplusplus 
extern "C" bool_t xdr_utmpidlearr(XDR *, utmpidlearr*);
#elif __STDC__ 
extern  bool_t xdr_utmpidlearr(XDR *, utmpidlearr*);
#else /* Old Style C */ 
bool_t xdr_utmpidlearr();
#endif /* Old Style C */ 

#endif /*!_rpcsvc_rnusers_h*/

#define RUSERSPROG ((u_long)100002)
#define RUSERSVERS_ORIG ((u_long)1)

#ifdef __cplusplus
#define RUSERSPROC_NUM ((u_long)1)
extern "C" int * rusersproc_num_1(void *, CLIENT *);
extern "C" int * rusersproc_num_1_svc(void *, struct svc_req *);
#define RUSERSPROC_NAMES ((u_long)2)
extern "C" utmparr * rusersproc_names_1(void *, CLIENT *);
extern "C" utmparr * rusersproc_names_1_svc(void *, struct svc_req *);
#define RUSERSPROC_ALLNAMES ((u_long)3)
extern "C" utmparr * rusersproc_allnames_1(void *, CLIENT *);
extern "C" utmparr * rusersproc_allnames_1_svc(void *, struct svc_req *);

#elif __STDC__
#define RUSERSPROC_NUM ((u_long)1)
extern  int * rusersproc_num_1(void *, CLIENT *);
extern  int * rusersproc_num_1_svc(void *, struct svc_req *);
#define RUSERSPROC_NAMES ((u_long)2)
extern  utmparr * rusersproc_names_1(void *, CLIENT *);
extern  utmparr * rusersproc_names_1_svc(void *, struct svc_req *);
#define RUSERSPROC_ALLNAMES ((u_long)3)
extern  utmparr * rusersproc_allnames_1(void *, CLIENT *);
extern  utmparr * rusersproc_allnames_1_svc(void *, struct svc_req *);

#else /* Old Style C */ 
#define RUSERSPROC_NUM ((u_long)1)
extern  int * rusersproc_num_1();
extern  int * rusersproc_num_1_svc();
#define RUSERSPROC_NAMES ((u_long)2)
extern  utmparr * rusersproc_names_1();
extern  utmparr * rusersproc_names_1_svc();
#define RUSERSPROC_ALLNAMES ((u_long)3)
extern  utmparr * rusersproc_allnames_1();
extern  utmparr * rusersproc_allnames_1_svc();
#endif /* Old Style C */ 
#define RUSERSVERS_IDLE ((u_long)2)

#ifdef __cplusplus
extern "C" int * rusersproc_num_2(void *, CLIENT *);
extern "C" int * rusersproc_num_2_svc(void *, struct svc_req *);
extern "C" utmpidlearr * rusersproc_names_2(void *, CLIENT *);
extern "C" utmpidlearr * rusersproc_names_2_svc(void *, struct svc_req *);
extern "C" utmpidlearr * rusersproc_allnames_2(void *, CLIENT *);
extern "C" utmpidlearr * rusersproc_allnames_2_svc(void *, struct svc_req *);

#elif __STDC__
extern  int * rusersproc_num_2(void *, CLIENT *);
extern  int * rusersproc_num_2_svc(void *, struct svc_req *);
extern  utmpidlearr * rusersproc_names_2(void *, CLIENT *);
extern  utmpidlearr * rusersproc_names_2_svc(void *, struct svc_req *);
extern  utmpidlearr * rusersproc_allnames_2(void *, CLIENT *);
extern  utmpidlearr * rusersproc_allnames_2_svc(void *, struct svc_req *);

#else /* Old Style C */ 
extern  int * rusersproc_num_2();
extern  int * rusersproc_num_2_svc();
extern  utmpidlearr * rusersproc_names_2();
extern  utmpidlearr * rusersproc_names_2_svc();
extern  utmpidlearr * rusersproc_allnames_2();
extern  utmpidlearr * rusersproc_allnames_2_svc();
#endif /* Old Style C */ 

#endif /* !_RNUSERS_H_RPCGEN */
