Lots of memory leaks and other fixes...
authorTheodore Tso <tytso@mit.edu>
Sat, 16 Sep 1995 07:33:23 +0000 (07:33 +0000)
committerTheodore Tso <tytso@mit.edu>
Sat, 16 Sep 1995 07:33:23 +0000 (07:33 +0000)
commit82f87f7e1268dd377295c09e0f266a99042e6220
treee754af5495fea52c0b846c2b7a368cd395e458a8
parentc2380cebcdd54289bc48f5b8c56ff3309d007496
Lots of memory leaks and other fixes...

gssapiP_krb5.h: Remove context and cred from the gssapi security
context, as they aren't needed.  kg_seal and kg_unseal now take a
krb5_context argument.

ser_sctx.c (kg_ctx_size, kg_ctx_externalize, kg_ctx_internalize): No
longer serialize the context and cred fields of the gssapi security
context.

krb5_gss_glue.c: Don't rely on the context field of the gssapi
security context.  Use kg_context instead.

verify.c (krb5_gss_verify, krb5_gss_verify_mic):
unseal.c (krb5_gss_unwrap, krb5_gss_unseal):
sign.c (krb5_gss_sign, krb5_gss_get_mic):
seal.c (krb5_gss_seal, krb5_gss_wrap):
process_context_token.c (krb5_gss_process_context_token):
k5unseal.c (kg_unseal):
k5seal.c (kg_seal_size): Add a krb5_context argument to this function,
so we don't have to depend on the context field in the gssapi
security context.

init_sec_context.c (krb5_gss_init_sec_context): Don't initialize the
context and cred fields in the gssapi security context.  Copy
ctx->subkey to ctx->seq.key, so they are separately allocated.

gssapi_krb5.c (kg_get_context): When initialize kg_context, call
krb5_init_ets() so that the error tables are initialized.

export_sec_context.c (krb5_gss_export_sec_context): Don't depend on
the context field from the gssapi security context.  Free
ctx->seq.key.

delete_sec_context.c (krb5_gss_delete_sec_context): kg_seal() now
takes a krb5_context argument.  Free ctx->seq.key.

acquire_cred.c (krb5_gss_acquire_cred): Clear the gssapi credential
before setting it, to prevent purify from complaining.

accept_sec_context.c (krb5_gss_accept_sec_context): Remove context and
cred from the gssapi security context.  Make sure the ticket is freed
after we're done with it.

import_sec_context.c (krb5_gss_import_sec_context): Don't bash the
input interprocess_token.  Otherwise, it can't be freed.  Don't
depend on the context field in the gss security context.

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@6798 dc483132-0cff-0310-8789-dd5450dbe970
18 files changed:
src/lib/gssapi/krb5/ChangeLog
src/lib/gssapi/krb5/accept_sec_context.c
src/lib/gssapi/krb5/acquire_cred.c
src/lib/gssapi/krb5/delete_sec_context.c
src/lib/gssapi/krb5/export_sec_context.c
src/lib/gssapi/krb5/gssapiP_krb5.h
src/lib/gssapi/krb5/gssapi_krb5.c
src/lib/gssapi/krb5/import_sec_context.c
src/lib/gssapi/krb5/init_sec_context.c
src/lib/gssapi/krb5/k5seal.c
src/lib/gssapi/krb5/k5unseal.c
src/lib/gssapi/krb5/krb5_gss_glue.c
src/lib/gssapi/krb5/process_context_token.c
src/lib/gssapi/krb5/seal.c
src/lib/gssapi/krb5/ser_sctx.c
src/lib/gssapi/krb5/sign.c
src/lib/gssapi/krb5/unseal.c
src/lib/gssapi/krb5/verify.c