From 92b67d9881dea2be23324088010576368d0d00b4 Mon Sep 17 00:00:00 2001 From: akwizgran <akwizgran@users.sourceforge.net> Date: Thu, 19 Jan 2012 23:34:58 +0000 Subject: [PATCH] Removed a redundant method. --- .../net/sf/briar/transport/HeaderEncoder.java | 11 ----------- .../transport/IncomingAuthenticationLayerImpl.java | 14 +++++++++----- 2 files changed, 9 insertions(+), 16 deletions(-) diff --git a/components/net/sf/briar/transport/HeaderEncoder.java b/components/net/sf/briar/transport/HeaderEncoder.java index 18b3aecef2..42c80d3529 100644 --- a/components/net/sf/briar/transport/HeaderEncoder.java +++ b/components/net/sf/briar/transport/HeaderEncoder.java @@ -1,8 +1,6 @@ package net.sf.briar.transport; import static net.sf.briar.api.transport.TransportConstants.FRAME_HEADER_LENGTH; -import static net.sf.briar.api.transport.TransportConstants.MAC_LENGTH; -import static net.sf.briar.api.transport.TransportConstants.MAX_FRAME_LENGTH; import net.sf.briar.util.ByteUtils; class HeaderEncoder { @@ -22,15 +20,6 @@ class HeaderEncoder { ByteUtils.writeUint16(padding, header, 6); } - static boolean validateHeader(byte[] header) { - if(header.length < FRAME_HEADER_LENGTH) return false; - int payload = ByteUtils.readUint16(header, 4); - int padding = ByteUtils.readUint16(header, 6); - int frameLength = FRAME_HEADER_LENGTH + payload + padding + MAC_LENGTH; - if(frameLength > MAX_FRAME_LENGTH) return false; - return true; - } - static long getFrameNumber(byte[] header) { if(header.length < FRAME_HEADER_LENGTH) throw new IllegalArgumentException(); diff --git a/components/net/sf/briar/transport/IncomingAuthenticationLayerImpl.java b/components/net/sf/briar/transport/IncomingAuthenticationLayerImpl.java index 4c33c29e15..c2332c7458 100644 --- a/components/net/sf/briar/transport/IncomingAuthenticationLayerImpl.java +++ b/components/net/sf/briar/transport/IncomingAuthenticationLayerImpl.java @@ -2,6 +2,7 @@ package net.sf.briar.transport; import static net.sf.briar.api.transport.TransportConstants.FRAME_HEADER_LENGTH; import static net.sf.briar.api.transport.TransportConstants.MAC_LENGTH; +import static net.sf.briar.api.transport.TransportConstants.MAX_FRAME_LENGTH; import java.io.IOException; import java.security.InvalidKeyException; @@ -35,19 +36,22 @@ class IncomingAuthenticationLayerImpl implements IncomingAuthenticationLayer { // Read a frame if(!in.readFrame(f, window)) return false; // Check that the length is legal - byte[] buf = f.getBuffer(); - if(!HeaderEncoder.validateHeader(buf)) throw new InvalidDataException(); + int length = f.getLength(); + if(length < FRAME_HEADER_LENGTH + MAC_LENGTH) + throw new InvalidDataException(); + if(length > MAX_FRAME_LENGTH) throw new InvalidDataException(); // Check that the payload and padding lengths are correct + byte[] buf = f.getBuffer(); int payload = HeaderEncoder.getPayloadLength(buf); int padding = HeaderEncoder.getPaddingLength(buf); - if(f.getLength() != FRAME_HEADER_LENGTH + payload + padding - + MAC_LENGTH) throw new InvalidDataException(); + if(length != FRAME_HEADER_LENGTH + payload + padding + MAC_LENGTH) + throw new InvalidDataException(); // Check that the padding is all zeroes int paddingStart = FRAME_HEADER_LENGTH + payload; for(int i = paddingStart; i < paddingStart + padding; i++) { if(buf[i] != 0) throw new InvalidDataException(); } - // Check the MAC + // Verify the MAC int macStart = FRAME_HEADER_LENGTH + payload + padding; mac.update(buf, 0, macStart); byte[] expectedMac = mac.doFinal(); -- GitLab