[DIRKRB-734] Fix miss-calculation of number of bytes read for an entry
diff --git a/kerby-kerb/kerb-util/src/main/java/org/apache/kerby/kerberos/kerb/keytab/Keytab.java b/kerby-kerb/kerb-util/src/main/java/org/apache/kerby/kerberos/kerb/keytab/Keytab.java
index 3d97db0..5695069 100644
--- a/kerby-kerb/kerb-util/src/main/java/org/apache/kerby/kerberos/kerb/keytab/Keytab.java
+++ b/kerby-kerb/kerb-util/src/main/java/org/apache/kerby/kerberos/kerb/keytab/Keytab.java
@@ -191,6 +191,7 @@
         int bytesLeft = kis.available();
         while (bytesLeft > 0) {
             int entrySize = kis.readInt();
+            bytesLeft = bytesLeft - Integer.SIZE / 8;
             if (kis.available() < entrySize) {
                 throw new IOException("Bad input stream with less data than expected: " + entrySize);
             }