From 3d567b0ac48f625988bfa6200d09ea05628e981b Mon Sep 17 00:00:00 2001 From: bol-van Date: Sun, 22 Feb 2026 17:32:49 +0300 Subject: [PATCH] nfqws: optimize nfq buffers --- nfq/nfqws.c | 4 +++- nfq/params.h | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/nfq/nfqws.c b/nfq/nfqws.c index 022a32f4..9d3b7952 100644 --- a/nfq/nfqws.c +++ b/nfq/nfqws.c @@ -256,6 +256,8 @@ static bool nfq_init(struct nfq_handle **h, struct nfq_q_handle **qh) // dot not fail. not supported on old linuxes <3.6 } + nfnl_rcvbufsiz(nfq_nfnlh(*h), Q_RCVBUF); + DLOG_CONDUP("initializing raw sockets bind-fix4=%u bind-fix6=%u\n", params.bind_fix4, params.bind_fix6); if (!rawsend_preinit(params.bind_fix4, params.bind_fix6)) goto exiterr; @@ -350,7 +352,7 @@ static int nfq_main(void) if (rd) { int r = nfq_handle_packet(h, (char *)buf, (int)rd); - if (r) DLOG_ERR("nfq_handle_packet error %d\n", r); + if (r<0) DLOG_ERR("nfq_handle_packet result %d, errno %d : %s\n", r, errno, strerror(errno)); } else DLOG("recv from nfq returned 0 !\n"); diff --git a/nfq/params.h b/nfq/params.h index 0d30055c..b1d5bbe5 100644 --- a/nfq/params.h +++ b/nfq/params.h @@ -23,7 +23,8 @@ #define RAW_SNDBUF (64*1024) // in bytes -#define Q_MAXLEN 1024 // in packets +#define Q_MAXLEN 4986 // in packets +#define Q_RCVBUF (1024*1024) // in bytes #define BADSEQ_INCREMENT_DEFAULT -10000 #define BADSEQ_ACK_INCREMENT_DEFAULT -66000