31 lines
924 B
Diff
31 lines
924 B
Diff
diff -U0 ./ChangeLog.cli-empty-db ./ChangeLog
|
|
diff -up ./src/cli/fapolicyd-cli.c.cli-empty-db ./src/cli/fapolicyd-cli.c
|
|
--- ./src/cli/fapolicyd-cli.c.cli-empty-db 2020-06-05 17:12:49.010948664 +0200
|
|
+++ ./src/cli/fapolicyd-cli.c 2020-06-05 17:12:49.016948738 +0200
|
|
@@ -112,6 +112,7 @@ static int do_dump_db(void)
|
|
MDB_env *env;
|
|
MDB_txn *txn;
|
|
MDB_dbi dbi;
|
|
+ MDB_stat status;
|
|
MDB_cursor *cursor;
|
|
MDB_val key, val;
|
|
|
|
@@ -129,6 +130,17 @@ static int do_dump_db(void)
|
|
rc = 1;
|
|
goto env_close;
|
|
}
|
|
+ rc = mdb_env_stat(env, &status);
|
|
+ if (rc) {
|
|
+ fprintf(stderr, "mdb_env_stat failed, error %d %s\n", rc,
|
|
+ mdb_strerror(rc));
|
|
+ rc = 1;
|
|
+ goto env_close;
|
|
+ }
|
|
+ if (status.ms_entries == 0) {
|
|
+ printf("Trust database is empty\n");
|
|
+ goto env_close; // Note: rc is 0 to get here
|
|
+ }
|
|
rc = mdb_txn_begin(env, NULL, MDB_RDONLY, &txn);
|
|
if (rc) {
|
|
fprintf(stderr, "mdb_txn_begin failed, error %d %s\n", rc,
|