From ae9592c71f9523fc0f73ecd57b404220220dbc9a Mon Sep 17 00:00:00 2001 From: Vadim Vetrov Date: Sun, 27 Oct 2024 00:09:45 +0300 Subject: [PATCH] Userspace: handle --no-ipv6 for PF_INET6 UNBIND/BIND_PF --- youtubeUnblock.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/youtubeUnblock.c b/youtubeUnblock.c index 5733d8d..75274e8 100644 --- a/youtubeUnblock.c +++ b/youtubeUnblock.c @@ -497,20 +497,22 @@ int init_queue(int queue_num) { goto die; } - nlh = nfq_nlmsg_put(buf, NFQNL_MSG_CONFIG, queue_num); - nfq_nlmsg_cfg_put_cmd(nlh, PF_INET6, NFQNL_CFG_CMD_PF_UNBIND); + if (config.use_ipv6) { + nlh = nfq_nlmsg_put(buf, NFQNL_MSG_CONFIG, queue_num); + nfq_nlmsg_cfg_put_cmd(nlh, PF_INET6, NFQNL_CFG_CMD_PF_UNBIND); - if (mnl_socket_sendto(nl, nlh, nlh->nlmsg_len) < 0) { - perror("mnl_socket_send"); - goto die; - } + if (mnl_socket_sendto(nl, nlh, nlh->nlmsg_len) < 0) { + perror("mnl_socket_send"); + goto die; + } - nlh = nfq_nlmsg_put(buf, NFQNL_MSG_CONFIG, queue_num); - nfq_nlmsg_cfg_put_cmd(nlh, PF_INET6, NFQNL_CFG_CMD_PF_BIND); + nlh = nfq_nlmsg_put(buf, NFQNL_MSG_CONFIG, queue_num); + nfq_nlmsg_cfg_put_cmd(nlh, PF_INET6, NFQNL_CFG_CMD_PF_BIND); - if (mnl_socket_sendto(nl, nlh, nlh->nlmsg_len) < 0) { - perror("mnl_socket_send"); - goto die; + if (mnl_socket_sendto(nl, nlh, nlh->nlmsg_len) < 0) { + perror("mnl_socket_send"); + goto die; + } } /* End of support for kernel versions < 3.8 */