68e76ad0ba
Two principals are involved in krb5 authentication: the target, who we authenticate *to* (normally the name of the server, like nfs/server.citi.umich.edu@CITI.UMICH.EDU), and the source, we we authenticate *as* (normally a user, like bfields@UMICH.EDU) In the case of NFSv4 callbacks, the target of the callback should be the source of the client's setclientid call, and the source should be the nfs server's own principal. Therefore we allow svcgssd to pass down the name of the principal that just authenticated, so that on setclientid we can store that principal name with the new client, to be used later on callbacks. Signed-off-by: Olga Kornievskaia <aglo@citi.umich.edu> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
26 lines
719 B
C
26 lines
719 B
C
/*
|
|
* linux/include/linux/sunrpc/svcauth_gss.h
|
|
*
|
|
* Bruce Fields <bfields@umich.edu>
|
|
* Copyright (c) 2002 The Regents of the Unviersity of Michigan
|
|
*/
|
|
|
|
#ifndef _LINUX_SUNRPC_SVCAUTH_GSS_H
|
|
#define _LINUX_SUNRPC_SVCAUTH_GSS_H
|
|
|
|
#ifdef __KERNEL__
|
|
#include <linux/sched.h>
|
|
#include <linux/sunrpc/types.h>
|
|
#include <linux/sunrpc/xdr.h>
|
|
#include <linux/sunrpc/svcauth.h>
|
|
#include <linux/sunrpc/svcsock.h>
|
|
#include <linux/sunrpc/auth_gss.h>
|
|
|
|
int gss_svc_init(void);
|
|
void gss_svc_shutdown(void);
|
|
int svcauth_gss_register_pseudoflavor(u32 pseudoflavor, char * name);
|
|
u32 svcauth_gss_flavor(struct auth_domain *dom);
|
|
char *svc_gss_principal(struct svc_rqst *);
|
|
|
|
#endif /* __KERNEL__ */
|
|
#endif /* _LINUX_SUNRPC_SVCAUTH_GSS_H */
|