From b322a390af83addcf9768ae59d31c31a3229b49d Mon Sep 17 00:00:00 2001 From: Tomas Touceda Date: Tue, 23 Apr 2013 17:02:55 -0300 Subject: Add pubkey retrieving --- src/leap/mx/alias_resolver.py | 4 ++++ src/leap/mx/couchdbhelper.py | 6 ++++-- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/leap/mx/alias_resolver.py b/src/leap/mx/alias_resolver.py index eb08c06..8155ff9 100644 --- a/src/leap/mx/alias_resolver.py +++ b/src/leap/mx/alias_resolver.py @@ -45,13 +45,17 @@ class AliasResolverFactory(postfix.PostfixTCPMapDeferringDictServerFactory): def _to_str(self, result): if isinstance(result, unicode): result = result.encode("utf8") + if result is None: + logger.debug("Result not found") return result def get(self, key): orig_key = key try: + logger.debug("Processing key: %s" % (key,)) key = key.split("@")[0] key = key.split("+")[0] + logger.debug("Final key to query: %s" % (key,)) except Exception as e: key = orig_key logger.exception("%s" % (e,)) diff --git a/src/leap/mx/couchdbhelper.py b/src/leap/mx/couchdbhelper.py index cbb087d..4e76be3 100644 --- a/src/leap/mx/couchdbhelper.py +++ b/src/leap/mx/couchdbhelper.py @@ -114,7 +114,8 @@ class ConnectedCouchDB(client.CouchDB): d = self.openView(docId="User", viewId="by_login_or_alias/", key=alias, - reduce=False) + reduce=False, + include_docs=True) d.addCallbacks(partial(self._get_uuid, alias), log.err) @@ -135,7 +136,7 @@ class ConnectedCouchDB(client.CouchDB): for row in result["rows"]: if row["key"] == alias: uuid = row["id"] - self._cache[uuid] = row["value"] + self._cache[uuid] = row["doc"]["public_key"] return uuid return None @@ -161,6 +162,7 @@ if __name__ == "__main__": @d.addCallback def right(result): print "Should be an actual uuid:", result + print "Public Key:" print cdb.getPubKey(result) d2 = cdb.queryByLoginOrAlias("asdjaoisdjoiqwjeoi") -- cgit v1.2.3