mirror of https://github.com/calzoneman/sync.git
Deprecate legacy global ban junk
This commit is contained in:
parent
b23a858a8c
commit
00a65a1584
|
@ -2,7 +2,7 @@
|
||||||
"author": "Calvin Montgomery",
|
"author": "Calvin Montgomery",
|
||||||
"name": "CyTube",
|
"name": "CyTube",
|
||||||
"description": "Online media synchronizer and chat",
|
"description": "Online media synchronizer and chat",
|
||||||
"version": "3.37.0",
|
"version": "3.38.0",
|
||||||
"repository": {
|
"repository": {
|
||||||
"url": "http://github.com/calzoneman/sync"
|
"url": "http://github.com/calzoneman/sync"
|
||||||
},
|
},
|
||||||
|
|
28
src/acp.js
28
src/acp.js
|
@ -278,22 +278,18 @@ function init(user) {
|
||||||
s.on("acp-force-unload", handleForceUnload.bind(this, user));
|
s.on("acp-force-unload", handleForceUnload.bind(this, user));
|
||||||
s.on("acp-list-stats", handleListStats.bind(this, user));
|
s.on("acp-list-stats", handleListStats.bind(this, user));
|
||||||
|
|
||||||
db.listGlobalBans(function (err, bans) {
|
const globalBanDB = db.getGlobalBanDB();
|
||||||
if (err) {
|
globalBanDB.listGlobalBans().then(bans => {
|
||||||
user.socket.emit("errMessage", {
|
// Why is it called reason in the DB and note in the socket frame?
|
||||||
msg: err
|
// Who knows...
|
||||||
});
|
const mappedBans = bans.map(ban => {
|
||||||
return;
|
return { ip: ban.ip, note: ban.reason };
|
||||||
}
|
});
|
||||||
|
user.socket.emit("acp-gbanlist", mappedBans);
|
||||||
var flat = [];
|
}).catch(error => {
|
||||||
for (var ip in bans) {
|
user.socket.emit("errMessage", {
|
||||||
flat.push({
|
msg: error.message
|
||||||
ip: ip,
|
});
|
||||||
note: bans[ip].reason
|
|
||||||
});
|
|
||||||
}
|
|
||||||
user.socket.emit("acp-gbanlist", flat);
|
|
||||||
});
|
});
|
||||||
Logger.eventlog.log("[acp] Initialized ACP for " + eventUsername(user));
|
Logger.eventlog.log("[acp] Initialized ACP for " + eventUsername(user));
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,6 @@ import { GlobalBanDB } from './db/globalban';
|
||||||
|
|
||||||
const LOGGER = LoggerFactory.getLogger('database');
|
const LOGGER = LoggerFactory.getLogger('database');
|
||||||
|
|
||||||
var global_ipbans = {};
|
|
||||||
let db = null;
|
let db = null;
|
||||||
let globalBanDB = null;
|
let globalBanDB = null;
|
||||||
|
|
||||||
|
@ -64,7 +63,6 @@ module.exports.init = function (newDB) {
|
||||||
process.nextTick(legacySetup);
|
process.nextTick(legacySetup);
|
||||||
});
|
});
|
||||||
|
|
||||||
global_ipbans = {};
|
|
||||||
module.exports.users = require("./database/accounts");
|
module.exports.users = require("./database/accounts");
|
||||||
module.exports.channels = require("./database/channels");
|
module.exports.channels = require("./database/channels");
|
||||||
};
|
};
|
||||||
|
@ -89,8 +87,6 @@ function legacySetup() {
|
||||||
require("./database/update").checkVersion();
|
require("./database/update").checkVersion();
|
||||||
module.exports.loadAnnouncement();
|
module.exports.loadAnnouncement();
|
||||||
});
|
});
|
||||||
// Refresh global IP bans
|
|
||||||
module.exports.listGlobalBans();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -130,92 +126,6 @@ function blackHole() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* REGION global bans */
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Check if an IP address is globally banned
|
|
||||||
*/
|
|
||||||
module.exports.isGlobalIPBanned = function (ip, callback) {
|
|
||||||
var range = util.getIPRange(ip);
|
|
||||||
var wrange = util.getWideIPRange(ip);
|
|
||||||
var banned = ip in global_ipbans ||
|
|
||||||
range in global_ipbans ||
|
|
||||||
wrange in global_ipbans;
|
|
||||||
|
|
||||||
if (callback) {
|
|
||||||
callback(null, banned);
|
|
||||||
}
|
|
||||||
return banned;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Retrieve all global bans from the database.
|
|
||||||
* Cache locally in global_bans
|
|
||||||
*/
|
|
||||||
module.exports.listGlobalBans = function (callback) {
|
|
||||||
if (typeof callback !== "function") {
|
|
||||||
callback = blackHole;
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports.query("SELECT * FROM global_bans WHERE 1", function (err, res) {
|
|
||||||
if (err) {
|
|
||||||
callback(err, null);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
global_ipbans = {};
|
|
||||||
for (var i = 0; i < res.length; i++) {
|
|
||||||
global_ipbans[res[i].ip] = res[i];
|
|
||||||
}
|
|
||||||
|
|
||||||
callback(null, global_ipbans);
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Globally ban by IP
|
|
||||||
*/
|
|
||||||
module.exports.globalBanIP = function (ip, reason, callback) {
|
|
||||||
if (typeof callback !== "function") {
|
|
||||||
callback = blackHole;
|
|
||||||
}
|
|
||||||
|
|
||||||
var query = "INSERT INTO global_bans (ip, reason) VALUES (?, ?)" +
|
|
||||||
" ON DUPLICATE KEY UPDATE reason=?";
|
|
||||||
module.exports.query(query, [ip, reason, reason], function (err, res) {
|
|
||||||
if(err) {
|
|
||||||
callback(err, null);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports.listGlobalBans();
|
|
||||||
callback(null, res);
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Remove a global IP ban
|
|
||||||
*/
|
|
||||||
module.exports.globalUnbanIP = function (ip, callback) {
|
|
||||||
if (typeof callback !== "function") {
|
|
||||||
callback = blackHole;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
var query = "DELETE FROM global_bans WHERE ip=?";
|
|
||||||
module.exports.query(query, [ip], function (err, res) {
|
|
||||||
if(err) {
|
|
||||||
callback(err, null);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports.listGlobalBans();
|
|
||||||
callback(null, res);
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
/* END REGION */
|
|
||||||
|
|
||||||
/* password recovery */
|
/* password recovery */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue