Commit Graph

1964 Commits

Author SHA1 Message Date
Thomas Bernard 474658716f
miniupnpc: update Changelog.txt
regarding bfbe42d392
2021-01-04 01:17:50 +01:00
Thomas Bernard 184ed52069
upnpc.c: fix SetRedirectAndTest() args. 2021-01-04 01:16:02 +01:00
Pali Rohár bfbe42d392 miniupnpc: Fix usage of IP_MULTICAST_IF with struct ip_mreqn
When struct ip_mreqn is passed to IP_MULTICAST_IF setsockopt option it is
always required to set also ipv4 source address. Otherwise Linux kernel
will choose default system multicast ipv4 address which does not have to
belong to chosen interface specified in struct ip_mreqn.

Therefore on system with more multicast interfaces and more ipv4 addresses,
it may happen that interface chosen by upnpc -m option would use ipv4
address which does not belong to this interface.

This change is fixing above issue and ensure that if interface is chosen by
upnpc -m option then source address which belongs to this interface would
be used.

Without this change upnpc -m eth1 can send multicast traffic over interface
eth1 but with source ipv4 address of interface eth0, which obviously would
be rejected by upnp gateway.
2021-01-04 00:29:58 +01:00
Pali Rohár 36a6913970 miniupnpc: Add missing checks for if_nametoindex() return value
if_nametoindex() returns zero value on failure. Add missing error handling.
2020-12-30 13:41:20 +01:00
Pali Rohár 0d5b416e05 miniupnpc: Fix checking for inet_pton() errors
inet_pton() indicates error by zero or negative return value.
2020-12-30 13:39:36 +01:00
Pali Rohár e6bf74a691 Add check that miniupnpd is not going to listen on WAN interface with public IP address
Option listen= is used for LAN interface/address and option ext_addr= is
used for public IP address. If users by mistake swap WAN and LAN interface
or public and private IP addresses then miniupnpd obviously would not work
and instead of hacking miniupnpd code users should rather check their
miniupnpd configuration or local firewall settings.

So add checks and hints which prevents security issues like swapping LAN
and WAN interfaces/addresses and therefore prevent exposing port forwarding
and firewall configuration on public Internet.
2020-12-30 11:23:29 +01:00
Pali Rohár 304ff79dc5 Update and extend description from STUN output
People sometimes do not understand where is the problem, so include also
hints what they needs to check, change and re-configure.
2020-12-30 11:22:12 +01:00
Thomas Bernard 9ef311d235
miniupnpd: version 2.2.1 2020-12-20 19:12:47 +01:00
Thomas Bernard 544e6fcc73
miniupnpc: version 2.2.1 2020-12-20 19:11:18 +01:00
Pali Rohár 49a715df6e Fix compilation on Travis, add missing WINDRES 2020-12-12 12:41:37 +01:00
Pali Rohár 610ef8d936 Fix syntax error in Travis YAML file
Travis YAML file cannot be currently parsed and therefore Travis was not started, see:
https://travis-ci.org/github/miniupnp/miniupnp/requests
2020-12-12 01:20:48 +01:00
Tim Gates 341d0f51a2
docs: fix simple typo, decription -> description
There is a small typo in miniupnpd/commonrdr.h, miniupnpd/ipf/ipfrdr.c, miniupnpd/pf/obsdrdr.c.

