Skip to content

Fix for issue #4972 "can not get domain token entry" #6469

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 21 commits into
base: master
Choose a base branch
from

Conversation

cjwalsh
Copy link

@cjwalsh cjwalsh commented Aug 8, 2025

Fix for issue #4972 (#4972) "can not get domain token entry" which appears to happen occasionally with ZeroSSL responses. Extends the previous fix where responses include empty response objects.

Issue appears to be related to the _egrep_o regex not being able to match and extract the "type":"http-01" or "type":"dns-01" challenge type entries as expected for some reason which is unclear to me. This fix adds a prior call to _egrep_o to extract the "challenges":[{"type":"http-01",.....},{"type":"dns-01",....}] array section of text from the response, which then appears to allow the extraction of the specific entry for the type being parsed to work.

cjwalsh and others added 21 commits February 21, 2024 00:21
… validation types

Fix for empty error objects in the response which mess up the extraction of domain validation types due to the closing brace in the error object prematurely matching the end of the search pattern.

This seems to be a recent change with ZeroSSL in particular where "error":{} is being included in responses.

There could potentially be a related issue if there is a complex error object ever returned in the validation check response where an embedded sub-object could lead to an incomplete extraction of the error message, roughly around line 5040.

Adapted from fix suggested here: acmesh-official#4933 (comment)
The @epgdatacapbon was renamed to @tkmsst

Signed-off-by: Sergey Ponomarev <[email protected]>
He made the DuckDNS script that was used for this script but he can't support the script.

Signed-off-by: Sergey Ponomarev <[email protected]>
Signed-off-by: Sergey Ponomarev <[email protected]>
…ror-handling

Run post hook when `_on_before_issue()` errors
Fix logged typo when running pre hook
Fix for empty error objects in response breaking extraction of domain validation types
New dnsapi support for OpenProvider.eu using REST API
Fix for issue 4972 (acmesh-official#4972) "can not get domain token entry" which appears to happen occasionally with ZeroSSL responses. Extends the previous fix where responses include empty response objects.

Issue appears to be related to the _egrep_o regex not being able to match the `"type":"http-01"` or `"type":"dns-01"` challenge types as expected for some reason which is unclear to me. This fix adds a prior call to _egrep_o to extract the `"challenges":[{"type":"http-01",.....},{"type":"dns-01",....}]` array section of text from the response, which then appears to allow the extraction of the specific entry for the type being parsed to work.
Copy link

github-actions bot commented Aug 8, 2025

Welcome
READ ME !!!!!
Read me !!!!!!
First thing: don't send PR to the master branch, please send to the dev branch instead.
Please read the DNS API Dev Guide.
You MUST pass the DNS-API-Test.
Then reply on this message, otherwise, your code will not be reviewed or merged.
Please also make sure to add/update the usage here: https://github.com/acmesh-official/acme.sh/wiki/dnsapi2
注意: 必须通过了 DNS-API-Test 才会被 review. 无论是修改, 还是新加的 dns api, 都必须确保通过这个测试.

@cjwalsh
Copy link
Author

cjwalsh commented Aug 8, 2025

@Neilpang note this fix is an addition to my previous PR relating to handling empty error objects in the ZeroSSL responses

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.

5 participants