nfs-ganesha 1.4
|
00001 /* This is a central clearing house for RPC definitions. Nothing 00002 should included anything related to RPC except this file */ 00003 00004 #ifndef _RPC_SVC_AUTH_H 00005 #define _RPC_SVC_AUTH_H 00006 00007 /* Here is what we should pick up from /usr/include/tirpc/rpc/svc_auth.h */ 00008 typedef struct SVCAUTH { 00009 struct svc_auth_ops { 00010 int (*svc_ah_wrap)(struct SVCAUTH *, XDR *, xdrproc_t, 00011 caddr_t); 00012 int (*svc_ah_unwrap)(struct SVCAUTH *, XDR *, xdrproc_t, 00013 caddr_t); 00014 int (*svc_ah_destroy)(struct SVCAUTH *); 00015 } *svc_ah_ops; 00016 void * svc_ah_private; 00017 } SVCAUTH; 00018 00019 #define SVCAUTH_WRAP(auth, xdrs, xfunc, xwhere) \ 00020 ((*((auth)->svc_ah_ops->svc_ah_wrap))(auth, xdrs, xfunc, xwhere)) 00021 #define SVCAUTH_UNWRAP(auth, xdrs, xfunc, xwhere) \ 00022 ((*((auth)->svc_ah_ops->svc_ah_unwrap))(auth, xdrs, xfunc, xwhere)) 00023 #define SVCAUTH_DESTROY(auth) \ 00024 ((*((auth)->svc_ah_ops->svc_ah_destroy))(auth)) 00025 00026 __BEGIN_DECLS 00027 extern enum auth_stat _authenticate(struct svc_req *, struct rpc_msg *); 00028 extern int svc_auth_reg(int, enum auth_stat (*)(struct svc_req *, 00029 struct rpc_msg *)); 00030 00031 __END_DECLS 00032 00033 #endif