|
|
@ -637,6 +637,13 @@ ACME._getCertificate = function (me, options) { |
|
|
|
return results.challenges.some(function (ch) { |
|
|
|
return ch.type === chType; |
|
|
|
}); |
|
|
|
}).sort(function (aType, bType) { |
|
|
|
var a = results.challenges.filter(function (ch) { return ch.type === aType; })[0]; |
|
|
|
var b = results.challenges.filter(function (ch) { return ch.type === bType; })[0]; |
|
|
|
|
|
|
|
if ('valid' === a.status) { return 1; } |
|
|
|
if ('valid' === b.status) { return -1; } |
|
|
|
return 0; |
|
|
|
})[0]; |
|
|
|
|
|
|
|
var challenge = results.challenges.filter(function (ch) { |
|
|
@ -651,6 +658,10 @@ ACME._getCertificate = function (me, options) { |
|
|
|
)); |
|
|
|
} |
|
|
|
|
|
|
|
if ("valid" === challenge.status) { |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
return ACME._postChallenge(me, options, results.identifier, challenge); |
|
|
|
}).then(function () { |
|
|
|
return next(); |
|
|
|