Commit Graph

2077 Commits

Author SHA1 Message Date
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 a0573e2518
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 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 3129683cb3
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
Thomas Bernard f1dc690c3d
pythonmodule: allow to specify root desc url as selectigd() argument
fixes #571
2021-11-09 19:55:22 +01:00
Stijn Tintel 51a422407b miniupnpd/configure: don't hardcode iptables
The OpenWrt Makefile that builds miniupnpd passes the firewall argument
to the configure script, so this is not needed and it is blocking us
from using nftables instead, which will be the default backend for
firewall4 to be used in the next OpenWrt stable release.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2021-11-07 20:24:29 +02:00
Stijn Tintel 2b00c461fb treewide: s/OpenWRT/OpenWrt/
The correct spelling is OpenWrt.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2021-11-07 20:21:25 +02:00
Thomas Bernard c914193a05
minissdpd.c: use getopt() to parse argc/argv
fixes #576
2021-11-05 00:29:59 +01:00
Thomas Bernard f91824c270
minissdpd.c: fix usage messages
fixes #575
2021-11-05 00:08:42 +01:00
Thomas Bernard d0fb9577fb
getifaddr.c: Fix mask for RFC7534 Direct Delegation AS112 Service
see commit dbb821a7c9
2021-11-05 00:08:08 +01:00
Thomas Bernard b44fd0b861
asyncsendto.c: use named enum.
from ab544c3a0e
see #502
2021-11-05 00:07:10 +01:00
Thomas Bernard 861f95c634 2021 and https 2021-11-05 00:06:21 +01:00
Thomas Bernard 1b109f1892 Changelog.txt: fix date 2021-11-05 00:04:36 +01:00
Thomas BERNARD 77876aea5f
Merge pull request #555 from SpaceIm/fix/cmake-cross-build-ios
CMake: fix cross-build to iOS/tvOS/watchOS
2021-10-17 10:42:35 +02:00
Thomas Bernard 7634920f3c
Makefile.linux_nft: fix DEPFLAGS and make install 2021-09-30 23:20:52 +02:00
Thomas Bernard a933c76be4
Makefile.linux: fix install dependencies 2021-09-30 23:20:25 +02:00
Thomas Bernard 5eecb80cd2
minissdpd/Makefile: use DESTDIR / PREFIX in make install
make it consistent with miniupnpc Makefile
2021-09-30 23:12:33 +02:00
Thomas Bernard c5e08bed57
github workflows: test make install 2021-09-30 23:08:23 +02:00
Thomas Bernard b7186a76a0
.gitlab-ci.yml: test make install 2021-09-30 23:00:17 +02:00
Thomas Bernard edb8f84d57
.gitlab-ci.yml: rename jobs to shorter names 2021-09-30 23:00:17 +02:00
heitbaum f82b0563a7 miniupnpc/CMakeLists.txt: fix install for headers 2021-10-01 00:00:27 +10:00
Thomas Bernard 3f35ce505e
.gitlab-ci.yml: split miniupnpd job in two
add " || exit 1" to each line
2021-09-30 01:49:44 +02:00
Thomas Bernard a2c9bc29cb
gitlab-ci.yml: iptables-dev => libip4tc-dev libip6tc-dev libiptc-dev libxtables-dev
also add iproute2
2021-09-30 01:49:31 +02:00
Thomas Bernard 8c243bde83
.gitlab-ci: one before_script per job 2021-09-30 01:49:31 +02:00