Assign random port number when not explicitly set in redirect URI.

This commit is contained in:
David Kocher
2026-04-28 11:56:55 +02:00
parent 5edcabf1e0
commit 9023b9b8bb
@@ -67,7 +67,7 @@ public class LoopbackOAuth2AuthorizationCodeProvider extends BrowserOAuth2Author
}); });
try { try {
final HttpServer server = HttpServer.create(new InetSocketAddress( final HttpServer server = HttpServer.create(new InetSocketAddress(
URI.create(redirectUri).getHost(), URI.create(redirectUri).getPort()), 0); URI.create(redirectUri).getHost(), -1 == URI.create(redirectUri).getPort() ? 0 : URI.create(redirectUri).getPort()), 0);
final ExecutorService executor = Executors.newSingleThreadExecutor(new NamedThreadFactory("oauth")); final ExecutorService executor = Executors.newSingleThreadExecutor(new NamedThreadFactory("oauth"));
// Create handler for OAuth callback // Create handler for OAuth callback
server.createContext(StringUtils.isBlank(URI.create(redirectUri).getRawPath()) ? server.createContext(StringUtils.isBlank(URI.create(redirectUri).getRawPath()) ?