From b2f7fac10296d2e317862b2331c815231e97432f Mon Sep 17 00:00:00 2001 From: bol-van Date: Mon, 24 Nov 2025 15:40:48 +0300 Subject: [PATCH] fix missing update --- nfq2/helpers.c | 21 ++------------------- nfq2/helpers.h | 2 +- nfq2/lua.c | 15 +++++++++++++++ nfq2/lua.h | 1 + nfq2/nfqws.c | 6 ++++++ 5 files changed, 25 insertions(+), 20 deletions(-) diff --git a/nfq2/helpers.c b/nfq2/helpers.c index 45d6c3e..e2eff2e 100644 --- a/nfq2/helpers.c +++ b/nfq2/helpers.c @@ -417,26 +417,9 @@ bool parse_hex_str(const char *s, uint8_t *pbuf, size_t *size) } return true; } - -void fill_pattern(uint8_t *buf,size_t bufsize,const void *pattern,size_t patsize,size_t offset) +char hex_digit(uint8_t v) { - size_t size; - - if (offset%=patsize) - { - size = patsize-offset; - size = bufsize>size ? size : bufsize; - memcpy(buf,pattern+offset,size); - buf += size; - bufsize -= size; - } - while (bufsize) - { - size = bufsize>patsize ? patsize : bufsize; - memcpy(buf,pattern,size); - buf += size; - bufsize -= size; - } + return v<=9 ? '0'+v : (v<=0xF) ? v+'A'-0xA : '?'; } int fprint_localtime(FILE *F) diff --git a/nfq2/helpers.h b/nfq2/helpers.h index ad159ff..df65d27 100644 --- a/nfq2/helpers.h +++ b/nfq2/helpers.h @@ -65,7 +65,7 @@ uint64_t pntoh64(const uint8_t *p); void phton64(uint8_t *p, uint64_t v); bool parse_hex_str(const char *s, uint8_t *pbuf, size_t *size); -void fill_pattern(uint8_t *buf,size_t bufsize,const void *pattern,size_t patsize,size_t offset); +char hex_digit(uint8_t v); int fprint_localtime(FILE *F); diff --git a/nfq2/lua.c b/nfq2/lua.c index 2a46a2d..0144402 100644 --- a/nfq2/lua.c +++ b/nfq2/lua.c @@ -1,4 +1,5 @@ #include +#include #include "lua.h" #include "params.h" @@ -2331,6 +2332,20 @@ static bool lua_desync_functions_exist() return true; } +bool lua_test_init_script_files(void) +{ + struct str_list *str; + LIST_FOREACH(str, ¶ms.lua_init_scripts, next) + { + if (str->str[0]=='@' && !file_open_test(str->str+1, O_RDONLY)) + { + DLOG_ERR("LUA file '%s' not accessible\n",str->str+1); + return false; + } + } + return true; +} + static bool lua_init_scripts(void) { struct str_list *str; diff --git a/nfq2/lua.h b/nfq2/lua.h index 07b4a11..f7f2e66 100644 --- a/nfq2/lua.h +++ b/nfq2/lua.h @@ -28,6 +28,7 @@ #define LUA_STACK_GUARD_RETURN(L,N) LUA_STACK_GUARD_LEAVE(L,N); return N; +bool lua_test_init_script_files(void); bool lua_init(void); void lua_shutdown(void); void lua_dlog_error(void); diff --git a/nfq2/nfqws.c b/nfq2/nfqws.c index ac84923..29557e7 100644 --- a/nfq2/nfqws.c +++ b/nfq2/nfqws.c @@ -303,6 +303,8 @@ static int nfq_main(void) print_id(); if (params.droproot && !test_list_files()) goto err; + if (!lua_test_init_script_files()) + goto err; sec_harden(); @@ -461,6 +463,8 @@ static int dvt_main(void) print_id(); if (params.droproot && !test_list_files()) goto exiterr; + if (!lua_test_init_script_files()) + goto exiterr; if (!lua_init()) goto exiterr; @@ -2438,6 +2442,8 @@ int main(int argc, char **argv) if (!test_list_files()) exit_clean(1); + if (!lua_test_init_script_files()) + exit_clean(1); if (!LoadAllHostLists()) {