1132 Commits

Author SHA1 Message Date
Paul Chambers
ed9ef746a0 Distinguish between iptables and nftables in genconfig.sh, adding USE_IPTABLES or USE_NFTABLES defines. 2019-09-24 11:57:39 +02:00
Thomas Bernard
81e0d83403 build doc with Doxygen 2019-09-24 11:57:27 +02:00
Paul Chambers
8a56bb50cf add 'dox' make target for nftables, which generates docs using doxygen. Also modify the uuid in the installed copy of miniupnpd.conf, not the pristine local copy that is under revision control. 2019-09-17 18:22:11 -07:00
Thomas Bernard
dec239d340
pfpinhole.c: fix includes 2019-09-02 02:03:41 +02:00
Thomas Bernard
5ab641e9e6
update Changelog 2019-09-02 01:01:43 +02:00
Thomas Bernard
d1d7059e75 fix file modes for nft_display.sh (chmod +x) 2019-09-02 00:57:49 +02:00
Guilherme Senges
62d62e4f88 Applied patch to OpenWRT compatibility 2019-09-02 00:28:45 +02:00
Paul Chambers
f24ca07640 Fix the error messages produced by nft_init.sh in normal operation. Simplify the script. 2019-08-31 23:22:30 -07:00
Paul Chambers
60b57a442a Rework nft_removeall.sh to preserve nftables structures miniupnpd didn't add. Important for firewalld and sshguard co-existance. 2019-08-31 20:47:11 -07:00
Thomas Bernard
6317e73342 iptpinhole.c: fix ressource leak in ip6tc_init_verify_append()
fixes #393
2019-08-24 10:55:33 +02:00
Thomas Bernard
a77d1ff9d3
iptcrdr.c: memory allocation fix in get_portmappings_in_range()
fixes #394
2019-08-24 10:54:46 +02:00
Thomas Bernard
4f8a4abcd1
nftnlrdr: list_redirect_rule() only in DEBUG 2019-06-30 22:23:36 +02:00
Thomas Bernard
4e480a7c4e nftnlrdr_misc.c: use syslog() instead of perror()
do not exit()
2019-06-30 22:02:15 +02:00
Thomas Bernard
9402b49456
update headers 2019-06-30 21:51:15 +02:00
Thomas Bernard
d8368f7651
test_nfct_get.c: openlog() 2019-06-30 21:50:55 +02:00
Thomas Bernard
9070e175d4 Merge remote-tracking branch 'svenauhagen/fixes/nftablesipv6' 2019-06-30 21:25:01 +02:00
Sven Auhagen
b377305db0 This commits fixes an error setting the NFT Chain in DNAT instead of Filter 2019-06-30 19:46:35 +02:00
Sven Auhagen
b581b5d8af pinhole fixes 2019-06-28 11:02:19 +02:00
Thomas Bernard
3cf6efa912
miniupnpd/Changelog.txt update 2019-06-25 23:30:12 +02:00
Sven Auhagen
f67f6ae5f0 NFTables fixes and scripts
This commit fixes the list detection and uses the inet chain for ipv4.
The scripts got reworked as well and a display script was added.
2019-06-25 09:44:51 +02:00
sven
ee84a3949d Update nftnlrdr_misc.h
Fix compiler warnings
2019-06-13 21:34:52 +02:00
Sven Auhagen
00ff23c428 This commit fixes IPv4 and adds IPv6 pinhole to nftables.
Signed-off-by: Sven Auhagen <sven.auhagen@voleatech.de>
2019-06-12 23:09:20 +02:00
Thomas Bernard
765156b04a nftnlrdr.c: fix indent and spaces before eol 2019-06-04 23:02:52 +02:00
Thomas Bernard
a1ceec3dba
miniupnpd: Allow to use two different network interfaces for IPv4 and IPv6 internet
-i / -I
ext_ifname= / ext_ifname6=

see :
df906367be/
thanks to "sfstudio"
2019-05-21 10:42:40 +02:00
Thomas Bernard
f89d01d06a
silent warning in GCC 7 (switch/case fallthrough) 2019-05-20 21:59:41 +02:00
Thomas Bernard
585a1d64e2
getifaddr.c: properly use strncpy()
silent a gcc8 warning
2019-05-20 21:55:17 +02:00
Vladislav Grishenko
08b80d5abd miniupnpd: fix ssdp notify on unrelated interfaces
If several different interfaces share same ipv4 address on different
subnets (i.e. eth0 192.168.1.1/24 + eth1 192.168.1.1/16), miniupnpd
may pick any one of them, possibly wrong one w/o respecting exact
listening_ip interface.

