2097 Commits

Author SHA1 Message Date
Thomas Bernard
7b45ec940a
update changelog.
fixes #611
2022-08-06 11:27:35 +02:00
Thomas Bernard
b8d66c5f7c
pcpserver.c: rewrite DeletePCPMap() to work with netfilter_nft
try to fix #611
2022-07-01 07:15:36 +02:00
Thomas Bernard
16366f5db4 add debug logs in DeletePCPMap 2022-06-19 19:41:32 +02:00
Thomas Bernard
0cc037f8b0 update miniupnpd/Changelog.txt 2022-06-02 01:26:37 +02:00
Thomas Bernard
1cdf9ba744 Merge branch '529-port-triggering-openbsd'
fixes #529
2022-06-02 01:19:53 +02:00
Thomas Bernard
b734f94bdf pcpserver.c: improve DeletePCPMap() error message 2022-05-18 11:25:32 +02:00
Thomas Bernard
047fe367dd
miniupnpd: improve configure script for cross builds 2022-05-18 09:55:52 +02:00
Thomas Bernard
2ede47be46
pf/obsdrdr.c: better document PFRULE_INOUT_COUNTS and PF_NEWSTYLE 2022-05-18 08:34:16 +02:00
Thomas Bernard
a255df2488
Dont create nat rule for Port Triggering, but a pass rule
should fix #529
2022-05-18 08:32:42 +02:00
Thomas Bernard
6d59337a57 MS VS project: upnpc-shared.exe for exe using the .dll 2022-05-15 16:38:15 +02:00
Abdullah
9ae617b232
Fix capitalisation of GitHub (#608)
* Fixed capitalisation of GitHub
2022-05-06 09:18:23 +02:00
Thomas BERNARD
c6750f0bbe
Merge pull request #604 from Biswa96/cmake-mingw-static
cmake: Fix static library name in mingw
2022-04-21 00:26:41 +02:00
Thomas Bernard
a6ca2b14c5
miniupnpd/nftnldr.c: init local var in update_portmapping()
see https://github.com/miniupnp/miniupnp/pull/607
rhost is not currently in use, but it might be some day.
2022-04-21 00:19:45 +02:00
Biswapriyo Nath
9e99c44adb
cmake: Fix static library name in mingw
This corrects the static library name to libminiupnpc.a.
Otherwise 'lib' is prepended twice, like liblibminiupnpc.a.
2022-04-01 20:41:28 +05:30
Zahary Karadjov
689d1fdd04 Fix the build on NixOS
On NixOS, the lsb_release command returns strings such as "NixOS"
and "22.04" (with the quotes included). This leads to compilation
problems because the updateminiupnpcstrings.sh scripts ends up
creating a C file with the following content:

The fix is to simply strip the quotes from the lsb_release output.
2022-03-21 19:37:25 +02:00
Thomas Bernard
fda61180e0
iptpinhole.c: check inet_pton() return values 2022-03-19 18:50:58 +01:00
Thomas Bernard
51f185fd13
upnpc.c: use of @ to replace local lan address
example :
$ upnpc-static -a @ 9999 9999 TCP

fixes #532
2022-02-20 00:27:34 +01:00
Thomas Bernard
c8476e6f16
miniupnpd.init.d.script: support nftables
fixes #594
2022-02-19 23:49:18 +01:00
Thomas Bernard
89c6556338
miniupnpd/ipfw: make it clear it is not working under FreeBSD 2022-02-19 22:49:14 +01:00
Thomas Bernard
c0d3a17650
pf: Use private WAN IP for NAT in double NAT setups
fixes #598
2022-02-19 20:19:34 +01:00
Thomas Bernard
5231397bd6
update Changelog and comments about commit 9500253 2022-02-19 20:03:30 +01:00
Thomas BERNARD
9e042264fa
Merge pull request #599 from jow-/master
Expose `USE_GETIFADDRS` and tweak `getifaddr()` behaviour
2022-02-19 18:50:39 +01:00
Sergey Ponomarev
af812c8775
Refine LICENSE so github can understand it ;)
see #592
also replace project specific files to symbolic link
2022-02-19 18:38:48 +01:00
Jo-Philipp Wich
95002535b3 getifaddr.c: prefer non-reserved over reserved addresses in getifaddr()
When iterating interface addresses obtained via `getifaddrs()`, don't
stop at the first found IPv4 address but continue checking all IPv4
addresses and prefer to use a non-reserved one in case an interface
has both reserved (private) and non-reserved (public) addresses
assigned.

After this fix, miniupnpd on OpenWrt is able to properly detect the
external IP address of an external interface with both a private
RFC1918 and a public IP assigned regardless of whether `getifaddrs()`
happens to return the private or the public IPv4 address first.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-02-16 17:58:42 +01:00
Jo-Philipp Wich
a28dec3c2d configure: expose USE_GETIFADDRS configuration
The miniupnpd sources contain a working getifaddrs() based implementation
to fetch the IP address of an interface but that implementation is guarded
by a USE_GETIFADDRS define which can only be passed manually via CFLAGS.

