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