diff options
author | Jacques Vidrine <nectar@FreeBSD.org> | 2001-07-19 21:43:42 +0000 |
---|---|---|
committer | Jacques Vidrine <nectar@FreeBSD.org> | 2001-07-19 21:43:42 +0000 |
commit | 65947fb078189cd261ccaa096aa9d745ebf042a3 (patch) | |
tree | 4bd405ba2309bcb8610602de81ccd6f384610950 /security/heimdal/files/patch-ad | |
parent | Add ruby-tcpsocketpipe, a Ruby library to create I/O pipes for TCP (diff) |
= Fix possible telnetd vulnerability in option processing.
Obtained from: heimdal-discuss@sics.se
= Fix bug in GSSAPI accept_sec_context() that prevented credential
forwarding from working in some cases.
Notes
Notes:
svn path=/head/; revision=45257
Diffstat (limited to 'security/heimdal/files/patch-ad')
-rw-r--r-- | security/heimdal/files/patch-ad | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/security/heimdal/files/patch-ad b/security/heimdal/files/patch-ad new file mode 100644 index 000000000000..719c82896d4e --- /dev/null +++ b/security/heimdal/files/patch-ad @@ -0,0 +1,34 @@ +--- lib/gssapi/accept_sec_context.c.orig Mon Jul 16 22:28:38 2001 ++++ lib/gssapi/accept_sec_context.c Tue Jul 17 08:10:32 2001 +@@ -283,12 +283,27 @@ + + krb5_ccache ccache; + +- if (delegated_cred_handle == NULL || *delegated_cred_handle == NULL) ++ if (delegated_cred_handle == NULL) + /* XXX Create a new delegated_cred_handle? */ + kret = krb5_cc_default (gssapi_krb5_context, &ccache); +- +- else { +- if ((*delegated_cred_handle)->ccache == NULL) ++ else if (*delegated_cred_handle == NULL) { ++ if ((*delegated_cred_handle = ++ calloc(1, sizeof(**delegated_cred_handle))) == NULL) { ++ kret = ENOMEM; ++ krb5_set_error_string(gssapi_krb5_context, "out of memory"); ++ gssapi_krb5_set_error_string(); ++ goto failure; ++ } ++ if ((kret = gss_duplicate_name(minor_status, ticket->client, ++ &(*delegated_cred_handle)->principal)) != 0) { ++ flags &= ~GSS_C_DELEG_FLAG; ++ free(*delegated_cred_handle); ++ *delegated_cred_handle = NULL; ++ goto end_fwd; ++ } ++ } ++ if (delegated_cred_handle != NULL && ++ (*delegated_cred_handle)->ccache == NULL) { + kret = krb5_cc_gen_new (gssapi_krb5_context, + &krb5_mcc_ops, + &(*delegated_cred_handle)->ccache); |