diff --git a/src/db.cpp b/src/db.cpp index 90442f77f..a0b9dc20f 100644 --- a/src/db.cpp +++ b/src/db.cpp @@ -76,6 +76,10 @@ CDB::CDB(const char *pszFile, const char* pszMode) : pdb(NULL) if (fCreate) nFlags |= DB_CREATE; + unsigned int nEnvFlags = 0; + if (GetBoolArg("-privdb", true)) + nEnvFlags |= DB_PRIVATE; + { LOCK(cs_db); if (!fDbEnvInit) @@ -106,7 +110,8 @@ CDB::CDB(const char *pszFile, const char* pszMode) : pdb(NULL) DB_INIT_MPOOL | DB_INIT_TXN | DB_THREAD | - DB_RECOVER, + DB_RECOVER | + nEnvFlags, S_IRUSR | S_IWUSR); if (ret > 0) throw runtime_error(strprintf("CDB() : error %d opening database environment", ret));