Author: j16sdiz
Date: 2008-08-22 18:08:01 +0000 (Fri, 22 Aug 2008)
New Revision: 22102
Modified:
trunk/freenet/src/freenet/clients/http/filter/GIFFilter.java
trunk/freenet/src/freenet/clients/http/filter/JPEGFilter.java
trunk/freenet/src/freenet/clients/http/filter/PNGFilter.java
Log:
readFully()
Modified: trunk/freenet/src/freenet/clients/http/filter/GIFFilter.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/filter/GIFFilter.java
2008-08-22 17:13:19 UTC (rev 22101)
+++ trunk/freenet/src/freenet/clients/http/filter/GIFFilter.java
2008-08-22 18:08:01 UTC (rev 22102)
@@ -41,7 +41,7 @@
try {
// Check the header
byte[] headerCheck = new byte[HEADER_SIZE];
- dis.read(headerCheck);
+ dis.readFully(headerCheck);
if((!Arrays.equals(headerCheck, gif87aHeader)) &&
(!Arrays.equals(headerCheck, gif89aHeader))) {
throwHeaderError(l10n("invalidHeaderTitle"),
l10n("invalidHeader"));
}
Modified: trunk/freenet/src/freenet/clients/http/filter/JPEGFilter.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/filter/JPEGFilter.java
2008-08-22 17:13:19 UTC (rev 22101)
+++ trunk/freenet/src/freenet/clients/http/filter/JPEGFilter.java
2008-08-22 18:08:01 UTC (rev 22102)
@@ -420,7 +420,7 @@
private void assertHeader(DataInputStream dis, byte[] expected) throws
IOException {
byte[] read = new byte[expected.length];
- dis.read(read);
+ dis.readFully(read);
if(!Arrays.equals(read, expected))
throwError("Invalid header", "The file does not start
with a valid JPEG (JFIF) header.");
}
Modified: trunk/freenet/src/freenet/clients/http/filter/PNGFilter.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/filter/PNGFilter.java
2008-08-22 17:13:19 UTC (rev 22101)
+++ trunk/freenet/src/freenet/clients/http/filter/PNGFilter.java
2008-08-22 18:08:01 UTC (rev 22102)
@@ -4,11 +4,19 @@
package freenet.clients.http.filter;
import java.io.BufferedInputStream;
+import java.io.BufferedOutputStream;
+import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
+import java.io.DataOutputStream;
+import java.io.File;
import java.io.IOException;
import java.io.InputStream;
+import java.io.OutputStream;
+import java.net.URI;
+import java.net.URISyntaxException;
import java.util.Arrays;
import java.util.HashMap;
+import java.util.zip.CRC32;
import freenet.l10n.L10n;
import freenet.support.HTMLNode;
@@ -21,14 +29,6 @@
import freenet.support.io.BucketTools;
import freenet.support.io.Closer;
import freenet.support.io.FileBucket;
-import java.io.BufferedOutputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.DataOutputStream;
-import java.io.File;
-import java.io.OutputStream;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.zip.CRC32;
/**
* Content filter for PNG's. Only allows valid chunks (valid CRC, known chunk
type).
@@ -110,7 +110,7 @@
dis = new DataInputStream(bis);
// Check the header
byte[] headerCheck = new byte[pngHeader.length];
- dis.read(headerCheck);
+ dis.readFully(headerCheck);
if(!Arrays.equals(headerCheck, pngHeader)) {
// Throw an exception
String message = l10n("invalidHeader");