Skip to content

fix: keep autofuzz from stalling in BigInteger(int, int, Random)#1059

Open
domzoric wants to merge 1 commit into
CodeIntelligenceTesting:mainfrom
domzoric:autofuzz-denylist-biginteger-ctor
Open

fix: keep autofuzz from stalling in BigInteger(int, int, Random)#1059
domzoric wants to merge 1 commit into
CodeIntelligenceTesting:mainfrom
domzoric:autofuzz-denylist-biginteger-ctor

Conversation

@domzoric

@domzoric domzoric commented Jul 7, 2026

Copy link
Copy Markdown

Fixes #1055

In autofuzz mode, constructor discovery can pick BigInteger(int, int, Random), which searches for a random prime with the given bit length and can take practically forever for large arguments, stalling the fuzzer.

This adds a denylist of constructors that are never considered during constructor discovery in AccessibleObjectLookup and puts BigInteger(int, int, Random) on it, as suggested in the issue. The denylist is a simple static set for now, so further problematic constructors can easily be added; making it user-configurable could be a follow-up if needed.

Includes a unit test verifying that the denylisted constructor is filtered out while other BigInteger constructors remain available.

Autofuzz can stall indefinitely when constructing arguments via
BigInteger(int, int, Random), which searches for a random prime with up
to Integer.MAX_VALUE bits. Introduce a denylist of constructors that are
never considered during constructor discovery and add this constructor
to it.

Fixes CodeIntelligenceTesting#1055
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

jazzer autofuzz stalls when generating BigInteger values

1 participant