From c6f6ee9d077fa8b52c507ce1204f53d57f453488 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Richard=20K=C3=B6rber?= Date: Sun, 20 Oct 2024 09:01:36 +0200 Subject: [PATCH] Check if auto-renewal-get is supported by CA --- .../src/main/java/org/shredzone/acme4j/OrderBuilder.java | 4 ++++ .../src/test/java/org/shredzone/acme4j/OrderBuilderTest.java | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/acme4j-client/src/main/java/org/shredzone/acme4j/OrderBuilder.java b/acme4j-client/src/main/java/org/shredzone/acme4j/OrderBuilder.java index 2996f635..8d8f5e80 100644 --- a/acme4j-client/src/main/java/org/shredzone/acme4j/OrderBuilder.java +++ b/acme4j-client/src/main/java/org/shredzone/acme4j/OrderBuilder.java @@ -343,6 +343,10 @@ public class OrderBuilder { throw new AcmeNotSupportedException("auto-renewal"); } + if (autoRenewalGet && !session.getMetadata().isAutoRenewalGetAllowed()) { + throw new AcmeNotSupportedException("auto-renewal-get"); + } + if (replaces != null && session.resourceUrlOptional(Resource.RENEWAL_INFO).isEmpty()) { throw new AcmeNotSupportedException("renewal-information"); } diff --git a/acme4j-client/src/test/java/org/shredzone/acme4j/OrderBuilderTest.java b/acme4j-client/src/test/java/org/shredzone/acme4j/OrderBuilderTest.java index ee7b9c51..41fa8956 100644 --- a/acme4j-client/src/test/java/org/shredzone/acme4j/OrderBuilderTest.java +++ b/acme4j-client/src/test/java/org/shredzone/acme4j/OrderBuilderTest.java @@ -156,7 +156,9 @@ public class OrderBuilderTest { var login = provider.createLogin(); - provider.putMetadata("auto-renewal", JSON.empty()); + provider.putMetadata("auto-renewal",JSON.parse( + "{\"allow-certificate-get\": true}" + ).toMap()); provider.putTestResource(Resource.NEW_ORDER, resourceUrl); var account = new Account(login);