remove some krb5_free_context that might happen at unappropriate times

git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@9563 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Assar Westerlund
2001-01-29 02:18:03 +00:00
parent 1710da033a
commit d4413a1b09

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (c) 1997 - 2000 Kungliga Tekniska H<>gskolan * Copyright (c) 1997 - 2001 Kungliga Tekniska H<>gskolan
* (Royal Institute of Technology, Stockholm, Sweden). * (Royal Institute of Technology, Stockholm, Sweden).
* All rights reserved. * All rights reserved.
* *
@@ -153,14 +153,11 @@ krb5_verify(struct passwd *pwd, const char *password)
krb5_principal princ; krb5_principal princ;
ret = krb5_parse_name(context, pwd->pw_name, &princ); ret = krb5_parse_name(context, pwd->pw_name, &princ);
if(ret){ if(ret)
krb5_free_context(context);
return 1; return 1;
}
ret = krb5_cc_gen_new(context, &krb5_mcc_ops, &id); ret = krb5_cc_gen_new(context, &krb5_mcc_ops, &id);
if(ret){ if(ret) {
krb5_free_principal(context, princ); krb5_free_principal(context, princ);
krb5_free_context(context);
return 1; return 1;
} }
ret = krb5_verify_user_lrealm(context, ret = krb5_verify_user_lrealm(context,
@@ -170,8 +167,6 @@ krb5_verify(struct passwd *pwd, const char *password)
1, 1,
NULL); NULL);
krb5_free_principal(context, princ); krb5_free_principal(context, princ);
if (ret)
krb5_free_context (context);
return ret; return ret;
} }
@@ -282,7 +277,6 @@ krb5_get_afs_tokens (const struct passwd *pwd)
pwd->pw_uid, pwd->pw_dir); pwd->pw_uid, pwd->pw_dir);
krb5_cc_close (context, id2); krb5_cc_close (context, id2);
} }
krb5_free_context (context);
} }
#endif /* KRB4 */ #endif /* KRB4 */
@@ -546,7 +540,6 @@ do_login(const struct passwd *pwd, char *tty, char *ttyn)
#ifdef KRB5 #ifdef KRB5
if (auth == AUTH_KRB5) { if (auth == AUTH_KRB5) {
krb5_start_session (pwd); krb5_start_session (pwd);
krb5_finish ();
} }
#ifdef KRB4 #ifdef KRB4
else if (auth == 0) { else if (auth == 0) {
@@ -562,6 +555,7 @@ do_login(const struct passwd *pwd, char *tty, char *ttyn)
krb5_get_afs_tokens (pwd); krb5_get_afs_tokens (pwd);
#endif /* KRB4 */ #endif /* KRB4 */
krb5_finish ();
#endif /* KRB5 */ #endif /* KRB5 */
#ifdef KRB4 #ifdef KRB4