Should read `description` rather than `decription`.
2020-12-10 05:26:04 +11:00
Thomas Bernard ba130320f4
.gitignore: wingenminiupnpcstrings 2020-11-30 01:59:15 +01:00
Thomas Bernard ca4e0342bf
genminiupnpcstrings.vbs: generates rc_version.h as well
see #512
2020-11-30 01:55:06 +01:00
Thomas Bernard b28462b62a
wingenminiupnpcstrings also generates rc_version.h 2020-11-30 01:48:15 +01:00
Thomas Bernard f04dbafe09
mingw32: build resources for .dll 2020-11-30 01:21:26 +01:00
Stanislas Dolcini 44dd54051c Add RC file 2020-11-28 11:49:59 +01:00
Cristian Morales Vega 677e0db636 Install cmake config file
miniupnpc::miniupnpc becomes an ALIAS for the shared library, if
available, and the static library otherwise.
Users of the installed library can use MINIUPNPC_USE_STATIC_LIBS to
force the use of the static library.
2020-11-27 18:49:51 +00:00
Thomas Bernard 5b5ce9e49e Merge remote-tracking branch 'RedDwarf69/stuff' into master 2020-11-27 19:08:35 +01:00
Thomas Bernard 5652a191e9 Merge remote-tracking branch 'RedDwarf69/gnuinstalldirs' into master 2020-11-27 19:01:31 +01:00
Thomas Bernard 7a7680a3a1
test cmake build 2020-11-27 18:57:09 +01:00
Cristian Morales Vega f1f8ae3659 cmake: use GNUInstallDirs 2020-11-25 11:09:21 +00:00
Cristian Morales Vega efcc616110 cmake: remove wrong target_include_directories() 2020-11-24 16:37:35 +00:00
Thomas Bernard ae5e8fa9af Merge remote-tracking branch 'RedDwarf69/pkgconfig' into master 2020-11-23 18:30:18 +01:00
Cristian Morales Vega ed989c3fa2 miniupnpc.pc: remove "miniupnpc" from includedir 2020-11-22 19:51:57 +00:00
Cristian Morales Vega 876109c890 cmake: update version 2020-11-22 19:31:42 +00:00
Thomas Bernard 22c1386351
protocol[] can be "UDPLITE"
fixes #5034
2020-11-12 08:59:47 +01:00
Thomas BERNARD 79858f9ec3
Update SECURITY.md
miniupnpc 2.2.0
2020-11-11 16:11:09 +01:00
Thomas Bernard f50f00b5ea
errno.h not sys/errno.h 2020-11-11 13:24:48 +01:00
Thomas Bernard ab544c3a0e
asyncsendto.c: use named enum.
see #502
2020-11-11 13:16:14 +01:00
Thomas Bernard 9793607a76
miniupnpc version 2.2.0 2020-11-09 20:52:52 +01:00
Thomas Bernard 82e874ada9
remove build warning.
PortMappingNumberOfEntries is supposed to be limited to 65536

should fix #501
2020-11-09 20:38:45 +01:00
Thomas Bernard 30c27967ae
fix error message for IPV6. 2020 2020-11-05 21:59:25 +01:00
Thomas Bernard c77845f489
fix artifact name 2020-11-05 13:39:45 +01:00
Thomas Bernard 232de80a7a fix github workflows 2020-11-05 13:33:54 +01:00
Thomas Bernard 1756c9259a
github workflows: try to upload win32 binaries 2020-11-05 13:24:59 +01:00
Thomas Bernard f2485c5a6b
codeQL 2020-11-05 12:52:11 +01:00
Thomas Bernard a7c00ae3b6 CodeQL 2020-11-05 00:41:42 +01:00
Thomas BERNARD 05e29634eb
Create codeql-analysis.yml 2020-11-05 00:37:26 +01:00
Thomas BERNARD 0d6d30a1ee
Create SECURITY.md
with link to my GPG key
2020-11-05 00:36:08 +01:00
Thomas Bernard b5dd189c1b play with github workflows (2nd attempt;) 2020-11-05 00:27:00 +01:00
Thomas Bernard 2abdcd7173 play with github workflows 2020-11-05 00:24:34 +01:00
Thomas Bernard 39f531bbd6 Merge remote-tracking branch 'pali/master' 2020-11-05 00:15:08 +01:00
Thomas Bernard 88ecab2010 fix typo 2020-11-05 00:10:56 +01:00
Thomas Bernard 6ecbfa813d try to fix github workflows 2020-11-05 00:09:22 +01:00
Thomas Bernard 552c6c7297 build for both iptables and nftables 2020-11-05 00:03:54 +01:00
Thomas Bernard 168036c9ae add job for building win32 version 2020-11-05 00:03:17 +01:00
Pali Rohár d60349a9b1 Add different mingw cross-compile builds via Makefile.mingw for Travis CI
Include also build via i586-mingw32msvc-gcc cross compiler.
2020-11-05 00:01:04 +01:00
Pali Rohár 26e8f7831a Use GetBestInterface() instead of GetBestInterfaceEx()
GetBestInterfaceEx() is not supported by older i586-mingw32msvc-gcc
compiler. GetBestInterface() works only with IPv4 addresses but in this
case it is enough as it is needed only for IP address 223.255.255.255.
2020-11-04 23:59:03 +01:00
Pali Rohár 23f492fd1b Fix compilation when _WIN32_WINNT_VISTA macro is not defined
Older version of i586-mingw32msvc-gcc compiler does not define
_WIN32_WINNT_VISTA macro. Therefore preprocessor #if condition is
incorrectly evaluated.
2020-11-04 23:57:43 +01:00