Introduce a new `--getifaddrs` option to the configure script which can be
used to explicitly enable `getifaddrs()` usage.

Also extend the OpenWrt configuration case to enable `getifaddrs()` since
OpenWrt ships with a working implementation of it since several years
already.

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
2022-02-16 17:54:01 +01:00
Sergey Ponomarev
1479881003 minixml.c sync sources
In the commit a0573e251817ec090a8c9f9f41b56d720c835a6c
was fixed a buffer overflow in the minixml.c but it wasn't copied to upnpc-async.
To make comparison simpler the header was also synced
2022-01-27 11:29:16 +02:00
Thomas Bernard
9df2f43e08 miniupnpd: VERSION 2.3.0 2022-01-23 01:25:49 +01:00
Thomas Bernard
6576eb611b version 2.3.0 miniupnpd_2_3_0 2022-01-23 01:19:01 +01:00
Thomas Bernard
545d2b421c 2022 2022-01-23 01:18:49 +01:00
Thomas BERNARD
3f51c41ea2
Merge pull request #586 from f1sherman/a-few-nftables-fixes
A few nftables fixes :

    Spelling fix: routeing --> routing
    Fix typo where we're incorrectly checking for $TABLE instead of $NAT_TABLE in nft_removeall.sh
    Split NAT and TABLE everywhere for consistency
2022-01-22 19:30:10 +01:00
Thomas BERNARD
327c400e4f
Merge pull request #589 from scribam/winsock-deprecated-no-warnings
miniupnpc/cmake: add _WINSOCK_DEPRECATED_NO_WARNINGS definition
2022-01-22 18:01:25 +01:00
Thomas BERNARD
4509935d56
Merge pull request #587 from fanquake/mingw_pkg_config
mingw: add minimal pkg-config support
2022-01-22 17:55:33 +01:00
scribam
bcaee022a3 miniupnpc/cmake: add _WINSOCK_DEPRECATED_NO_WARNINGS definition 2022-01-04 19:32:39 +01:00
fanquake
1f46c250d9
doc: add windres to mingw *nix build command 2022-01-03 10:08:45 +08:00
fanquake
30630daa22
mingw: add minimal pkg-config support 2022-01-03 10:02:12 +08:00
Brian John
87776e8345 Split "NAT" and "TABLE" for consistency 2022-01-01 16:58:55 -06:00
Brian John
8d061ecf65 Fix typo: should check for $NAT_TABLE 2022-01-01 16:17:31 -06:00
Brian John
69f01ffcc8 Spelling fix: routeing --> routing 2022-01-01 16:15:54 -06:00
Thomas Bernard
78823d762e
README.md: updated. fix titles 2021-12-16 00:29:39 +01:00
Thomas Bernard
2bfed34e8c
README.md: reformat chain/tables setup
fix 3129683cb335fa8559928d4b8557248f3bc1bc51
2021-12-16 00:27:57 +01:00
Thomas Bernard
1a5cdc0a13 remove space before eol 2021-12-02 00:35:51 +01:00
Thomas Bernard
af0ee582d9
commonrdr.h: 2021 2021-12-02 00:06:24 +01:00
Thomas Bernard
97aa00f076
miniupnpd/Changelog.txt: update regarding #584 / 3129683c 2021-12-02 00:06:24 +01:00
Thomas Bernard
46ecef1365
miniupnpd.conf: default table name changed with #584 / 3129683c 2021-12-02 00:06:23 +01:00
Sven Auhagen
3129683cb3 NFTables use scripts to create tables and chains
To hardcode table and chain creation and deletion makes it impossible
for existing firewall infrastructures to integrate miniupnpd.
NFTables will either reevaluate packets through miniupnpd or
it will delete existing tables when there are already custom chains in it.

Signed-off-by: Sven Auhagen <sven.auhagen@voleatech.de>
2021-11-28 08:08:37 +01:00
Thomas Bernard
d4849fa08e
miniupnpd.conf: comments about netfilter table/chain names 2021-11-27 21:49:25 +01:00
Sven Auhagen
0b3f3e4029
NFTables make tables name configurable
Right now the table names are hardcoded and do not integrate with an overall
firewall strategy.
NFTables has restrictions on how packets are evaluated against chains.
For example if multiple forward chains are evaluated with different prioity,
all packets that pass the first one will be reevaluated again in the second chain.
To have an overall firewall concept with miniupnpd it is necessary to use existing
tables and hence to configure them in miniupnpd.

Signed-off-by: Sven Auhagen <sven.auhagen@voleatech.de>
2021-11-27 21:49:21 +01:00
Thomas Bernard
9eb826a7eb
miniupnpd/Changelog.txt: update regarding merge of #562
see https://github.com/miniupnp/miniupnp/pull/562
2021-11-17 12:37:02 +01:00
Thomas BERNARD
9a5215c54a
Merge pull request #562 from svenauhagen/feature/nftablesnat
NFTables use nat chain for inet (instead of specific IPv4 chain)
2021-11-17 12:36:19 +01:00
Thomas Bernard
dc7dd30a0c pymoduletest.py: migrate to python 3 2021-11-09 19:56:15 +01:00