diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | auth-krb5.c | 9 | ||||
-rw-r--r-- | configure.ac | 9 | ||||
-rw-r--r-- | openbsd-compat/bsd-misc.h | 10 |
4 files changed, 29 insertions, 3 deletions
@@ -1,3 +1,7 @@ | |||
1 | 20130804 | ||
2 | - (dtucker) [auth-krb5.c configure.ac openbsd-compat/bsd-misc.h] Add support | ||
3 | for building with older Heimdal versions. ok djm. | ||
4 | |||
1 | 20130801 | 5 | 20130801 |
2 | - (djm) [channels.c channels.h] bz#2135: On Solaris, isatty() on a non- | 6 | - (djm) [channels.c channels.h] bz#2135: On Solaris, isatty() on a non- |
3 | blocking connecting socket will clear any stored errno that might | 7 | blocking connecting socket will clear any stored errno that might |
diff --git a/auth-krb5.c b/auth-krb5.c index 43ee9272f..7c83f597f 100644 --- a/auth-krb5.c +++ b/auth-krb5.c | |||
@@ -97,8 +97,12 @@ auth_krb5_password(Authctxt *authctxt, const char *password) | |||
97 | goto out; | 97 | goto out; |
98 | 98 | ||
99 | #ifdef HEIMDAL | 99 | #ifdef HEIMDAL |
100 | # ifdef HAVE_KRB5_CC_NEW_UNIQUE | ||
100 | problem = krb5_cc_new_unique(authctxt->krb5_ctx, | 101 | problem = krb5_cc_new_unique(authctxt->krb5_ctx, |
101 | krb5_mcc_ops.prefix, NULL, &ccache); | 102 | krb5_mcc_ops.prefix, NULL, &ccache); |
103 | # else | ||
104 | problem = krb5_cc_gen_new(authctxt->krb5_ctx, &krb5_mcc_ops, &ccache); | ||
105 | # endif | ||
102 | if (problem) | 106 | if (problem) |
103 | goto out; | 107 | goto out; |
104 | 108 | ||
@@ -117,8 +121,13 @@ auth_krb5_password(Authctxt *authctxt, const char *password) | |||
117 | if (problem) | 121 | if (problem) |
118 | goto out; | 122 | goto out; |
119 | 123 | ||
124 | # ifdef HAVE_KRB5_CC_NEW_UNIQUE | ||
120 | problem = krb5_cc_new_unique(authctxt->krb5_ctx, | 125 | problem = krb5_cc_new_unique(authctxt->krb5_ctx, |
121 | krb5_fcc_ops.prefix, NULL, &authctxt->krb5_fwd_ccache); | 126 | krb5_fcc_ops.prefix, NULL, &authctxt->krb5_fwd_ccache); |
127 | # else | ||
128 | problem = krb5_cc_gen_new(authctxt->krb5_ctx, &krb5_fcc_ops, | ||
129 | &authctxt->krb5_fwd_ccache); | ||
130 | # endif | ||
122 | if (problem) | 131 | if (problem) |
123 | goto out; | 132 | goto out; |
124 | 133 | ||
diff --git a/configure.ac b/configure.ac index e6ec2768f..4a1b50331 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -1,4 +1,4 @@ | |||
1 | # $Id: configure.ac,v 1.535 2013/06/11 01:26:10 dtucker Exp $ | 1 | # $Id: configure.ac,v 1.536 2013/08/04 11:48:41 dtucker Exp $ |
2 | # | 2 | # |
3 | # Copyright (c) 1999-2004 Damien Miller | 3 | # Copyright (c) 1999-2004 Damien Miller |
4 | # | 4 | # |
@@ -15,7 +15,7 @@ | |||
15 | # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | 15 | # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
16 | 16 | ||
17 | AC_INIT([OpenSSH], [Portable], [openssh-unix-dev@mindrot.org]) | 17 | AC_INIT([OpenSSH], [Portable], [openssh-unix-dev@mindrot.org]) |
18 | AC_REVISION($Revision: 1.535 $) | 18 | AC_REVISION($Revision: 1.536 $) |
19 | AC_CONFIG_SRCDIR([ssh.c]) | 19 | AC_CONFIG_SRCDIR([ssh.c]) |
20 | AC_LANG([C]) | 20 | AC_LANG([C]) |
21 | 21 | ||
@@ -3806,6 +3806,11 @@ AC_ARG_WITH([kerberos5], | |||
3806 | # include <gssapi/gssapi_generic.h> | 3806 | # include <gssapi/gssapi_generic.h> |
3807 | #endif | 3807 | #endif |
3808 | ]]) | 3808 | ]]) |
3809 | saved_LIBS="$LIBS" | ||
3810 | LIBS="$LIBS $K5LIBS" | ||
3811 | AC_CHECK_FUNCS([krb5_cc_new_unique krb5_get_error_message krb5_free_error_message]) | ||
3812 | LIBS="$saved_LIBS" | ||
3813 | |||
3809 | fi | 3814 | fi |
3810 | ] | 3815 | ] |
3811 | ) | 3816 | ) |
diff --git a/openbsd-compat/bsd-misc.h b/openbsd-compat/bsd-misc.h index 9ebd83c3a..65c18ec2f 100644 --- a/openbsd-compat/bsd-misc.h +++ b/openbsd-compat/bsd-misc.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $Id: bsd-misc.h,v 1.24 2013/05/29 22:29:09 dtucker Exp $ */ | 1 | /* $Id: bsd-misc.h,v 1.25 2013/08/04 11:48:41 dtucker Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 1999-2004 Damien Miller <djm@mindrot.org> | 4 | * Copyright (c) 1999-2004 Damien Miller <djm@mindrot.org> |
@@ -114,4 +114,12 @@ pid_t getpgid(pid_t); | |||
114 | # define endgrent() {} | 114 | # define endgrent() {} |
115 | #endif | 115 | #endif |
116 | 116 | ||
117 | #ifndef HAVE_KRB5_GET_ERROR_MESSAGE | ||
118 | # define krb5_get_error_message krb5_get_err_text | ||
119 | #endif | ||
120 | |||
121 | #ifndef HAVE_KRB5_FREE_ERROR_MESSAGE | ||
122 | # define krb5_free_error_message(a,b) while(0) | ||
123 | #endif | ||
124 | |||
117 | #endif /* _BSD_MISC_H */ | 125 | #endif /* _BSD_MISC_H */ |