You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by cs...@apache.org on 2011/03/30 13:43:44 UTC
svn commit: r1086911 -
/maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java
Author: cstamas
Date: Wed Mar 30 11:43:43 2011
New Revision: 1086911
URL: http://svn.apache.org/viewvc?rev=1086911&view=rev
Log:
MINDEXER-20: fail fast on garbage input.
Modified:
maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java
Modified: maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java
URL: http://svn.apache.org/viewvc/maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java?rev=1086911&r1=1086910&r2=1086911&view=diff
==============================================================================
--- maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java (original)
+++ maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java Wed Mar 30 11:43:43 2011
@@ -105,7 +105,13 @@ public class IndexDataReader
public long readHeader()
throws IOException
{
- dis.readByte(); // data format version
+ final byte HDRBYTE = (byte) ( ( IndexDataWriter.VERSION << 24 ) >> 24 );
+
+ if ( HDRBYTE != dis.readByte() )
+ {
+ // data format version mismatch
+ throw new IOException( "Provided input contains unexpected data (0x01 expected as 1st byte)!" );
+ }
return dis.readLong();
}