fix(tor-shield): Fix RPC expect declarations breaking API calls
The expect: { success: false } was causing LuCI RPC to return false
instead of the actual response. Changed all expect declarations to
empty objects to get raw API responses.
Also improved error messages to show actual response for debugging.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
39d29e8308
commit
52e9fbd866
@ -12,19 +12,19 @@ var callEnable = rpc.declare({
|
||||
object: 'luci.tor-shield',
|
||||
method: 'enable',
|
||||
params: ['preset'],
|
||||
expect: { success: false }
|
||||
expect: { }
|
||||
});
|
||||
|
||||
var callDisable = rpc.declare({
|
||||
object: 'luci.tor-shield',
|
||||
method: 'disable',
|
||||
expect: { success: false }
|
||||
expect: { }
|
||||
});
|
||||
|
||||
var callRestart = rpc.declare({
|
||||
object: 'luci.tor-shield',
|
||||
method: 'restart',
|
||||
expect: { success: false }
|
||||
expect: { }
|
||||
});
|
||||
|
||||
var callCircuits = rpc.declare({
|
||||
@ -36,7 +36,7 @@ var callCircuits = rpc.declare({
|
||||
var callNewIdentity = rpc.declare({
|
||||
object: 'luci.tor-shield',
|
||||
method: 'new_identity',
|
||||
expect: { success: false }
|
||||
expect: { }
|
||||
});
|
||||
|
||||
var callCheckLeaks = rpc.declare({
|
||||
@ -55,14 +55,14 @@ var callAddHiddenService = rpc.declare({
|
||||
object: 'luci.tor-shield',
|
||||
method: 'add_hidden_service',
|
||||
params: ['name', 'local_port', 'virtual_port'],
|
||||
expect: { success: false }
|
||||
expect: { }
|
||||
});
|
||||
|
||||
var callRemoveHiddenService = rpc.declare({
|
||||
object: 'luci.tor-shield',
|
||||
method: 'remove_hidden_service',
|
||||
params: ['name'],
|
||||
expect: { success: false }
|
||||
expect: { }
|
||||
});
|
||||
|
||||
var callExitIp = rpc.declare({
|
||||
@ -93,7 +93,7 @@ var callSetBridges = rpc.declare({
|
||||
object: 'luci.tor-shield',
|
||||
method: 'set_bridges',
|
||||
params: ['enabled', 'type'],
|
||||
expect: { success: false }
|
||||
expect: { }
|
||||
});
|
||||
|
||||
var callSettings = rpc.declare({
|
||||
@ -106,7 +106,7 @@ var callSaveSettings = rpc.declare({
|
||||
object: 'luci.tor-shield',
|
||||
method: 'save_settings',
|
||||
params: ['mode', 'dns_over_tor', 'kill_switch', 'socks_port', 'trans_port', 'dns_port', 'exit_nodes', 'exclude_exit_nodes', 'strict_nodes'],
|
||||
expect: { success: false }
|
||||
expect: { }
|
||||
});
|
||||
|
||||
function formatBytes(bytes) {
|
||||
|
||||
@ -90,15 +90,18 @@ return view.extend({
|
||||
|
||||
api.enable(presetId).then(function(result) {
|
||||
ui.hideModal();
|
||||
if (result.success) {
|
||||
if (result && result.success) {
|
||||
ui.addNotification(null, E('p', _('Preset %s activated').format(presetId)), 'info');
|
||||
setTimeout(function() { window.location.reload(); }, 1000);
|
||||
} else {
|
||||
ui.addNotification(null, E('p', result.error || _('Failed to apply preset')), 'error');
|
||||
var errMsg = (result && result.error) ? result.error :
|
||||
(result && result.message) ? result.message :
|
||||
'Unknown error - result: ' + JSON.stringify(result);
|
||||
ui.addNotification(null, E('p', _('Failed: %s').format(errMsg)), 'error');
|
||||
}
|
||||
}).catch(function(err) {
|
||||
ui.hideModal();
|
||||
ui.addNotification(null, E('p', _('Error: %s').format(err.message || String(err))), 'error');
|
||||
ui.addNotification(null, E('p', _('Exception: %s').format(err.message || String(err))), 'error');
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user