raf.readFully(ebs); if (readLeInt(ebs, 0) != CENSIG)
if (inp.readLeInt() != CENSIG)
  private void readEntries() throws ZipException, IOException  {		/* Search for the End Of Central Directory.  When a zip comment is 		 * present the directory may start earlier.		 * FIXME: This searches the whole file in a very slow manner if the		 * file isn't a zip file.		 */		long pos = raf.length() - ENDHDR;		byte[] ebs = new byte[CENHDR];    do      {			if (pos < 0)	  throw new ZipException	    ("central directory not found, probably not a zip file: " + name);			raf.seek(pos--);      }    while (readLeInt(raf, ebs) != ENDSIG);		if (raf.skipBytes(ENDTOT - ENDNRD) != ENDTOT - ENDNRD)			throw new EOFException(name);		int count = readLeShort(raf, ebs);		if (raf.skipBytes(ENDOFF - ENDSIZ) != ENDOFF - ENDSIZ)			throw new EOFException(name);		int centralOffset = readLeInt(raf, ebs);    entries = new HashMap(count+count/2);		raf.seek(centralOffset);		byte[] buffer = new byte[16];    for (int i = 0; i < count; i++)      {			raf.readFully(ebs);			if (readLeInt(ebs, 0) != CENSIG)				throw new ZipException("Wrong Central Directory signature: " + name);			int method = readLeShort(ebs, CENHOW);			int dostime = readLeInt(ebs, CENTIM);			int crc = readLeInt(ebs, CENCRC);			int csize = readLeInt(ebs, CENSIZ);			int size = readLeInt(ebs, CENLEN);			int nameLen = readLeShort(ebs, CENNAM);			int extraLen = readLeShort(ebs, CENEXT);			int commentLen = readLeShort(ebs, CENCOM);			int offset = readLeInt(ebs, CENOFF);			int needBuffer = Math.max(nameLen, commentLen);			if (buffer.length < needBuffer)				buffer = new byte[needBuffer];			raf.readFully(buffer, 0, nameLen);	String name;	try	  {	    name = new String(buffer, 0, nameLen, "UTF-8");	  }	catch (UnsupportedEncodingException uee)	  {	    throw new AssertionError(uee);	  }			ZipEntry entry = new ZipEntry(name);			entry.setMethod(method);			entry.setCrc(crc & 0xffffffffL);			entry.setSize(size & 0xffffffffL);			entry.setCompressedSize(csize & 0xffffffffL);			entry.setDOSTime(dostime);	if (extraLen > 0)	  {				byte[] extra = new byte[extraLen];				raf.readFully(extra);				entry.setExtra(extra);			}	if (commentLen > 0)	  {				raf.readFully(buffer, 0, commentLen);	    try	      {		entry.setComment(new String(buffer, 0, commentLen, "UTF-8"));	      }	    catch (UnsupportedEncodingException uee)	      {		throw new AssertionError(uee);	      }			}			entry.offset = offset;			entries.put(name, entry);		}	}