summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTom Yu <tlyu@mit.edu>1999-03-04 23:48:15 +0000
committerTom Yu <tlyu@mit.edu>1999-03-04 23:48:15 +0000
commitbe95b52c2d0c21b1fe92f9f90166fc2fa8eecc95 (patch)
treeb7eaf9a2e10289fa7a35705636ee354500a89f64 /src
parentb1fd0ffe7fb3566e062f9730216a29cdf3cca6db (diff)
downloadkrb5-be95b52c2d0c21b1fe92f9f90166fc2fa8eecc95.tar.gz
krb5-be95b52c2d0c21b1fe92f9f90166fc2fa8eecc95.tar.xz
krb5-be95b52c2d0c21b1fe92f9f90166fc2fa8eecc95.zip
* heuristic.c (get_authorized_princ_names): Fix to not call
list_union() if cmd is NULL, otherwise freed memory gets referenced. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@11239 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/clients/ksu/ChangeLog6
-rw-r--r--src/clients/ksu/heuristic.c12
2 files changed, 13 insertions, 5 deletions
diff --git a/src/clients/ksu/ChangeLog b/src/clients/ksu/ChangeLog
index a18067bb6e..674b3cec32 100644
--- a/src/clients/ksu/ChangeLog
+++ b/src/clients/ksu/ChangeLog
@@ -1,3 +1,9 @@
+Thu Mar 4 18:46:55 1999 Tom Yu <tlyu@mit.edu>
+
+ * heuristic.c (get_authorized_princ_names): Fix to not call
+ list_union() if cmd is NULL, otherwise freed memory gets
+ referenced.
+
Thu Feb 18 22:26:30 1999 Tom Yu <tlyu@mit.edu>
* Makefile.in (ksu): Add $(KSU_LIBS) in case we need -lsecurity.
diff --git a/src/clients/ksu/heuristic.c b/src/clients/ksu/heuristic.c
index e0ee71d5d6..40858fb3ad 100644
--- a/src/clients/ksu/heuristic.c
+++ b/src/clients/ksu/heuristic.c
@@ -253,17 +253,19 @@ get_authorized_princ_names(luser, cmd, princ_list)
}
}
- if(retval = list_union(k5login_list, k5users_filt_list, &combined_list)){
- close_time(k5users_flag,users_fp, k5login_flag,login_fp);
- return retval;
- }
-
close_time(k5users_flag,users_fp, k5login_flag, login_fp);
if (cmd) {
+ if (retval = list_union(k5login_list,
+ k5users_filt_list, &combined_list)){
+ close_time(k5users_flag,users_fp, k5login_flag,login_fp);
+ return retval;
+ }
*princ_list = combined_list;
return 0;
} else {
+ if (k5users_filt_list != NULL)
+ free(k5users_filt_list);
*princ_list = k5login_list;
return 0;
}