diff --git a/lib/hdb/db.c b/lib/hdb/db.c index 710d4851a..365a57648 100644 --- a/lib/hdb/db.c +++ b/lib/hdb/db.c @@ -106,6 +106,7 @@ DB_seq(krb5_context context, HDB *db, key_data.length = key.size; data.data = value.data; data.length = value.size; + memset(entry, 0, sizeof(*entry)); if (hdb_value2entry(context, &data, &entry->entry)) return DB_seq(context, db, flags, entry, R_NEXT); if (db->hdb_master_key_set && (flags & HDB_F_DECRYPT)) { diff --git a/lib/hdb/db3.c b/lib/hdb/db3.c index 6f2fcaba7..04deeae71 100644 --- a/lib/hdb/db3.c +++ b/lib/hdb/db3.c @@ -113,6 +113,7 @@ DB_seq(krb5_context context, HDB *db, key_data.length = key.size; data.data = value.data; data.length = value.size; + memset(entry, 0, sizeof(*entry)); if (hdb_value2entry(context, &data, &entry->entry)) return DB_seq(context, db, flags, entry, DB_NEXT); if (db->hdb_master_key_set && (flags & HDB_F_DECRYPT)) { diff --git a/lib/hdb/ndbm.c b/lib/hdb/ndbm.c index c0e07ae6c..07a1e057e 100644 --- a/lib/hdb/ndbm.c +++ b/lib/hdb/ndbm.c @@ -99,6 +99,7 @@ NDBM_seq(krb5_context context, HDB *db, db->hdb_unlock(context, db); data.data = value.dptr; data.length = value.dsize; + memset(entry, 0, sizeof(*entry)); if(hdb_value2entry(context, &data, &entry->entry)) return NDBM_seq(context, db, flags, entry, 0); if (db->hdb_master_key_set && (flags & HDB_F_DECRYPT)) {