git.samba.org
/
metze
/
samba
/
wip.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
4e444f0
)
s3-gse: fix SECRETS_AND_KEYTAB fallback in gse_krb5_get_server_keytab()
author
Stefan Metzmacher
<metze@samba.org>
Fri, 20 Jan 2012 10:50:20 +0000
(11:50 +0100)
committer
Stefan Metzmacher
<metze@samba.org>
Fri, 20 Jan 2012 22:55:53 +0000
(23:55 +0100)
metze
source3/librpc/crypto/gse_krb5.c
patch
|
blob
|
history
diff --git
a/source3/librpc/crypto/gse_krb5.c
b/source3/librpc/crypto/gse_krb5.c
index 81a9a075967c214532b0b72d7d65217622a7f629..43b5eb257718ae6bd99e855e291fd8618ec301d1 100644
(file)
--- a/
source3/librpc/crypto/gse_krb5.c
+++ b/
source3/librpc/crypto/gse_krb5.c
@@
-351,7
+351,9
@@
static krb5_error_code get_mem_keytab_from_system_keytab(krb5_context krbctx,
krb5_error_code gse_krb5_get_server_keytab(krb5_context krbctx,
krb5_keytab *keytab)
{
krb5_error_code gse_krb5_get_server_keytab(krb5_context krbctx,
krb5_keytab *keytab)
{
- krb5_error_code ret;
+ krb5_error_code ret = 0;
+ krb5_error_code ret1 = 0;
+ krb5_error_code ret2 = 0;
*keytab = NULL;
*keytab = NULL;
@@
-368,16
+370,21
@@
krb5_error_code gse_krb5_get_server_keytab(krb5_context krbctx,
ret = get_mem_keytab_from_system_keytab(krbctx, keytab, false);
break;
case KERBEROS_VERIFY_SECRETS_AND_KEYTAB:
ret = get_mem_keytab_from_system_keytab(krbctx, keytab, false);
break;
case KERBEROS_VERIFY_SECRETS_AND_KEYTAB:
- ret = get_mem_keytab_from_secrets(krbctx, keytab);
- if (ret) {
+ ret
1
= get_mem_keytab_from_secrets(krbctx, keytab);
+ if (ret
1
) {
DEBUG(3, (__location__ ": Warning! Unable to set mem "
"keytab from secrets!\n"));
}
/* Now append system keytab keys too */
DEBUG(3, (__location__ ": Warning! Unable to set mem "
"keytab from secrets!\n"));
}
/* Now append system keytab keys too */
- ret = get_mem_keytab_from_system_keytab(krbctx, keytab, true);
- if (ret) {
+ ret
2
= get_mem_keytab_from_system_keytab(krbctx, keytab, true);
+ if (ret
2
) {
DEBUG(3, (__location__ ": Warning! Unable to set mem "
DEBUG(3, (__location__ ": Warning! Unable to set mem "
- "keytab from secrets!\n"));
+ "keytab from system keytab!\n"));
+ }
+ if (ret1 == 0 || ret2 == 0) {
+ ret = 0;
+ } else {
+ ret = ret1;
}
break;
}
}
break;
}