certificate: Make certificate location dynamic.

* certificate: Make certificate location dynamic.

* Update certificate location for old servers.
This commit is contained in:
Akash Nimare
2019-11-01 19:56:22 +05:30
committed by GitHub
parent 3b14684058
commit 17d4d97e2e
3 changed files with 134 additions and 2 deletions

View File

@@ -1,10 +1,15 @@
import { remote } from 'electron';
import fs = require('fs');
import path = require('path');
import ConfigUtil = require('./config-util');
import Logger = require('./logger-util');
import ProxyUtil = require('./proxy-util');
import CertificateUtil = require('./certificate-util');
import SystemUtil = require('./system-util');
const { app } = remote;
const logger = new Logger({
file: `request-util.log`,
timestamp: true
@@ -38,11 +43,20 @@ class RequestUtil {
const certificate = CertificateUtil.getCertificate(
encodeURIComponent(domain)
);
let certificateFile = null;
if (certificate && certificate.includes('/')) {
// certificate saved using old app version
certificateFile = certificate;
} else if (certificate) {
certificateFile = path.join(`${app.getPath('userData')}/certificates`, certificate);
}
let certificateLocation = '';
if (certificate) {
// To handle case where certificate has been moved from the location in certificates.json
try {
certificateLocation = fs.readFileSync(certificate, 'utf8');
certificateLocation = fs.readFileSync(certificateFile, 'utf8');
} catch (err) {
logger.warn(`Error while trying to get certificate: ${err}`);
}