From 20c97f7f5ec5755a370b662637dcbb26eda8b9e3 Mon Sep 17 00:00:00 2001 From: Johan Danielsson Date: Sat, 20 Feb 1999 15:11:27 +0000 Subject: [PATCH] (DB_open): add test for database format git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@5394 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/hdb/db.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/hdb/db.c b/lib/hdb/db.c index 2f011ca7e..72d610b62 100644 --- a/lib/hdb/db.c +++ b/lib/hdb/db.c @@ -216,13 +216,20 @@ static krb5_error_code DB_open(krb5_context context, HDB *db, int flags, mode_t mode) { char *fn; + krb5_error_code ret; asprintf(&fn, "%s.db", db->name); db->db = dbopen(fn, flags, mode, DB_BTREE, NULL); free(fn); if(db->db == NULL) return errno; - return 0; + if((flags & O_ACCMODE) == O_RDONLY) + ret = hdb_check_db_format(context, db); + else + ret = hdb_init_db(context, db); + if(ret == HDB_ERR_NOENTRY) + return 0; + return ret; } krb5_error_code