stirling-pdf-patches/patches/enterprise-license.patch
2025-09-17 19:19:10 -04:00

102 lines
4.6 KiB
Diff

diff --git a/app/proprietary/src/main/java/stirling/software/proprietary/security/configuration/ee/LicenseKeyChecker.java b/app/proprietary/src/main/java/stirling/software/proprietary/security/configuration/ee/LicenseKeyChecker.java
index 987d5fb6f..b209c6b23 100644
--- a/app/proprietary/src/main/java/stirling/software/proprietary/security/configuration/ee/LicenseKeyChecker.java
+++ b/app/proprietary/src/main/java/stirling/software/proprietary/security/configuration/ee/LicenseKeyChecker.java
@@ -41,9 +41,10 @@ public class LicenseKeyChecker {
if (!applicationProperties.getPremium().isEnabled()) {
premiumEnabledResult = License.NORMAL;
} else {
- String licenseKey = getLicenseKeyContent(applicationProperties.getPremium().getKey());
+ String licenseKey = "";
if (licenseKey != null) {
- premiumEnabledResult = licenseService.verifyLicense(licenseKey);
+ premiumEnabledResult = License.ENTERPRISE;
+ applicationProperties.getEnterpriseEdition().setMaxUsers(Integer.MAX_VALUE);
if (License.ENTERPRISE == premiumEnabledResult) {
log.info("License key is Enterprise.");
} else if (License.PRO == premiumEnabledResult) {
diff --git a/app/proprietary/src/test/java/stirling/software/proprietary/security/configuration/ee/LicenseKeyCheckerTest.java b/app/proprietary/src/test/java/stirling/software/proprietary/security/configuration/ee/LicenseKeyCheckerTest.java
deleted file mode 100644
index 4a6e7ad65..000000000
--- a/app/proprietary/src/test/java/stirling/software/proprietary/security/configuration/ee/LicenseKeyCheckerTest.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package stirling.software.proprietary.security.configuration.ee;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.verifyNoInteractions;
-import static org.mockito.Mockito.when;
-import static stirling.software.proprietary.security.configuration.ee.KeygenLicenseVerifier.License;
-
-import java.io.IOException;
-import java.nio.file.Files;
-import java.nio.file.Path;
-
-import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.extension.ExtendWith;
-import org.junit.jupiter.api.io.TempDir;
-import org.mockito.Mock;
-import org.mockito.junit.jupiter.MockitoExtension;
-
-import stirling.software.common.model.ApplicationProperties;
-
-@ExtendWith(MockitoExtension.class)
-class LicenseKeyCheckerTest {
-
- @Mock private KeygenLicenseVerifier verifier;
-
- @Test
- void premiumDisabled_skipsVerification() {
- ApplicationProperties props = new ApplicationProperties();
- props.getPremium().setEnabled(false);
- props.getPremium().setKey("dummy");
-
- LicenseKeyChecker checker = new LicenseKeyChecker(verifier, props);
-
- assertEquals(License.NORMAL, checker.getPremiumLicenseEnabledResult());
- verifyNoInteractions(verifier);
- }
-
- @Test
- void directKey_verified() {
- ApplicationProperties props = new ApplicationProperties();
- props.getPremium().setEnabled(true);
- props.getPremium().setKey("abc");
- when(verifier.verifyLicense("abc")).thenReturn(License.PRO);
-
- LicenseKeyChecker checker = new LicenseKeyChecker(verifier, props);
-
- assertEquals(License.PRO, checker.getPremiumLicenseEnabledResult());
- verify(verifier).verifyLicense("abc");
- }
-
- @Test
- void fileKey_verified(@TempDir Path temp) throws IOException {
- Path file = temp.resolve("license.txt");
- Files.writeString(file, "filekey");
-
- ApplicationProperties props = new ApplicationProperties();
- props.getPremium().setEnabled(true);
- props.getPremium().setKey("file:" + file.toString());
- when(verifier.verifyLicense("filekey")).thenReturn(License.ENTERPRISE);
-
- LicenseKeyChecker checker = new LicenseKeyChecker(verifier, props);
-
- assertEquals(License.ENTERPRISE, checker.getPremiumLicenseEnabledResult());
- verify(verifier).verifyLicense("filekey");
- }
-
- @Test
- void missingFile_resultsNormal(@TempDir Path temp) {
- Path file = temp.resolve("missing.txt");
- ApplicationProperties props = new ApplicationProperties();
- props.getPremium().setEnabled(true);
- props.getPremium().setKey("file:" + file.toString());
-
- LicenseKeyChecker checker = new LicenseKeyChecker(verifier, props);
-
- assertEquals(License.NORMAL, checker.getPremiumLicenseEnabledResult());
- verifyNoInteractions(verifier);
- }
-}