From 93890d56f6b91293562ad1e513e5c19db233590a Mon Sep 17 00:00:00 2001 From: akwizgran <akwizgran@users.sourceforge.net> Date: Fri, 31 Jan 2014 17:21:51 +0000 Subject: [PATCH] GroupReader was looking for an optional key, not a mandatory salt. This should've been changed when restricted groups were removed. --- .../src/org/briarproject/messaging/GroupReader.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/briar-core/src/org/briarproject/messaging/GroupReader.java b/briar-core/src/org/briarproject/messaging/GroupReader.java index 66ff9e44ed..771bfe6e64 100644 --- a/briar-core/src/org/briarproject/messaging/GroupReader.java +++ b/briar-core/src/org/briarproject/messaging/GroupReader.java @@ -1,11 +1,12 @@ package org.briarproject.messaging; -import static org.briarproject.api.AuthorConstants.MAX_PUBLIC_KEY_LENGTH; +import static org.briarproject.api.messaging.MessagingConstants.GROUP_SALT_LENGTH; import static org.briarproject.api.messaging.MessagingConstants.MAX_GROUP_NAME_LENGTH; import static org.briarproject.api.messaging.Types.GROUP; import java.io.IOException; +import org.briarproject.api.FormatException; import org.briarproject.api.crypto.CryptoComponent; import org.briarproject.api.crypto.MessageDigest; import org.briarproject.api.messaging.Group; @@ -28,13 +29,13 @@ class GroupReader implements StructReader<Group> { r.addConsumer(digesting); r.readStructStart(GROUP); String name = r.readString(MAX_GROUP_NAME_LENGTH); - byte[] publicKey = null; - if(r.hasNull()) r.readNull(); - else publicKey = r.readBytes(MAX_PUBLIC_KEY_LENGTH); + if(name.length() == 0) throw new FormatException(); + byte[] salt = r.readBytes(GROUP_SALT_LENGTH); + if(salt.length != GROUP_SALT_LENGTH) throw new FormatException(); r.readStructEnd(); r.removeConsumer(digesting); // Build and return the group GroupId id = new GroupId(messageDigest.digest()); - return new Group(id, name, publicKey); + return new Group(id, name, salt); } } -- GitLab