diff options
author | Simon Schampijer <simon@schampijer.de> | 2011-03-29 19:42:00 (GMT) |
---|---|---|
committer | Simon Schampijer <simon@schampijer.de> | 2011-03-29 19:42:00 (GMT) |
commit | 20b5889739c2914e7613e238fce1be8747373eac (patch) | |
tree | 459c6142d9d29afa828c0c75a2f05622ff44fd7b | |
parent | ada284445e9a3ce96a0c9df4c299021254b0668d (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.py | 13 |
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 = { |