Disable Certificate Transparency verification

This commit is contained in:
Yuya Ochiai
2018-03-26 22:37:36 +09:00
parent 7599eab2cd
commit f31c4b6332

View File

@@ -14,6 +14,7 @@ const os = require('os');
const path = require('path');
const isDev = require('electron-is-dev');
const installExtension = require('electron-devtools-installer');
const semver = require('semver');
const squirrelStartup = require('./main/squirrelStartup');
const CriticalErrorHandler = require('./main/CriticalErrorHandler');
@@ -610,6 +611,20 @@ app.on('ready', () => {
permissionManager = new PermissionManager(permissionFile, trustedURLs);
session.defaultSession.setPermissionRequestHandler(permissionRequestHandler(mainWindow, permissionManager));
// Disable Certificate Transparency until Electron 1.8.3
// due to https://github.com/electron/electron/issues/11997
if (semver.lt(process.versions.electron, '1.8.3')) {
const SUCCESS_AND_DISABLE_CERTIFICATE_TRANSPARENCY = 0;
const USE_VERIFICATION_RESULT_FROM_CHROMIUM = -3;
session.defaultSession.setCertificateVerifyProc((request, callback) => {
if (request.verificationResult === 'net::OK') {
callback(SUCCESS_AND_DISABLE_CERTIFICATE_TRANSPARENCY);
} else {
callback(USE_VERIFICATION_RESULT_FROM_CHROMIUM);
}
});
}
// Open the DevTools.
// mainWindow.openDevTools();
});