RC SM_Manager::CreateDB(const string &db_name){ string db_dir(db_name+SYS_SEP); system((string("mkdir ")+db_name).c_str()); system((string("mkdir ")+db_name+"/dust").c_str()); rmm.CreateFile( (db_dir+SYSTEM_CATALOG_NAME).c_str(), SYSTEM_TUPLE_LENGTH); rmm.CreateFile( (db_dir+ATTRIBUTE_CATALOG_NAME).c_str(), ATTRIBUTE_TUPLE_LENGTH); rmm.CreateFile( (db_dir+CHECK_CATALOG_NAME).c_str(), CHECK_TUPLE_LENGTH); return OK; }
qint32 ClamavEngine::dbAge() const { QDir db_dir(m_p -> dbPath()); QStringList files = db_dir.entryList(QStringList() << "*.cvd" << "*.cld", QDir::Files | QDir::Hidden | QDir::NoSymLinks); QDateTime res, tmp; foreach(QString file, files) { cl_cvd *cvd = cl_cvdhead(db_dir.absoluteFilePath(file).toLocal8Bit().data()); if(!cvd) continue; tmp.setTime_t(cvd -> stime); cl_cvdfree(cvd); if(res.isNull() || tmp > res) res = tmp; }