Commit Graph

1226 Commits

Author SHA1 Message Date
Thomas Bernard 4b0ff229d8
default to /etc/miniupnpd/miniupnpd.conf under linux
it is still /etc/miniupnpd.conf under BSD.

closes #695
2024-01-17 00:49:32 +01:00
Thomas Bernard 604ca0b82a Changelog.txt: update (2024/01/15) 2024-01-15 01:02:08 +01:00
Thomas Bernard bbe7d1355e minissdp.c: 2024 2024-01-15 01:01:16 +01:00
Thomas Bernard b8d9f66890 miniupnpd.c: 2024 2024-01-15 00:59:33 +01:00
Thomas Bernard 8f53b12f81 upnphttp.c: 2024 2024-01-15 00:54:13 +01:00
Thomas Bernard bfd51459fe pfpinhole.c: 2024 2024-01-15 00:50:55 +01:00
Thomas Bernard 53d4cdd2da
CACHE-CONTROL: max-age=1800 in M-SEARCH response
to be compliant with UPnP UDA 1.0, 1.1 and 2.0

fixes #698

UDA 1.0 1.2.3 Discovery: Search: Response (p21) :
CACHE-CONTROL
Required. Must have max-age directive that specifies number of seconds
the advertisement is valid. After this duration, control points should
assume the device (or service) is no longer available. Should be greater
than or equal to 1800 seconds (30 minutes), although exceptions are defined
in the text above. Specified by UPnP vendor. Integer.

UDA 1.1 1.3.3 Search response (p34) :
CACHE-CONTROL
REQUIRED. Field value MUST have the max-age directive (“max-age=”) followed
by an integer that specifies the number of seconds the advertisement
is valid. After this duration, control points SHOULD assume the device
(or service) is no longer available; as long as a control point has
received at least one advertisement that is still valid from a root
device, any of its embedded devices or any of its services, then the
control point can assume that all are available. The number of seconds
SHOULD be greater than or equal to 1800 seconds (30 minutes), although
exceptions are defined in the text above. Specified by UPnP vendor.
Other directives MUST NOT be sent and MUST be ignored when received.

UDA 2.0 1.3.3 Search response (p40) :
CACHE-CONTROL
Required. Field value shall have the max-age directive (“max-age=”) followed
by an integer that specifies the number of seconds the advertisement
is valid. After this duration, control points should assume the device
(or service) is no longer available; as long as a control point has
received at least one advertisement that is still valid from a root
device, any of its embedded devices or any of its services, then the
control point can assume that all are available. The number of seconds
should be greater than or equal to 1800 seconds (30 minutes), although
exceptions are defined in the text above. Specified by UPnP vendor.
Other directives shall not be sent and shall be ignored when received.
2024-01-15 00:15:32 +01:00
Self-Hosting-Group 30baf316b4
miniupnpd: Fix UPnP UDA 1.1 subscribe timeout compliance
SHOULD be greater than or equal to 1800 seconds (30 minutes).
http://upnp.org/specs/arch/UPnP-arch-DeviceArchitecture-v1.1.pdf
4.1.2 p91.

see https://github.com/miniupnp/miniupnp/pull/686
2024-01-14 17:49:50 +01:00
Thomas Bernard e98515ac5e
miniupnpd.conf: document pcp_allow_thirdparty option
this option was introduced by c801138c63

fixes #679
2024-01-08 00:27:00 +01:00
Thomas Bernard aefebb18cb
miniupnpd.c: fix enforcing min_lifetime minimum of 120secs 2024-01-08 00:24:07 +01:00
Thomas Bernard e0fd153469
Changelog.txt: Fix for OpenBSD 7.4
see #674 (and #676)
2024-01-07 01:25:57 +01:00
Thomas Bernard 0a8224d2fe Merge branch 'pull-request-674'
see #674
2024-01-07 01:24:05 +01:00
Thomas Bernard 0206bc0051 obsdrdr.c: fixes to 6e8b02b715
two missing `break` statements, a missed goto and a missed return -1
see https://github.com/miniupnp/miniupnp/pull/674#issuecomment-1877957466
2024-01-06 20:12:17 +01:00
Self-Hosting-Group c91689cfcd Use the HTTPS-enabled URL of the project website and a small update to
the Python client library description.
2024-01-04 15:09:42 +01:00
Thomas Bernard 1e608d8fd5
Deny secure mode violation with 606 action not authorized if supported
606 was added in IGDv2.

closes #677
2024-01-04 02:36:38 +01:00
Self-Hosting-Group d995a37598 correct 501, 715 and 716 error descriptions 2024-01-04 02:30:35 +01:00
Thomas Bernard f22a96b469 miniupnpd version 2.3.4 2024-01-04 01:54:52 +01:00
Thomas Bernard d135bd3f6d
move definition of release_ticket() to rtickets.h 2023-12-30 00:30:06 +01:00
Thomas Bernard 6e8b02b715
obsdrdr.c: replace a few goto by break
see https://github.com/miniupnp/miniupnp/pull/674
2023-12-30 00:23:30 +01:00
Thomas Bernard ee89fb5fa3
obsdrdr.c: check errors of inet_ntop() 2023-12-29 23:59:28 +01:00
Thomas Bernard 5380a08693
upnpsoap.c: fix ExecuteSoapAction
do not use strchr() to locate the " character at the end of the
string.

