mirror of
https://github.com/EndPwnArchive/bspwn-lambda.git
synced 2024-08-14 23:57:04 +00:00
content security policy fix
This commit is contained in:
parent
6f7c92df74
commit
cc6f449cff
2 changed files with 42 additions and 31 deletions
|
@ -15,66 +15,78 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// we just get remote because nothing in the root of the module is useful to us
|
// we just get remote because nothing in the root of the module is useful to us
|
||||||
const electron = require('electron').remote;
|
const electron = require("electron").remote;
|
||||||
const fs = require('original-fs');
|
const fs = require("original-fs");
|
||||||
|
|
||||||
const data = electron.app.getPath('userData') + '/';
|
const data = electron.app.getPath("userData") + "/";
|
||||||
|
|
||||||
function bsprint(str) {
|
function bsprint(str) {
|
||||||
console.log(`%c[bspwn]%c ` + str, 'font-weight:bold;color:#0cc', '');
|
console.log(`%c[bspwn]%c ` + str, "font-weight:bold;color:#0cc", "");
|
||||||
}
|
}
|
||||||
|
|
||||||
function bswarn(str) {
|
function bswarn(str) {
|
||||||
console.warn(`%c[bspwn]%c ` + str, 'font-weight:bold;color:#0cc', '');
|
console.warn(`%c[bspwn]%c ` + str, "font-weight:bold;color:#0cc", "");
|
||||||
}
|
}
|
||||||
|
|
||||||
// basically took this one verbatim from epapi bc i couldnt be fucked to reimplement it
|
// basically took this one verbatim from epapi bc i couldnt be fucked to reimplement it
|
||||||
function bserror(t, e) {
|
function bserror(t, e) {
|
||||||
console.error(`%c[bspwn]%c ${t}:\n\n`, 'font-weight:bold;color:#0cc', '', e);
|
console.error(
|
||||||
|
`%c[bspwn]%c ${t}:\n\n`,
|
||||||
|
"font-weight:bold;color:#0cc",
|
||||||
|
"",
|
||||||
|
e
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
exports.go = function() {
|
exports.go = function() {
|
||||||
|
|
||||||
// crashing the preload script is very bad and definitely not something we want to do, so we catch our errors
|
// crashing the preload script is very bad and definitely not something we want to do, so we catch our errors
|
||||||
try {
|
try {
|
||||||
|
bsprint("initializing...");
|
||||||
|
|
||||||
bsprint('initializing...');
|
electron.session.defaultSession.webRequest.onHeadersReceived(function(
|
||||||
|
details,
|
||||||
|
callback
|
||||||
|
) {
|
||||||
|
details.responseHeaders["content-security-policy"] = "*";
|
||||||
|
callback({ responseHeaders: details.responseHeaders });
|
||||||
|
});
|
||||||
|
|
||||||
if (location.hostname.indexOf('discordapp') == -1) {
|
if (location.hostname.indexOf("discordapp") == -1) {
|
||||||
bswarn('hm, not running under discordapp, let\'s abort...');
|
bswarn("hm, not running under discordapp, let's abort...");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// apparently tripping hasSuspiciousCode() makes discord not report errors, so lets do that on purpose
|
// apparently tripping hasSuspiciousCode() makes discord not report errors, so lets do that on purpose
|
||||||
window.BetterDiscord = 'this is a dummy value to trip hasSuspiciousCode()';
|
window.BetterDiscord =
|
||||||
|
"this is a dummy value to trip hasSuspiciousCode()";
|
||||||
|
|
||||||
// make sure crispr and epapi are actually there before trying to load them
|
// make sure crispr and epapi are actually there before trying to load them
|
||||||
var crisprFound = fs.existsSync(data + 'crispr.js');
|
var crisprFound = fs.existsSync(data + "crispr.js");
|
||||||
var epapiFound = fs.existsSync(data + 'epapi.js');
|
var epapiFound = fs.existsSync(data + "epapi.js");
|
||||||
|
|
||||||
if (!epapiFound) {
|
if (!epapiFound) {
|
||||||
bswarn('EPAPI not detected, aborting...');
|
bswarn("EPAPI not detected, aborting...");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!crisprFound) bswarn('CRISPR not detected');
|
if (!crisprFound) bswarn("CRISPR not detected");
|
||||||
|
|
||||||
// load our friends :)
|
// load our friends :)
|
||||||
var crispr = require(data + 'crispr.js');
|
var crispr = require(data + "crispr.js");
|
||||||
var epapi = require(data + 'epapi.js');
|
var epapi = require(data + "epapi.js");
|
||||||
|
|
||||||
// these are the bootstrap properties we pass to crispr and epapi
|
// these are the bootstrap properties we pass to crispr and epapi
|
||||||
var properties = {
|
var properties = {
|
||||||
name: 'EndPwn3',
|
name: "Lambda",
|
||||||
version: {
|
version: {
|
||||||
major: 3,
|
major: 0,
|
||||||
minor: 2,
|
minor: 1,
|
||||||
|
|
||||||
toString: function() {
|
toString: function() {
|
||||||
return `v${this.major}.${this.minor}`;
|
return `v${this.major}.${this.minor}`;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
method: 'bspwn',
|
method: "legacy-bspwn",
|
||||||
brand: true,
|
brand: true,
|
||||||
native: true
|
native: true
|
||||||
};
|
};
|
||||||
|
@ -83,11 +95,10 @@ exports.go = function () {
|
||||||
if (crisprFound) crispr.go(properties);
|
if (crisprFound) crispr.go(properties);
|
||||||
|
|
||||||
// delay epapi until dom-ready to prevent errors
|
// delay epapi until dom-ready to prevent errors
|
||||||
electron.getCurrentWindow().webContents.on('dom-ready', () => epapi.go(properties));
|
electron
|
||||||
|
.getCurrentWindow()
|
||||||
|
.webContents.on("dom-ready", () => epapi.go(properties));
|
||||||
|
} catch (ex) {
|
||||||
|
bserror("exception during init", ex);
|
||||||
}
|
}
|
||||||
catch (ex) {
|
|
||||||
bserror('exception during init', ex);
|
|
||||||
}
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
@ -58,7 +58,7 @@ function patch(target, resolve) {
|
||||||
var archive = archiver("zip");
|
var archive = archiver("zip");
|
||||||
|
|
||||||
var output = fs.createWriteStream(
|
var output = fs.createWriteStream(
|
||||||
(config.target || "./out/") + target + ".zip"
|
(config.target || "./") + target + ".zip"
|
||||||
);
|
);
|
||||||
|
|
||||||
archive.pipe(output);
|
archive.pipe(output);
|
||||||
|
@ -119,7 +119,7 @@ async function scrape() {
|
||||||
},
|
},
|
||||||
(err, response, body) => {
|
(err, response, body) => {
|
||||||
fs.writeFile(
|
fs.writeFile(
|
||||||
"./out/" + ident + ".orig.zip",
|
"./" + ident + ".orig.zip",
|
||||||
body,
|
body,
|
||||||
() => {
|
() => {
|
||||||
console.log("done downloading");
|
console.log("done downloading");
|
||||||
|
|
Loading…
Reference in a new issue