forked from root/acme.js
Fixed error handling for non promise setChallenge.
This commit is contained in:
parent
208834130d
commit
119f5a9ae4
25
node.js
25
node.js
|
@ -384,15 +384,10 @@ ACME._postChallenge = function (me, options, identifier, ch) {
|
|||
me._nonce = resp.toJSON().headers['replay-nonce'];
|
||||
if (me.debug) console.debug('respond to challenge: resp.body:');
|
||||
if (me.debug) console.debug(resp.body);
|
||||
return ACME._wait(1 * 1000).then(pollStatus).then(resolve, reject);
|
||||
return ACME._wait(1 * 1000).then(pollStatus);
|
||||
});
|
||||
}
|
||||
|
||||
function failChallenge(err) {
|
||||
if (err) { reject(err); return; }
|
||||
return testChallenge();
|
||||
}
|
||||
|
||||
function testChallenge() {
|
||||
// TODO put check dns / http checks here?
|
||||
// http-01: GET https://example.org/.well-known/acme-challenge/{{token}} => {{keyAuth}}
|
||||
|
@ -410,11 +405,23 @@ ACME._postChallenge = function (me, options, identifier, ch) {
|
|||
|
||||
try {
|
||||
if (1 === options.setChallenge.length) {
|
||||
options.setChallenge(auth).then(testChallenge, reject);
|
||||
options.setChallenge(auth).then(testChallenge).then(resolve, reject);
|
||||
} else if (2 === options.setChallenge.length) {
|
||||
options.setChallenge(auth, failChallenge);
|
||||
options.setChallenge(auth, function(err) {
|
||||
if(err) {
|
||||
reject(err);
|
||||
} else {
|
||||
options.setChallenge(identifier.value, ch.token, keyAuthorization, failChallenge);
|
||||
testChallenge().then(resolve, reject);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
options.setChallenge(identifier.value, ch.token, keyAuthorization, function(err) {
|
||||
if(err) {
|
||||
reject(err);
|
||||
} else {
|
||||
testChallenge().then(resolve, reject);
|
||||
}
|
||||
});
|
||||
}
|
||||
} catch(e) {
|
||||
reject(e);
|
||||
|
|
Loading…
Reference in New Issue