From 4c57a429760a3b3aa89938a13708742675f9548b Mon Sep 17 00:00:00 2001 From: Greg Hudson Date: Mon, 25 Nov 2013 11:33:35 -0500 Subject: Add new versions of log_badauth gssrpc callbacks libgssrpc supports two callbacks for gss_accept_sec_context failures on servers (one for AUTH_GSS and one for AUTH_GSSAPI), which are IPv4-specific. Provide an alternate version which supplies the transport handle instead of the address, so that we can get the address via the file descriptor for TCP connections. ticket: 7770 --- src/include/gssrpc/auth_gssapi.h | 13 +++++++++++++ src/include/gssrpc/rename.h | 2 ++ 2 files changed, 15 insertions(+) (limited to 'src/include/gssrpc') diff --git a/src/include/gssrpc/auth_gssapi.h b/src/include/gssrpc/auth_gssapi.h index d842930bb0..9d94853228 100644 --- a/src/include/gssrpc/auth_gssapi.h +++ b/src/include/gssrpc/auth_gssapi.h @@ -54,6 +54,14 @@ typedef void (*auth_gssapi_log_badauth_func) struct sockaddr_in *raddr, caddr_t data); +/* auth_gssapi_log_badauth_func is IPv4-specific; this version gives the + * transport handle so the fd can be used to get the address. */ +typedef void (*auth_gssapi_log_badauth2_func) + (OM_uint32 major, + OM_uint32 minor, + SVCXPRT *xprt, + caddr_t data); + typedef void (*auth_gssapi_log_badverf_func) (gss_name_t client, gss_name_t server, @@ -117,6 +125,9 @@ void svcauth_gssapi_unset_names void svcauth_gssapi_set_log_badauth_func (auth_gssapi_log_badauth_func func, caddr_t data); +void svcauth_gssapi_set_log_badauth2_func +(auth_gssapi_log_badauth2_func func, + caddr_t data); void svcauth_gssapi_set_log_badverf_func (auth_gssapi_log_badverf_func func, caddr_t data); @@ -126,6 +137,8 @@ void svcauth_gssapi_set_log_miscerr_func void svcauth_gss_set_log_badauth_func(auth_gssapi_log_badauth_func, caddr_t); +void svcauth_gss_set_log_badauth2_func(auth_gssapi_log_badauth2_func, + caddr_t); void svcauth_gss_set_log_badverf_func(auth_gssapi_log_badverf_func, caddr_t); void svcauth_gss_set_log_miscerr_func(auth_gssapi_log_miscerr_func, diff --git a/src/include/gssrpc/rename.h b/src/include/gssrpc/rename.h index 318be1a52d..ecec66ab10 100644 --- a/src/include/gssrpc/rename.h +++ b/src/include/gssrpc/rename.h @@ -125,10 +125,12 @@ #define svcauth_gssapi_set_names gssrpc_svcauth_gssapi_set_names #define svcauth_gssapi_unset_names gssrpc_svcauth_gssapi_unset_names #define svcauth_gssapi_set_log_badauth_func gssrpc_svcauth_gssapi_set_log_badauth_func +#define svcauth_gssapi_set_log_badauth2_func gssrpc_svcauth_gssapi_set_log_badauth2_func #define svcauth_gssapi_set_log_badverf_func gssrpc_svcauth_gssapi_set_log_badverf_func #define svcauth_gssapi_set_log_miscerr_func gssrpc_svcauth_gssapi_set_log_miscerr_func #define svcauth_gss_set_log_badauth_func gssrpc_svcauth_gss_set_log_badauth_func +#define svcauth_gss_set_log_badauth2_func gssrpc_svcauth_gss_set_log_badauth2_func #define svcauth_gss_set_log_badverf_func gssrpc_svcauth_gss_set_log_badverf_func #define svcauth_gss_set_log_miscerr_func gssrpc_svcauth_gss_set_log_miscerr_func -- cgit