]> arthur.barton.de Git - netatalk.git/blob - etc/afpd/auth.h
NGROUPS is not always the maximum number of groups for a user, use a 'calloced'
[netatalk.git] / etc / afpd / auth.h
1 /*
2  * $Id: auth.h,v 1.5.8.1 2005-01-11 20:58:42 didg Exp $
3  *
4  * Copyright (c) 1990,1993 Regents of The University of Michigan.
5  * All Rights Reserved.  See COPYRIGHT.
6  */
7
8 #ifndef AFPD_AUTH_H
9 #define AFPD_AUTH_H 1
10
11 #ifdef HAVE_LIMITS_H
12 #include <limits.h>
13 #endif /* HAVE_LIMITS_H */
14
15 #ifdef HAVE_SYS_CDEFS_H
16 #include <sys/cdefs.h>
17 #endif /* HAVE_SYS_CDEFS_H */
18
19 #include "globals.h"
20
21 struct afp_versions {
22     char        *av_name;
23     int         av_number;
24 };
25
26 /* for GetUserInfo */
27 #define USERIBIT_USER  (1 << 0)
28 #define USERIBIT_GROUP (1 << 1)
29 #define USERIBIT_ALL   (USERIBIT_USER | USERIBIT_GROUP)
30
31 extern uid_t    uuid;
32 #if defined( sun ) && !defined( __svr4__ ) || defined( ultrix )
33 extern int      *groups;
34 #else /*sun __svr4__ ultrix*/
35 extern gid_t    *groups;
36 #endif /*sun __svr4__ ultrix*/
37 extern int      ngroups;
38
39 /* FP functions */
40 extern int      afp_login __P((AFPObj *, char *, int, char *, int *));
41 extern int      afp_login_ext __P((AFPObj *, char *, unsigned int, char *, unsigned int *));
42 extern int      afp_logincont __P((AFPObj *, char *, int, char *, int *));
43 extern int      afp_changepw __P((AFPObj *, char *, int, char *, int *));
44 extern int      afp_logout __P((AFPObj *, char *, int, char *, int *));
45 extern int      afp_getuserinfo __P((AFPObj *, char *, int, char *, int *));
46 extern int      afp_getsession __P((AFPObj *, char *, unsigned int, char *, unsigned int *));
47 extern int      afp_disconnect __P((AFPObj *, char *, int, char *, int *));
48 extern int      afp_zzz __P((AFPObj *, char *, unsigned int, char *, unsigned int *));
49
50 #endif /* auth.h */