From f8cc48bcb8696dcbe68aa5e68c5bbb073a9c6924 Mon Sep 17 00:00:00 2001 From: Mark Hymers Date: Wed, 27 Jul 2011 14:56:20 +0100 Subject: [PATCH] Add keyring helper routines Signed-off-by: Mark Hymers --- daklib/dbconn.py | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/daklib/dbconn.py b/daklib/dbconn.py index 5b5dc5bc..25398981 100755 --- a/daklib/dbconn.py +++ b/daklib/dbconn.py @@ -1777,6 +1777,34 @@ def get_keyring(keyring, session=None): __all__.append('get_keyring') +@session_wrapper +def get_active_keyring_paths(session=None): + """ + @rtype: list + @return: list of active keyring paths + """ + return [ x.keyring_name for x in session.query(Keyring).filter(Keyring.active == True).order_by(desc(Keyring.priority)).all() ] + +__all__.append('get_active_keyring_paths') + +@session_wrapper +def get_primary_keyring_path(session=None): + """ + Get the full path to the highest priority active keyring + + @rtype: str or None + @return: path to the active keyring with the highest priority or None if no + keyring is configured + """ + keyrings = get_active_keyring_paths() + + if len(keyrings) > 0: + return keyrings[0] + else: + return None + +__all__.append('get_primary_keyring_path') + ################################################################################ class KeyringACLMap(object): -- 2.39.2