syslog will contain something similar to:
    miniupnpd: sendto(udp_notify=6, 192.168.1.1): No such device
    miniupnpd: sendto(udp_notify=6, 192.168.1.1): No such device
    miniupnpd: try_sendto(sock=6, len=464, dest=239.255.255.250:1900): sendto: No such device
    miniupnpd: try_sendto(sock=6, len=464, dest=239.255.255.250:1900): sendto: No such device
    miniupnpd: try_sendto failed to send 11 packets

Fix that with specifying exact outgoing mcast interface for each
notify socket with help of IP_MULTICAST_IF/mreqn struct.
Since OpenAndConfSSDPNotifySocket() now takes lan_addr_s struct,
OpenAndConfSSDPNotifySocketIPv6() was similary changed for api
consistency.
2019-05-02 15:36:06 +05:00
Thomas Bernard
2ffc7afae9 minissdp.c: fix indentation 2019-05-02 12:09:28 +02:00
Thomas Bernard
1ef1deec01
upnpevents.c: properly handle urls in the form http://ip:port
Fix buffer over-read in upnpevents.c with urls in the form http://ip:port
(without path).
Assume / when the path is empty

fixes #361
2019-04-09 22:06:21 +02:00
Thomas Bernard
922372bff3 2019 2019-04-08 14:46:11 +02:00
Thomas Bernard
2f16cf7387
AddPortMapping supports error 606 in IGDv2
see #359
2019-04-07 23:01:51 +02:00
Thomas Bernard
e1b4f25bba
upnpreplyparse.c: Fix memory leak
If there are multiple  NewPortListing tags,
there is a malloc() for each one.

fixes #357
2019-04-05 10:30:10 +02:00
Thomas Bernard
a9a764cea9 update Changlogs. 2019-04-03 17:38:33 +02:00
Thomas Bernard
8f403ae8ae Makefile.linux: clean testminissdp.o and testssdppktgen.o 2019-03-22 15:36:58 +01:00
Thomas Bernard
2d873ce908 miniupnpd_functions.sh parsing fix.
both MINIUPNPD and MINIUPNPD-PREROUTING were matched by
/$CHAIN/.
2019-03-22 15:35:23 +01:00
Thomas Bernard
476974ab52 use iptables -I instead of -A to add rules
So the rules are added at the head of the chains, taking
priority over the preloaded rules.

should fix #354
2019-03-22 15:33:57 +01:00
Thomas Bernard
c3f752db4a
miniupnpd/netfilter: fix iptables_init.sh for postrouting chain
should fix #334
2019-03-09 16:16:00 +01:00
Steven Mestdagh
dedbee16b1 AddAnyPortMapping: check against NULL
this avoids a crash in strcasecmp by passing an empty protocol argument
2019-03-09 10:24:38 +01:00
Thomas Bernard
a613992892 update Changelog 2019-03-07 23:37:11 +01:00
Rodrigo Osorio
e0ddc97997 Update portinuse code to reflect changes made in FreeBSD 12.0
Structures xtcpcb and xinpcb returned by the kernel
hide now part of its members after r315662. The fix
was inspired by changes made in usr.bin/systat/netstat.c
tool.
2019-03-07 17:22:36 +01:00
Thomas Bernard
e0b5b4efe6 linux/getifstats.c: use custom strtoul() implementation to roll over after 2^32-1
fixes #349

http://upnp.org/specs/gw/UPnP-gw-WANCommonInterfaceConfig-v1-Service.pdf
 2.2.9 2.2.10 2.2.11 2.2.12 :

    This variable represents the cumulative counter for total number
    of bytes sent upstream across all connection service instances on
    WANDevice. The count rolls over to 0 after it reaching the maximum
    value (2^32) –1
2019-02-12 15:10:49 +01:00
Thomas Bernard
08e955de40 Update Changelogs + 2019 2019-02-10 16:11:16 +01:00
Thomas Bernard
30a89be85e
update miniupnpd/minixml.h 2019-02-10 16:10:07 +01:00
Thomas Bernard
e94a724ae5 Merge remote-tracking branch 'sorz/install-nft-script'
see pull request #345
2019-02-04 19:39:35 +01:00
Shachar Menashe
51b5e09e04 miniupnpd: add secure compilation flags for Linux 2019-02-04 17:23:42 +02:00
Thomas Bernard
f7d65cdaad
miniupnpd/netfilter/ipctcrdr.c: conditionnaly use NFC_UNKNOWN as well
fix #346
2019-02-03 19:04:44 +01:00
Thomas Bernard
6106111972
miniupnpd/netfilter: build with linux kernel 5.0
should fix #346
2019-02-03 13:26:27 +01:00
Thomas Bernard
510a6e9630
fix check of valid HTTPS socket 2019-01-23 09:25:10 +01:00
sorz
031915f856
Install nftables scripts 2019-01-18 16:21:25 +08:00
Thomas Bernard
86030db849
fix error from commit 13585f15c7f7dc28bbbba1661efb280d530d114c 2018-12-18 23:47:54 +01:00