Commit Graph

2083 Commits

Author SHA1 Message Date
Pali Rohár c8883e8491 miniupnpc: Fix compile warning: comparison between signed and unsigned
receivedata.c: In function ‘receivedata’:
receivedata.c:66: warning: comparison between signed and unsigned

Macro ISINVALID needs to be defined via INVALID_SOCKET on all WIN32 targets, not only for MSVC.
2021-01-27 13:12:24 +01:00
Pali Rohár d693584fdb miniupnpc: Fix compile warning: unused parameter
receivedata.c: In function ‘receivedata’:
receivedata.c:35:41: warning: unused parameter ‘scope_id’ [-Wunused-parameter]
             int timeout, unsigned int * scope_id)
                          ~~~~~~~~~~~~~~~^~~~~~~~
2021-01-27 13:10:49 +01:00
Pali Rohár e768e1555e miniupnpc: Fix compile warning: unused parameter
miniupnpc.c: In function ‘upnpDiscoverDevices’:
miniupnpc.c:270:34: warning: unused parameter ‘minissdpdsock’ [-Wunused-parameter]
                     const char * minissdpdsock, int localport,
                     ~~~~~~~~~~~~~^~~~~~~~~~~~~
2021-01-27 13:10:03 +01:00
Thomas Bernard 36cc66edda Visual Studio : define INTERNAL_NAME
fixes #522
2021-01-23 00:05:38 +01:00
pastdue 1d38b37732 Fallback for earlier Apple platforms that lack clock_gettime 2021-01-15 17:15:54 -05:00
Thomas Bernard 71830c711a
show version
fixes #503
2021-01-15 20:25:03 +01:00
Thomas Bernard 2adcf3f432
miniupnpcmodule.c: throw an exception in UPnP_discover()
fixes #521
2021-01-15 20:21:02 +01:00
Thomas Bernard ef03e1bc21 Add submit_to_minissdpd.py 2021-01-15 20:01:28 +01:00
Sander Jonkers 0ac25c1a92 Comment: module, and MiniSSDPd reference 2021-01-15 19:58:57 +01:00
Sander Jonkers 1ae60f2a6c codelength() now also accepts ASCII strings 2021-01-15 19:58:57 +01:00
Sander Jonkers 475dc0a902 PEP8: Function names should be snake_case
universal naming for module and function: submit_to_minissdpd
2021-01-15 19:58:53 +01:00
Sander Jonkers 884f17c8db rc and message. __name__ check, so usable as module 2021-01-15 19:52:58 +01:00
Sander Jonkers f1ba1a6adb black-formatting 2021-01-15 19:51:06 +01:00
Thomas Bernard 207d1849e4 miniupnpd.c: typo and ip -> IP 2021-01-15 19:33:29 +01:00
Thomas Bernard 4540d160d9
merge remote-tracking branch 'pali/master' into master 2021-01-12 01:12:42 +01:00
Thomas Bernard f8b45ab854
fix encoding of length > 128 2021-01-12 01:10:05 +01:00
Thomas Bernard 6ce08c5871 python3 2021-01-12 01:01:28 +01:00
Thomas Bernard 7fc8d3268d igonre vim files 2021-01-07 19:43:54 +01:00
Thomas Bernard b24d44c7f5
minissdpd: sample code in Python 2021-01-07 19:43:31 +01:00
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