Please take a review:

   http://cr.openjdk.java.net/~weijun/6917791/webrev.00

Before the fix, the hexdump of a keytab only encodes one character for byte smaller than 16. This means 0x12 can be {1,2} or {12}. After the fix, a byte is always encoded in 2 characters.

Thanks
Max

Begin forwarded message:

*Synopsis*: KeyTabEntry, when the byte value smaller then 16, the string drop '0'.

*Change Request ID*: 6917791

*Synopsis*: KeyTabEntry, when the byte value smaller then 16, the string drop '0'.

 Product: java
 Category: jgss
 Subcategory: krb5plugin
 Type: Defect

=== *Description* ============================================================
FULL PRODUCT VERSION :

A DESCRIPTION OF THE PROBLEM :
sun.security.krb5.internal.ktab.KeyTabEntry

public String getKeyString() {
 StringBuffer sb = new StringBuffer("0x");
 for (int i = 0; i < keyblock.length; i++) {
  sb.append(Integer.toHexString(keyblock[i] & 0xff));
 }
 return sb.toString();
}

when the  byte value smaller then 16, the string drop '0'.


REPRODUCIBILITY :
This bug can be reproduced always.

Reply via email to