mirror of
https://github.com/gSpotx2f/ruantiblock_openwrt.git
synced 2026-05-13 14:10:59 +00:00
fix: multiple bugs across shell, lua and python modules
Shell (ruantiblock): - fix broken 'ip' command check — was 'export IP_CMD=ip' followed by checking $? (always 0 from export); now uses 'which ip' like other utility checks - fix LOGGER_CMD check — export swallowed which exit code; split assignment and export - fix 'return 1' outside function in main case block — changed to 'exit 1' - fix '==' to '=' in test expressions for POSIX sh compliance (script uses #!/bin/sh) - fix typo 'Искоючить' -> 'Исключить' in comment - remove unused variable _dnsmasq_data_file in AddUserEntries() Lua (ruab_parser.lua): - fix global variable leak: 'val' in Config:load_environ_config() was not declared local, polluting global scope - fix global function leak: 'load_file' inside Config:load_filter_files() was not declared local - fix premature return in Summarize.remove_items() — only first matching item was deleted from range, rest were skipped Python (ruab_parser.py): - fix AttributeError crash in Summarize._group_ip_ranges() — raw_list is a dict but .remove() was called (dict method); changed to .pop() with default None
This commit is contained in:
@@ -153,7 +153,7 @@ end
|
||||
function Config:load_environ_config()
|
||||
local cfg_table = {}
|
||||
for var in pairs(self.environ_table) do
|
||||
val = os.getenv(var)
|
||||
local val = os.getenv(var)
|
||||
if val then
|
||||
cfg_table[var] = val
|
||||
end
|
||||
@@ -234,7 +234,7 @@ end
|
||||
-- Loading filters
|
||||
|
||||
function Config:load_filter_files()
|
||||
function load_file(file, t, is_array, func)
|
||||
local function load_file(file, t, is_array, func)
|
||||
local file_handler = io.open(file, "r")
|
||||
if file_handler then
|
||||
for line in file_handler:lines() do
|
||||
@@ -604,11 +604,11 @@ function Summarize:_group_ip_ranges(ip_list, raw_list)
|
||||
for i = start, stop do
|
||||
if raw_list[i] then
|
||||
raw_list[i] = nil
|
||||
return
|
||||
end
|
||||
local item = it.int_to_ip(i)
|
||||
if raw_list[item] then
|
||||
raw_list[it.int_to_ip(i)] = nil
|
||||
else
|
||||
local item = it.int_to_ip(i)
|
||||
if raw_list[item] then
|
||||
raw_list[item] = nil
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user