diff options
| author | Ken Raeburn <raeburn@mit.edu> | 1990-11-28 08:43:43 +0000 |
|---|---|---|
| committer | Ken Raeburn <raeburn@mit.edu> | 1990-11-28 08:43:43 +0000 |
| commit | 9230ec88707624e34aa9d6fc7c1b0cdf660b45fe (patch) | |
| tree | 1dab00efc375da9fcd786af497920dd7f00e6a3b /src | |
| parent | bbe8fe61241b0909b010e60b76b45a01f5c88d67 (diff) | |
| download | krb5-9230ec88707624e34aa9d6fc7c1b0cdf660b45fe.tar.gz krb5-9230ec88707624e34aa9d6fc7c1b0cdf660b45fe.tar.xz krb5-9230ec88707624e34aa9d6fc7c1b0cdf660b45fe.zip | |
Zero out credentials structure correctly; handle reading of authdata
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@1504 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/krb5/ccache/stdio/scc_nseq.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/lib/krb5/ccache/stdio/scc_nseq.c b/src/lib/krb5/ccache/stdio/scc_nseq.c index ce8bf5092..2bdda2fab 100644 --- a/src/lib/krb5/ccache/stdio/scc_nseq.c +++ b/src/lib/krb5/ccache/stdio/scc_nseq.c @@ -51,7 +51,15 @@ krb5_scc_next_cred(id, cursor, creds) krb5_error_code kret; krb5_scc_cursor *fcursor; - bzero((char *)creds, sizeof(*creds)); +#define Z(field) creds->field = 0 + Z (client); + Z (server); + Z (keyblock.contents); + Z (authdata); + Z (ticket.data); + Z (second_ticket.data); + Z (addresses); +#undef Z MAYBE_OPEN (id, "r"); @@ -77,6 +85,8 @@ krb5_scc_next_cred(id, cursor, creds) TCHECK(kret); kret = krb5_scc_read_addrs(id, &creds->addresses); TCHECK(kret); + kret = krb5_scc_read_authdata (id, &creds->authdata); + TCHECK (kret); kret = krb5_scc_read_data(id, &creds->ticket); TCHECK(kret); kret = krb5_scc_read_data(id, &creds->second_ticket); @@ -99,6 +109,8 @@ lose: xfree(creds->second_ticket.data); if (creds->addresses) krb5_free_address(creds->addresses); + if (creds->authdata) + krb5_free_authdata (creds->authdata); } MAYBE_CLOSE (id, kret); return kret; |
