Commit Graph

147 Commits

Author SHA1 Message Date
Fabio Erculiani ec94cceacd [entropy.tools] start moving Entropy dependency handling functions to entropy.dep module 2010-09-14 09:49:34 +02:00
Fabio Erculiani d553108df8 [entropy.spm] PortagePlugin: fix simple Entropy "or" dependencies generator code 2010-09-13 17:38:16 +02:00
Fabio Erculiani a4a52e62d8 [tests] add another Portage related SPM test 2010-09-13 13:40:07 +02:00
Fabio Erculiani 23b970efa1 [tests] add a new live cache unit test 2010-09-11 15:42:18 +02:00
Fabio Erculiani f71f7d2cc8 [tests] spm: add package sets test 2010-09-08 00:30:32 +02:00
Fabio Erculiani 1198a24290 [entropy.*] remove "eclasses" metadata support
"eclasses" package metadata is not in use in Entropy and is too
tight with Portage. Dropping.
2010-09-04 15:26:16 +02:00
Fabio Erculiani 778fa6c23e [tests] test "content safety" metadata 2010-08-30 12:50:26 +02:00
Fabio Erculiani 821d810aa3 [entropy.db/entropy.spm] introduce content safety metadata collection (sha256, mtime)
The following changes add more security features to Entropy repository
files. Every package will have new security metadata associated, like
sha256 and mtime of package files. Once all packages will contain
such information, the feature can be used, for example, to determine
if a system has been compromised by changing critical executables.
This is not a replacement for rootkit tools such as rkhunter or chkrootkit,
but instead, the base support for their file checking mechanism.

Entropy Client support (equo, mainly) is planned in the near future.
2010-08-28 17:07:15 +02:00
Fabio Erculiani 1970a36d14 [tests] add another revision bump test 2010-08-20 15:37:02 +02:00
Fabio Erculiani 4352f39d1b [tests] server: add package revision bumping test 2010-08-20 14:14:15 +02:00
Fabio Erculiani c86ba293f5 [entropy.db] EntropyRepositoryBase: prefer tuple over list when returning objects
This commit drastically changes EntropyRepository API, return object
are now either tuple or frozenset for most functions. This aims to
improve metadata reliability across function calls, making impossible
to change their content. Frozenset and tuple are immutable types.
2010-08-18 20:58:15 +02:00
Fabio Erculiani 0a014d32fb [tests] also run const tests 2010-08-12 20:58:25 +02:00
Fabio Erculiani 7888475850 [entropy.db] EntropyRepository: rename validateDatabase() to validate(), deprecate validateDatabase() 2010-08-08 11:06:29 +02:00
Fabio Erculiani 4a5f3a5e20 [entropy.const] add built-in drop/gain privileges functions 2010-08-07 16:06:38 +02:00
Fabio Erculiani 571beaaf12 [entropy.db] several EntropyRepository changes, listed below
- overridden handlePackage, addPackage, removePackage in respective
  entropy.client.interfaces.db classes in a proper, secure way.
- overridden maskFilter in entropy.client.interfaces.db, the final
  goal will be removing its logic from EntropyRepository and move
  it to AvailablePackagesRepository only.
- removed any evidence of "client_repo" EntropyRepositoryPlugin(s)
  metadatum.
