summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lib/krb5/keytab/ChangeLog6
-rw-r--r--src/lib/krb5/keytab/ktfr_entry.c9
2 files changed, 13 insertions, 2 deletions
diff --git a/src/lib/krb5/keytab/ChangeLog b/src/lib/krb5/keytab/ChangeLog
index f12e82213..172ddc801 100644
--- a/src/lib/krb5/keytab/ChangeLog
+++ b/src/lib/krb5/keytab/ChangeLog
@@ -1,3 +1,9 @@
+Tue Oct 4 22:06:15 1994 Theodore Y. Ts'o (tytso@dcl)
+
+ * ktfr_entry.c (krb5_kt_free_entry): Only try to free
+ entry->key.contents if it is non-NULL. If entry is NULL,
+ return.
+
Thu Sep 29 23:19:06 1994 Theodore Y. Ts'o (tytso@dcl)
* ktbase.c (krb5_kt_resolve_name): If the prefix "FILE:" is not
diff --git a/src/lib/krb5/keytab/ktfr_entry.c b/src/lib/krb5/keytab/ktfr_entry.c
index b30388f5f..9204033a7 100644
--- a/src/lib/krb5/keytab/ktfr_entry.c
+++ b/src/lib/krb5/keytab/ktfr_entry.c
@@ -32,8 +32,13 @@ krb5_error_code
krb5_kt_free_entry (entry)
krb5_keytab_entry *entry;
{
+ if (!entry)
+ return 0;
+
krb5_free_principal(entry->principal);
- memset((char *)entry->key.contents, 0, entry->key.length);
- krb5_xfree(entry->key.contents);
+ if (entry->key.contents) {
+ memset((char *)entry->key.contents, 0, entry->key.length);
+ krb5_xfree(entry->key.contents);
+ }
return 0;
}