1 /* 2 * linux/include/linux/sunrpc/svcauth.h 3 * 4 * RPC server-side authentication stuff. 5 * 6 * Copyright (C) 1995, 1996 Olaf Kirch <okir@monad.swb.de> 7 */ 8 9 #ifndef _LINUX_SUNRPC_SVCAUTH_H_ 10 #define _LINUX_SUNRPC_SVCAUTH_H_ 11 12 #ifdef __KERNEL__ 13 14 #include <linux/sunrpc/msg_prot.h> 15 16 struct svc_cred { 17 u32 cr_flavor; 18 uid_t cr_uid; 19 gid_t cr_gid; 20 gid_t cr_groups[NGROUPS]; 21 }; 22 23 struct svc_rqst; /* forward decl */ 24 25 void svc_authenticate(struct svc_rqst *rqstp, u32 *statp, u32 *authp); 26 int svc_auth_register(u32 flavor, void (*)(struct svc_rqst *,u32 *,u32 *)); 27 void svc_auth_unregister(u32 flavor); 28 29 #if 0 30 /* 31 * Decoded AUTH_UNIX data. This is different from what's in the RPC lib. 32 */ 33 #define NGRPS 16 34 struct authunix_parms { 35 u32 aup_stamp; 36 u32 aup_uid; 37 u32 aup_gid; 38 u32 aup_len; 39 u32 aup_gids[NGRPS]; 40 }; 41 42 struct svc_authops * auth_getops(u32 flavor); 43 #endif 44 45 46 #endif /* __KERNEL__ */ 47 48 #endif /* _LINUX_SUNRPC_SVCAUTH_H_ */ 49