I'm guessing serviceability-dev is a better place for this message.

-- Jon



On 10/1/18 5:44 AM, Ladislav Jahoda wrote:
Hello guys,
the revokeall utility has an infinite loop in its revokeAll method. Please note in the loop (line #344 in revokeall.c):
while (count > 0) {
the condition (line #354):
if (((ACCESS_ALLOWED_ACE *)ace)->Header.AceType != ACCESS_ALLOWED_ACE_TYPE) {
     continue;
}
which loops forever if the condition is met. Note that the “count” counter needs to be decremented before the continue statement, that is: if (((ACCESS_ALLOWED_ACE *)ace)->Header.AceType != ACCESS_ALLOWED_ACE_TYPE) {
     count--;
     continue;
}
I checked the OpenJDK 8, 9 and 10, the bug is in all versions.
Thanks ahead for the fix,
Lada Jahoda


Reply via email to