fixes #675
2023-12-29 18:24:50 +01:00
Thomas Bernard 84cd9e6289
upnpsoap.c: ExecuteSoapAction() use memchr() instead of strchr() 2023-12-29 18:22:38 +01:00
Michael Nickerson b16787cd5f Fix for OpenBSD 7.4
Fixes a change made in OpenBSD 7.4
2023-12-07 19:12:11 -05:00
Thomas Bernard 096478dce1 fix getifaddr() error case
see #670
2023-11-14 21:15:58 +01:00
yangfl 2c0c73a081 Quote paths in nft scripts to prevent word splitting. 2023-08-07 05:30:41 +08:00
Thomas Bernard 46bcbff321 Do not advertise DeviceProtection if it is disabled 2023-06-29 11:36:49 +02:00
Thomas Bernard e8f8208e24
miniupnpd: Disable DeviceProtection service by default 2023-06-29 02:08:02 +02:00
Thomas Bernard a1ade4532e
fix get_portmappings_in_range() 2023-06-27 01:50:31 +02:00
Thomas Bernard ad3a610748 error 709 = NoTrafficReceived 2023-06-27 01:12:20 +02:00
Thomas Bernard 3a6feb49c0
configure: http => https 2023-06-27 01:00:07 +02:00
Thomas Bernard 8381867faf
Detect FDSSDP as a microsoft client
fixes 2f2685af97
so FDSSDP.dll (Function Discovery Simple Service Discovery Protocol)
client is properly detected.
2023-06-23 01:08:06 +02:00
Thomas Bernard 2ffaaba012 upnppermissions.c: fix compilation when DEBUG is defined 2023-06-12 00:04:56 +02:00
Thomas Bernard f91a32ff02
miniupnpd: enable secure mode by default 2023-05-27 18:42:18 +02:00
Thomas Bernard 19aa26df7e
miniupnpd: add a short list of build-time options in --version output 2023-05-27 11:56:19 +02:00
Thomas Bernard 37c29a3716 miniupnpd: mention PCP in usage 2023-05-27 11:26:45 +02:00
Thomas Bernard 66c4921758
miniupnpd.conf: comments improvement 2023-05-27 11:24:03 +02:00
Thomas Bernard 02da7055fc
option enable_natpmp => enable_pcp_pmp
for backward compatibility, enable_natpmp is stick recognized
2023-05-27 11:21:21 +02:00
Thomas Bernard ab57f7ca3a
miniupnpd.c: improve comments about SETFLAG(ENABLENATPMPMASK) 2023-05-27 11:20:29 +02:00
MoonlightWave-12 49991e00f6
miniupnpd.conf: Update the address of a STUN-server
See: https://stunprotocol.org/

Also: Adding more newlines for better readability.
2023-05-15 01:00:56 +02:00
Thomas Bernard 214deacb11
improve debug output in ProcessSSDPRequest()
see #655
2023-05-11 01:19:22 +02:00
Thomas Bernard 861298fa24
avoid realloc(p, 0) whose behavior is implementation-defined
fixes #652

see https://github.com/miniupnp/miniupnp/issues/652#issuecomment-1518922139
2023-04-23 11:51:11 +02:00
Thomas Bernard 5ca1a82f7f
zero the permission structure before parsing
should fix #652
2023-04-05 16:03:13 +02:00
Thomas Bernard e439318cf7
miniupnpd 2.3.3 2023-02-17 04:09:33 +01:00
Thomas Bernard 6e8d0fa161
upnppermissions.h: fix build, because #define ENABLE_REGEX is in config.h 2023-02-11 23:53:38 +01:00
Thomas Bernard ec48e04cd5
PinholeVerification(): use memcpy() to compare structures
fix 99fc9941aa
2023-02-11 23:36:56 +01:00
Thomas Bernard 99fc9941aa
Fix PinholeVerification()
see https://miniupnp.tuxfamily.org/forum/viewtopic.php?p=5847
2023-02-04 11:32:29 +01:00
Thomas Bernard 72b33d7145
update Changelog.txt ;)
see 7bd0877b8f
2023-01-28 16:43:25 +01:00
Thomas Bernard 8d3986f82c upnppinhole.c: (c)2023 and https 2023-01-28 16:00:47 +01:00
Thomas Bernard 7bd0877b8f
upnp_add_inboundpinhole(): fix updating of leasetime for existing pinholes
upnp_update_inboundpinhole() takes the leasetime as an argument,
not the timestamp (= current_time + leasetime).

That was resulting in havin a timestamp very far in the future

see https://miniupnp.tuxfamily.org/forum/viewtopic.php?p=5840#
2023-01-28 15:58:57 +01:00
Thomas Bernard 57ae40fe10
miniupnpd: reject AddPinhole when InternalPort or RemortePort is empty
https://miniupnp.tuxfamily.org/forum/viewtopic.php?p=5839
2023-01-28 15:49:53 +01:00