ldb_mdb: handle EBADE from mdb_env_open
[metze/samba/wip.git] / lib / ldb / ldb_mdb / ldb_mdb.c
index 1e6c99b3dd0d92eb5a030016ece211d725052fda..0e81a824f0eff6f78864eef2ddacb57e32406c5e 100644 (file)
@@ -41,6 +41,7 @@ int ldb_mdb_err_map(int lmdb_err)
                return LDB_SUCCESS;
        case EIO:
                return LDB_ERR_OPERATIONS_ERROR;
+       case EBADE:
        case MDB_INCOMPATIBLE:
        case MDB_CORRUPTED:
        case MDB_INVALID:
@@ -788,7 +789,7 @@ static int lmdb_pvt_open(struct lmdb_private *lmdb,
                        "Could not create MDB environment %s: %s\n",
                        path,
                        mdb_strerror(ret));
-               return LDB_ERR_OPERATIONS_ERROR;
+               return ldb_mdb_err_map(ret);
        }
 
        /* Close when lmdb is released */