summaryrefslogtreecommitdiff
path: root/source4/heimdal/lib/krb5/get_cred.c
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2007-08-22 06:46:34 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 15:02:25 -0500
commitb39330c4873d4c3923a577e89690fc0e43b0c61a (patch)
tree882a09a9e2ef446d3662ac542d1bf60fb8e7dfb2 /source4/heimdal/lib/krb5/get_cred.c
parentdb24e606f10902de49891e32600403274ece16da (diff)
downloadsamba-b39330c4873d4c3923a577e89690fc0e43b0c61a.tar.gz
samba-b39330c4873d4c3923a577e89690fc0e43b0c61a.tar.bz2
samba-b39330c4873d4c3923a577e89690fc0e43b0c61a.zip
r24614: Merge with current lorikeet-heimdal. This brings us one step closer
to an alpha release. Andrew Bartlett (This used to be commit 30e02747d511630659c59eafec8d28f58605943b)
Diffstat (limited to 'source4/heimdal/lib/krb5/get_cred.c')
-rw-r--r--source4/heimdal/lib/krb5/get_cred.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/source4/heimdal/lib/krb5/get_cred.c b/source4/heimdal/lib/krb5/get_cred.c
index 8a0af23e40..7c3f128ae5 100644
--- a/source4/heimdal/lib/krb5/get_cred.c
+++ b/source4/heimdal/lib/krb5/get_cred.c
@@ -33,7 +33,7 @@
#include <krb5_locl.h>
-RCSID("$Id: get_cred.c 21327 2007-06-26 10:54:15Z lha $");
+RCSID("$Id: get_cred.c 21669 2007-07-22 11:29:13Z lha $");
/*
* Take the `body' and encode it into `padata' using the credentials
@@ -1224,9 +1224,10 @@ krb5_get_renewed_creds(krb5_context context,
{
krb5_error_code ret;
krb5_kdc_flags flags;
- krb5_creds in, *template;
+ krb5_creds in, *template, *out = NULL;
memset(&in, 0, sizeof(in));
+ memset(creds, 0, sizeof(*creds));
ret = krb5_copy_principal(context, client, &in.client);
if (ret)
@@ -1263,9 +1264,14 @@ krb5_get_renewed_creds(krb5_context context,
krb5_free_creds (context, template);
}
- ret = krb5_get_kdc_cred(context, ccache, flags, NULL, NULL, &in, &creds);
+ ret = krb5_get_kdc_cred(context, ccache, flags, NULL, NULL, &in, &out);
krb5_free_principal(context, in.client);
krb5_free_principal(context, in.server);
+ if (ret)
+ return ret;
+
+ ret = krb5_copy_creds_contents(context, out, creds);
+ krb5_free_creds(context, out);
return ret;
}