BSD 4_3_Tahoe release
[unix-history] / usr / src / new / sunrpc / auth_unix.h
CommitLineData
95f51977
C
1/*
2 * Sun RPC is a product of Sun Microsystems, Inc. and is provided for
3 * unrestricted use provided that this legend is included on all tape
4 * media and as a part of the software program in whole or part. Users
5 * may copy or modify Sun RPC without charge, but are not authorized
6 * to license or distribute it to anyone else except as part of a product or
7 * program developed by the user.
8 *
9 * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE
10 * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
11 * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
12 *
13 * Sun RPC is provided with no support and without any obligation on the
14 * part of Sun Microsystems, Inc. to assist in its use, correction,
15 * modification or enhancement.
16 *
17 * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
18 * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC
19 * OR ANY PART THEREOF.
20 *
21 * In no event will Sun Microsystems, Inc. be liable for any lost revenue
22 * or profits or other special, indirect and consequential damages, even if
23 * Sun has been advised of the possibility of such damages.
24 *
25 * Sun Microsystems, Inc.
26 * 2550 Garcia Avenue
27 * Mountain View, California 94043
28 */
29/* @(#)auth_unix.h 1.1 84/12/20 SMI */
30
31/*
32 * auth_unix.h, Protocol for UNIX style authentication parameters for RPC
33 *
34 * Copyright (C) 1984, Sun Microsystems, Inc.
35 */
36
37/*
38 * The system is very weak. The client uses no encryption for it
39 * credentials and only sends null verifiers. The server sends backs
40 * null verifiers or optionally a verifier that suggests a new short hand
41 * for the credentials.
42 */
43
44/* The machine name is part of a credential; it may not exceed 255 bytes */
45#define MAX_MACHINE_NAME 255
46
47/* gids compose part of a credential; there may not be more than 10 of them */
48#define NGRPS 8
49
50/*
51 * Unix style credentials.
52 */
53struct authunix_parms {
54 u_long aup_time;
55 char *aup_machname;
56 int aup_uid;
57 int aup_gid;
58 u_int aup_len;
59 int *aup_gids;
60};
61
62extern bool_t xdr_authunix_parms();
63
64/*
65 * If a response verifier has flavor AUTH_SHORT,
66 * then the body of the response verifier encapsulates the following structure;
67 * again it is serialized in the obvious fashion.
68 */
69struct short_hand_verf {
70 struct opaque_auth new_cred;
71};