diff --git a/components/net/sf/briar/transport/TagEncoder.java b/components/net/sf/briar/transport/TagEncoder.java index dca0c60debee9c91edb0fdfa4ce0c5d3a2d1e988..008ff2b35b799d6084fa6ccd9d57066b732ec5fd 100644 --- a/components/net/sf/briar/transport/TagEncoder.java +++ b/components/net/sf/briar/transport/TagEncoder.java @@ -28,13 +28,10 @@ class TagEncoder { if(tag.length < TAG_LENGTH) throw new IllegalArgumentException(); try { tagCipher.init(Cipher.DECRYPT_MODE, tagKey); - byte[] plaintext = tagCipher.doFinal(tag, 0, TAG_LENGTH); - if(plaintext.length != TAG_LENGTH) - throw new IllegalArgumentException(); + int decrypted = tagCipher.doFinal(tag, 0, TAG_LENGTH, tag); + if(decrypted != TAG_LENGTH) throw new IllegalArgumentException(); //The plaintext should be blank - for(int i = 0; i < TAG_LENGTH; i++) { - if(plaintext[i] != 0) return false; - } + for(int i = 0; i < TAG_LENGTH; i++) if(tag[i] != 0) return false; return true; } catch(GeneralSecurityException e) { // Unsuitable cipher or key diff --git a/test/build.xml b/test/build.xml index f905a6999ff96c149476eed68678fe9010b75ec3..311bada18bb90191b5242c8b26a8662c6b7c3d12 100644 --- a/test/build.xml +++ b/test/build.xml @@ -22,7 +22,6 @@ <test name='net.sf.briar.db.BasicH2Test'/> <test name='net.sf.briar.db.DatabaseCleanerImplTest'/> <test name='net.sf.briar.db.DatabaseComponentImplTest'/> - <test name='net.sf.briar.i18n.FontManagerTest'/> <test name='net.sf.briar.i18n.I18nTest'/> <test name='net.sf.briar.invitation.InvitationWorkerTest'/> <test name='net.sf.briar.lifecycle.ShutdownManagerImplTest'/> @@ -78,6 +77,7 @@ </classpath> <jvmarg value='-Djava.library.path=../lib'/> <test name='net.sf.briar.db.H2DatabaseTest'/> + <test name='net.sf.briar.i18n.FontManagerTest'/> <test name='net.sf.briar.plugins.tor.TorPluginTest'/> </junit> </target> diff --git a/test/net/sf/briar/transport/FrameReadWriteTest.java b/test/net/sf/briar/transport/FrameReadWriteTest.java index 62e275873fd2c2ead287fa239ef712161dc72a1a..97af64c4b3bf05b0dfb9a791ef975948f6a0e220 100644 --- a/test/net/sf/briar/transport/FrameReadWriteTest.java +++ b/test/net/sf/briar/transport/FrameReadWriteTest.java @@ -89,7 +89,7 @@ public class FrameReadWriteTest extends BriarTestCase { byte[] recoveredTag = new byte[TAG_LENGTH]; assertEquals(TAG_LENGTH, in.read(recoveredTag)); assertArrayEquals(tag, recoveredTag); - assertTrue(TagEncoder.decodeTag(tag, tagCipher, tagKey)); + assertTrue(TagEncoder.decodeTag(recoveredTag, tagCipher, tagKey)); // Read the frames back FrameReader encryptionIn = new IncomingEncryptionLayerImpl(in, tagCipher, frameCipher, tagKey, frameKey, false);