From a97e1113c3521672efd54a9c373fec1a768bb0bc Mon Sep 17 00:00:00 2001 From: Virtually Nick Date: Wed, 17 Apr 2019 16:48:51 -0400 Subject: [PATCH] GUACAMOLE-774: Fix RadiusConnectionservice class initilization for use with Guice. --- .../auth/radius/RadiusConnectionService.java | 35 ++++++++++--------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/extensions/guacamole-auth-radius/src/main/java/org/apache/guacamole/auth/radius/RadiusConnectionService.java b/extensions/guacamole-auth-radius/src/main/java/org/apache/guacamole/auth/radius/RadiusConnectionService.java index 15d183545..5e1c55c2a 100644 --- a/extensions/guacamole-auth-radius/src/main/java/org/apache/guacamole/auth/radius/RadiusConnectionService.java +++ b/extensions/guacamole-auth-radius/src/main/java/org/apache/guacamole/auth/radius/RadiusConnectionService.java @@ -72,26 +72,27 @@ public class RadiusConnectionService { * Set up a new instance of this class, and check the provided * authentication protocol. If the protocol requires MD4 support, * this loads the required security providers. - * - * @throws GuacamoleException - * If guacamole.properties cannot be parsed or an invalid - * authentication protocol is provided. */ - public RadiusConnectionService() throws GuacamoleException { + public RadiusConnectionService() { - RadiusAuthenticationProtocol authProtocol = confService.getRadiusAuthProtocol(); + try { + RadiusAuthenticationProtocol authProtocol = confService.getRadiusAuthProtocol(); - // Check for MS-CHAP and add MD4 support - if (authProtocol == RadiusAuthenticationProtocol.MSCHAPv1 - || authProtocol == RadiusAuthenticationProtocol.MSCHAPv2) { - - Security.addProvider(new Provider("MD4", 0.00, "MD4 for MSCHAPv1/2 RADIUS") { - { - this.put("MessageDigest.MD4", - org.bouncycastle.jce.provider.JDKMessageDigest.MD4.class.getName()); - } - }); - + // Check for MS-CHAP and add MD4 support + if (authProtocol == RadiusAuthenticationProtocol.MSCHAPv1 + || authProtocol == RadiusAuthenticationProtocol.MSCHAPv2) { + + Security.addProvider(new Provider("MD4", 0.00, "MD4 for MSCHAPv1/2 RADIUS") { + { + this.put("MessageDigest.MD4", + org.bouncycastle.jce.provider.JDKMessageDigest.MD4.class.getName()); + } + }); + + } + } catch(GuacamoleException e) { + logger.error("Could not retrieve RADIUS authentication protocol: {}", e.getMessage()); + logger.debug("Failed to determine authentication protocol", e); } }