Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Schampijer <simon@schampijer.de>2011-03-29 19:42:00 (GMT)
committer Simon Schampijer <simon@schampijer.de>2011-03-29 19:42:00 (GMT)
commit20b5889739c2914e7613e238fce1be8747373eac (patch)
tree459c6142d9d29afa828c0c75a2f05622ff44fd7b
parentada284445e9a3ce96a0c9df4c299021254b0668d (diff)
Construct the published name based on the public key OLPC #10737
Limit the name to be only 8 characters maximum. The avahi service name has a 64 character limit. It consists of the room name, the published name and the host name. Signed-off-by: Simon Schampijer <simon@laptop.org> Acked-by: Sascha Silbe <silbe@activitycentral.com>
-rw-r--r--src/jarabe/model/neighborhood.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/jarabe/model/neighborhood.py b/src/jarabe/model/neighborhood.py
index ca4c5bf..aea3aa3 100644
--- a/src/jarabe/model/neighborhood.py
+++ b/src/jarabe/model/neighborhood.py
@@ -695,6 +695,17 @@ class Neighborhood(gobject.GObject):
if account == self._server_account:
self._link_local_account.enable()
+ def _get_published_name(self):
+ """Construct the published name based on the public key
+
+ Limit the name to be only 8 characters maximum. The avahi
+ service name has a 64 character limit. It consists of
+ the room name, the published name and the host name.
+
+ """
+ public_key_hash = sha1(get_profile().pubkey).hexdigest()
+ return public_key_hash[:8]
+
def _ensure_link_local_account(self, account_paths):
for account_path in account_paths:
if 'salut' in account_path:
@@ -713,7 +724,7 @@ class Neighborhood(gobject.GObject):
'first-name': '',
'last-name': '',
'jid': self._get_jabber_account_id(),
- 'published-name': nick,
+ 'published-name': self._get_published_name(),
}
properties = {