2010-08-01 00:29:18 +02:00
Fabio Erculiani 749a1b8263 [tests] db: add reverse dependencies test 2010-07-29 19:33:45 +02:00
Fabio Erculiani 5f09d66a1e [entropy.tools] remove unused functions 2010-07-04 18:59:45 +02:00
Fabio Erculiani bda36cabbd [entropy.tools] rename pkgsplit() to _pkgsplit and update package split logic 2010-07-01 14:17:59 +02:00
Fabio Erculiani e1e76d5b28 [entropy.db] first chunk of major entropy.db code updates, create abstract class, move logic there, update API 2010-06-07 17:56:05 +02:00
Fabio Erculiani 942b8f804f [tests] add another package test to server mode 2010-05-12 08:38:50 +02:00
Fabio Erculiani 37fb97de01 [entropy*] kill SystemSettings attribute of Entropy Client and Entropy Server instances 2010-04-14 14:56:17 +02:00
Fabio Erculiani a17aa4830f [entropy.tools] add is_valid_package_tag function 2010-03-30 14:27:53 +02:00
Fabio Erculiani 21faf38121 [entropy.db/entropy.spm] complete per-package mimetype support
Per package file association info are now stored inside the
repository database. This allows for instance, to query a
mimetype and get a list of applications able to handle it, or
to get a list of mimetypes a package is aware of.
2010-03-29 18:16:01 +02:00
Fabio Erculiani 9b25177b22 [tests] db: fix EntropyCacher status handling 2010-03-28 22:51:58 +02:00
Fabio Erculiani c59edaffe0 [entropy.client.interfaces.methods] complete module refactoring 2010-03-23 20:46:38 +01:00
Fabio Erculiani 0fafa52dbc [entropy.client] more refactoring work in entropy.client.interfaces.methods 2010-03-14 15:54:41 +01:00
Fabio Erculiani 38c8f33f61 [entropy.client] more refactoring work in entropy.client.interfaces.methods 2010-03-13 22:19:44 +01:00
Fabio Erculiani e6b841b02f [tests] update the way test scripts are executed when directly called 2010-03-07 22:15:50 +01:00
Fabio Erculiani 61ebb4013d [tests] security: open Entropy Client with noclientdb=True 2010-02-13 19:58:15 +01:00
Fabio Erculiani a75c1a19b6 [tests] improve client module tests speed 2010-02-13 19:23:37 +01:00
Fabio Erculiani d676b73f9e [tests] improve db module tests speed 2010-02-13 19:23:17 +01:00
Fabio Erculiani 23962962e5 [tests] fix wrong mkstemp() call in db.py test 2010-02-13 12:59:19 +01:00
Fabio Erculiani 9da7ad8cdd [tests] db: use mkstemp instead of trying to write to $PWD 2010-02-11 18:30:04 +01:00
Fabio Erculiani 365ee420e7 [tests] improve test_security_set_advisories_cache() test 2010-02-11 16:04:53 +01:00
Fabio Erculiani b189f219a2 [tests] fix QA test 2010-02-11 14:59:36 +01:00
Fabio Erculiani c5dd3a7a49 [entropy.db] remove more evidences of old branch management code 2010-02-05 14:20:12 +01:00
Fabio Erculiani 004d1055b2 [entropy.db] EntropyRepository: rename retrieveVersionTag to retrieveTag 2010-02-04 20:24:49 +01:00
Fabio Erculiani 62a5fb9a06 [tests] improve entropy.system ut: test_security_fetch_advisories 2010-02-04 18:12:05 +01:00
Fabio Erculiani 93b052d096 [tests] kill running threads before quitting 2010-02-04 17:45:23 +01:00
Fabio Erculiani d7f9783ba6 [entropy.client/entropy.server] ditch any reference to sqlite ":memory:" connections, break API 2010-02-02 07:22:47 +01:00
Fabio Erculiani 91e49c96b6 [entropy.db] API change, methods names polishing 2010-02-01 14:50:12 +01:00
Fabio Erculiani 06df34f41d [entropy.client] drop .clientDbconn in favour of installed_repository() 2010-01-30 18:37:39 +01:00
Fabio Erculiani f5b016a146 [entropy.db] make EntropyRepository process-safe and thread-safe at the same time
This is kinda experimental but it seems to work just fine and, at the moment
there are no multithreaded accesses to EntropyRepository.
This patch makes write mutex in EntropyRepository useless because EntropyRepository
will automatically allocate new connections and cursors for every new
thread/pid coming in, avoiding to leak open files around.
SQLite3 is thread-safe when using one connection per thread, so... here it is!
2010-01-29 23:39:42 +01:00
Fabio Erculiani 2fc1c3db17 [tests] fix test_db_insert_compare_match_tag test 2010-01-29 14:30:16 +01:00
Fabio Erculiani b58be877a4 [tests] add tagged packages match test 2010-01-28 13:13:00 +01:00
Fabio Erculiani 5e04299ec8 [entropy.tools] more module API cleanup 2010-01-21 20:52:19 +01:00
Fabio Erculiani 02837597c6 [entropy.tools] more module API rework work done 2010-01-20 12:55:04 +01:00
Fabio Erculiani 18e91eeee1 [entropy.tools] another set of changes to entropy.tools module 2010-01-18 17:42:41 +01:00
Fabio Erculiani 707ee6008f [entropy.tools] some more module cleanup work 2010-01-18 17:24:07 +01:00
Fabio Erculiani 9b5aa1a2c5 [entropy.tools] more entropy.tools module cleanup work 2010-01-15 20:08:08 +01:00