diff --git a/package.json b/package.json index 36cd910..c2d8990 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "premid", "productName": "PreMiD", "description": "Discord Rich Presence for web services.", - "version": "2.2.0", + "version": "2.2.1", "repository": "https://github.com/PreMiD/PreMiD", "scripts": { "init": "tsc --skipLibCheck && tsc pkg util/prepare util/zip && devScript --copyOnly", diff --git a/src/managers/socketManager.ts b/src/managers/socketManager.ts index f077d2c..ffaf2b8 100644 --- a/src/managers/socketManager.ts +++ b/src/managers/socketManager.ts @@ -4,7 +4,12 @@ import socketIo from "socket.io"; import { trayManager } from "../"; import { error, success } from "../util/debug"; -import { clearActivity, getDiscordUser, rpcClients, setActivity } from "./discordManager"; +import { + clearActivity, + getDiscordUser, + rpcClients, + setActivity +} from "./discordManager"; import { openFileDialog } from "./presenceDevManager"; import { update as updateSettings } from "./settingsManager"; @@ -25,8 +30,15 @@ export function init() { serveClient: false, allowEIO3: true, allowRequest: (req, callback) => { - const noOriginHeader = req.headers.origin === undefined; - callback(null, noOriginHeader); + if (req.headers.origin === undefined) return callback(null, true); + //* 2.5.0+ only allows extensions to connect + if ( + req.headers.origin.startsWith("chrome-extension://") || + req.headers.origin.startsWith("moz-extension://") + ) + return callback(null, true); + + callback("Origin not allowed", false); } }); server.listen(3020, () => {