fix pagebuilder service

This commit is contained in:
zefie
2023-07-30 12:26:42 -04:00
parent d0284011b6
commit 2652af8c55
3 changed files with 28 additions and 17 deletions

View File

@@ -331,6 +331,7 @@ async function processPath(socket, service_vault_file_path, request_headers = ne
var request_is_async = false; var request_is_async = false;
var service_vault_found = false; var service_vault_found = false;
var service_path = unescape(service_vault_file_path); var service_path = unescape(service_vault_file_path);
var vaults_to_scan = service_vaults;
var usingSharedROMCache = false; var usingSharedROMCache = false;
var contextObj = { var contextObj = {
"privileged": false, "privileged": false,
@@ -352,19 +353,17 @@ async function processPath(socket, service_vault_file_path, request_headers = ne
["request_is_async", "request_is_async"] // we need to know if the script is async or not ["request_is_async", "request_is_async"] // we need to know if the script is async or not
] ]
if (!pc_services) { if (pc_services) {
var pc_service_name = getServiceByVaultDir(service_name)
if (minisrv_config.services[pc_service_name].service_vaults) {
vaults_to_scan = minisrv_config.services[pc_service_name].service_vaults;
}
} else {
updateFromVM.push([`ssid_sessions['${socket.ssid}']`, "session_data"]); // user-specific session data from unprivileged scripts updateFromVM.push([`ssid_sessions['${socket.ssid}']`, "session_data"]); // user-specific session data from unprivileged scripts
} }
var privileged = false; var privileged = false;
if (minisrv_config.services[service_name]) { if (minisrv_config.services[service_name]) privileged = (minisrv_config.services[service_name].privileged) ? true : false;
privileged = (minisrv_config.services[service_name].privileged) ? true : false; else if (pc_services) privileged = (minisrv_config.services['pc_services'].privileged) ? true : false;
} else if (pc_services) {
var real_service_name = getServiceByVaultDir(service_name);
if (real_service_name) {
privileged = (minisrv_config.services[real_service_name].privileged) ? true : false;
}
}
if (privileged) { if (privileged) {
updateFromVM.push(["ssid_sessions", "ssid_sessions"]); // global ssid_sessions object for privileged service scripts, such as wtv-setup, wtv-head-waiter, etc updateFromVM.push(["ssid_sessions", "ssid_sessions"]); // global ssid_sessions object for privileged service scripts, such as wtv-setup, wtv-head-waiter, etc
@@ -372,7 +371,7 @@ async function processPath(socket, service_vault_file_path, request_headers = ne
} }
try { try {
service_vaults.forEach(function (service_vault_dir) { vaults_to_scan.forEach(function (service_vault_dir) {
if (service_vault_found) return; if (service_vault_found) return;
if (!usingSharedROMCache) { if (!usingSharedROMCache) {
if (minisrv_config.config.SharedROMCache && shared_romcache) { if (minisrv_config.config.SharedROMCache && shared_romcache) {
@@ -443,7 +442,7 @@ async function processPath(socket, service_vault_file_path, request_headers = ne
} }
if (!ssid_sessions[socket.ssid].data_store.WTVFlashrom) { if (!ssid_sessions[socket.ssid].data_store.WTVFlashrom) {
ssid_sessions[socket.ssid].data_store.WTVFlashrom = new WTVFlashrom(minisrv_config, service_vaults, service_name, minisrv_config.services[service_name].use_zefie_server, bf0app_update); ssid_sessions[socket.ssid].data_store.WTVFlashrom = new WTVFlashrom(minisrv_config, search_service_vaults, service_name, minisrv_config.services[service_name].use_zefie_server, bf0app_update);
} }
ssid_sessions[socket.ssid].data_store.WTVFlashrom.getFlashRom(request_path, function (data, headers) { ssid_sessions[socket.ssid].data_store.WTVFlashrom.getFlashRom(request_path, function (data, headers) {
@@ -2011,11 +2010,11 @@ if (minisrv_config.config.error_log_file) {
// sanity // sanity
if (minisrv_config.config.user_accounts.max_users_per_account < 1) { if (minisrv_config.config.user_accounts.max_users_per_account < 1) {
console.log(" * WARNING: user_accounts.max_users_per_account should be at least 1, we have set it to 1."); console.log(" * WARNING: user_accounts.max_users_per_account should be >= 1, we have set it to 1.");
minisrv_config.config.user_accounts.max_users_per_account = 1; minisrv_config.config.user_accounts.max_users_per_account = 1;
} }
if (minisrv_config.config.user_accounts.max_users_per_account > 99) { if (minisrv_config.config.user_accounts.max_users_per_account > 99) {
console.log(" * WARNING: user_accounts.max_users_per_account should be less than 99, we have set it to 99."); console.log(" * WARNING: user_accounts.max_users_per_account should be <= 99, we have set it to 99.");
minisrv_config.config.user_accounts.max_users_per_account = 99; minisrv_config.config.user_accounts.max_users_per_account = 99;
} }

View File

@@ -305,6 +305,18 @@
"external_proxy_host": "127.0.0.1", // IP address or hostname of proxy "external_proxy_host": "127.0.0.1", // IP address or hostname of proxy
"external_proxy_port": 1080, // Port of proxy "external_proxy_port": 1080, // Port of proxy
"flags": "0x00000001" "flags": "0x00000001"
},
"pb_services": {
// PC Services for PageBuilder
"port": 1697,
"pc_services": true, // defines service as a PC service
"hide_minisrv_version": true, // hide or show the minisrv version (eg like Apache version, can be hidden to hide known exploits for older version)
"servicevault_dir": "http_pb", // The service vault dir for the PC Services for PageBuilder
"service_vaults": ["PageBuilderVault"], // override service vaults for this service
"drop_connection_on_wrong_port": true, // If true, resets connection if the PC browser connects to a port that is not PC Services enabled
"show_verbose_errors": false, // extra debugging
"allow_https": false, // for future use with LetsEncrypt
"force_https": false // for future use with LetsEncrypt
}, },
"pc_services": { "pc_services": {
// PC Services // PC Services

View File

@@ -1,12 +1,12 @@
{ {
"name": "zefie_wtvp_minisrv", "name": "zefie_wtvp_minisrv",
"version": "0.9.39", "version": "0.9.40",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "zefie_wtvp_minisrv", "name": "zefie_wtvp_minisrv",
"version": "0.9.39", "version": "0.9.40",
"license": "GPL3", "license": "GPL3",
"dependencies": { "dependencies": {
"@mafintosh/vm2": "^3.9.2", "@mafintosh/vm2": "^3.9.2",