diff --git a/dbfp.py b/dbfp.py index dc7975e..7e2e098 100644 --- a/dbfp.py +++ b/dbfp.py @@ -154,7 +154,7 @@ def queryMD5(fp_dir, md5_db): try: fp = FingerprintIndex() fp.openIndex(fp_dir) - results = fp.queryMetadata(md5_db) + results = fp.queryAppDetails(md5_db) for row in results: print "[{}]\nDB: {}\nFP: {}\nDate: {}\n".format(row[0], row[2], row[3], row[4]) except Exception as ex: diff --git a/libs/fingerprint.py b/libs/fingerprint.py index dd39427..3c4983e 100644 --- a/libs/fingerprint.py +++ b/libs/fingerprint.py @@ -50,13 +50,13 @@ class FingerprintDB: self.table_hashes = None self.filein = "" self.init = False - # fingerprint metadata - self.metadata = {} - self.metadata['db-name'] = "" - self.metadata['app-name'] = "" - self.metadata['app-ver'] = "" - self.metadata['notes'] = "" - self.metadata['scan-date'] = "" + # db file details + self.file_details = {} + self.file_details['db-name'] = "" + self.file_details['app-name'] = "" + self.file_details['app-ver'] = "" + self.file_details['notes'] = "" + self.file_details['scan-date'] = "" # def scanDBFile(self, filein): @@ -64,22 +64,20 @@ class FingerprintDB: try: (self.conn, self.cur) = self.__openDB(filein) except Exception, ex: - logging.info(ex) raise try: # extract file name from path+filename - self.metadata['db-name'] = os.path.basename(filein) + self.file_details['db-name'] = os.path.basename(filein) except Exception as ex: - logging.error(ex) - self.metadata['db-name'] = filein + logging.warn(ex) + self.file_details['db-name'] = filein try: # read database schema, parse the schema self.__readDatabase() # concat all the table create statements, then md5 self.__createMD5DB() except Exception as ex: - logging.error(ex) raise # create and index of table hashes @@ -166,7 +164,7 @@ class FingerprintDB: dbmt = jsonData['db-metadata'] dbht = jsonData['db-metadata-hashes'] dbmd5 = jsonData['db-metadata-md5'] - metadata = jsonData['_file-metadata'] + metadata = jsonData['_file-details'] all_tables = tb.keys() for table_name in all_tables: @@ -178,7 +176,7 @@ class FingerprintDB: self.tables = tables self.db_hash = dbmd5 self.table_hashes = dbht - self.metadata = metadata + self.file_details = metadata except Exception as ex: logging.error("ERROR: problem loading json file: \n{}\n{}".format(file_json, ex)) @@ -305,7 +303,7 @@ class FingerprintDB: dmhash = {} shash = {} mhash = {} - ahash['_file-metadata'] = mhash + ahash['_file-details'] = mhash ahash['db-metadata'] = dmhash ahash['db-metadata-hashes'] = shash ahash['db-metadata-md5'] = None @@ -320,10 +318,10 @@ class FingerprintDB: mhash['format-ver'] = self.format_ver mhash['scanner-ver'] = self.scanner_ver mhash['scanner-name'] = 'dbfp' - mhash['db-name'] = self.metadata['db-name'] - mhash['app-name'] = self.metadata['app-name'] - mhash['app-ver'] = self.metadata['app-ver'] - mhash['notes'] = self.metadata['notes'] + mhash['db-name'] = self.file_details['db-name'] + mhash['app-name'] = self.file_details['app-name'] + mhash['app-ver'] = self.file_details['app-ver'] + mhash['notes'] = self.file_details['notes'] # tables tables = self.tables.keys() @@ -356,15 +354,15 @@ class FingerprintDB: # def setAppName(self, name): - self.metadata['app-name'] = name + self.file_details['app-name'] = name # def setAppVer(self, version): - self.metadata['app-ver'] = version + self.file_details['app-ver'] = version # def setNotes(self, notes): - self.metadata['notes'] = notes + self.file_details['notes'] = notes # def getErrorString(self, errorCode): diff --git a/libs/fingerprint_index.py b/libs/fingerprint_index.py index 5b0cd54..0340c54 100644 --- a/libs/fingerprint_index.py +++ b/libs/fingerprint_index.py @@ -98,8 +98,8 @@ class FingerprintIndex: return rows # - def queryMetadata(self, md5_db): - rows = self.__qMetadata(md5_db) + def queryAppDetails(self, md5_db): + rows = self.__qAppDetails(md5_db) return rows # @@ -141,11 +141,11 @@ class FingerprintIndex: logging.error(ex) # - def __qMetadata(self, md5_db): + def __qAppDetails(self, md5_db): try: rows = self.cur.execute(''' SELECT app_name, app_ver, db_file, fp_file, scan_date - FROM metadata + FROM file_details WHERE md5_db=? ''', [md5_db]) @@ -175,7 +175,7 @@ class FingerprintIndex: fp_count INTEGER); ''') self.db_conn.execute(''' - CREATE TABLE metadata ( + CREATE TABLE file_details ( md5_db TEXT, app_name TEXT, app_ver TEXT, @@ -207,7 +207,7 @@ class FingerprintIndex: db.importJson(fq_file) self.__insertMod_md5_all(db.db_hash, db.table_hashes.values(), file) self.__insertMod_md5_tables(db.table_hashes.values(), file) - self.__insertMod_metadata(db, file) + self.__insertMod_file_details(db, file) finCount = finCount+1 self.db_conn.commit() except Exception as ex: @@ -266,12 +266,12 @@ class FingerprintIndex: raise FingerprintIndexWrite("Error inserting a row\n{}".format(ex)) # - def __insertMod_metadata(self, db, filename): + def __insertMod_file_details(self, db, filename): try: self.db_conn.execute( ''' - INSERT INTO metadata VALUES(?, ?, ?, ?, ?, ?) - ''', [db.db_hash, db.metadata['app-name'], db.metadata['app-ver'], db.metadata['db-name'], filename, db.metadata['scan-date']]) + INSERT INTO file_details VALUES(?, ?, ?, ?, ?, ?) + ''', [db.db_hash, db.file_details['app-name'], db.file_details['app-ver'], db.file_details['db-name'], filename, db.file_details['scan-date']]) except Exception as ex: print ex raise