mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Handle globalAgent having a single non-array CA (#6628)
* Handle globalAgent having a single non-array CA Signed-off-by: Sebastian Malton <sebastian@malton.name> * Rewrite ternary as IIFE Signed-off-by: Sebastian Malton <sebastian@malton.name> Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
parent
aedc47551a
commit
27fb128c05
@ -22,15 +22,36 @@ const injectSystemCAsInjectable = getInjectable({
|
||||
const requestSystemCAs = di.inject(requestSystemCAsInjectionToken);
|
||||
|
||||
return async () => {
|
||||
for (const cert of await requestSystemCAs()) {
|
||||
if (isCertActive(cert)) {
|
||||
if (Array.isArray(globalAgent.options.ca) && !globalAgent.options.ca.includes(cert)) {
|
||||
globalAgent.options.ca.push(cert);
|
||||
} else {
|
||||
globalAgent.options.ca = [cert];
|
||||
}
|
||||
const certs = await requestSystemCAs();
|
||||
|
||||
if (certs.length === 0) {
|
||||
// Leave the global option alone
|
||||
return;
|
||||
}
|
||||
|
||||
const cas = (() => {
|
||||
if (Array.isArray(globalAgent.options.ca)) {
|
||||
return globalAgent.options.ca;
|
||||
}
|
||||
|
||||
if (globalAgent.options.ca) {
|
||||
return [globalAgent.options.ca];
|
||||
}
|
||||
|
||||
return [];
|
||||
})();
|
||||
|
||||
for (const cert of certs) {
|
||||
if (!isCertActive(cert)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!cas.includes(cert)) {
|
||||
cas.push(cert);
|
||||
}
|
||||
}
|
||||
|
||||
globalAgent.options.ca = cas;
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
Loading…
Reference in New Issue
Block a user