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();
}