2295 Commits

Author SHA1 Message Date
Thomas Bernard
85c95a463b
upnpc.c: move usage printing to a specific function
to stderr when there is an argument error.
to stdout with --help/-h
2024-01-27 00:35:03 +01:00
Thomas BERNARD
c42892f387
Merge pull request #690 from Self-Hosting-Group/upnpc_fix_and_complete_check_of_the_number_of_options_required
upnpc: Fix and complete check of the number of options required
2024-01-26 01:41:25 +01:00
Thomas Bernard
0306f6974b
configure: reformat --help 2024-01-26 01:30:16 +01:00
Thomas Bernard
3c02d79b40 configure: DeviceProtection service implementation is incomplete 2024-01-26 01:24:15 +01:00
Thomas Bernard
2355c108db
configure: Fix Caps/spaces... 2024-01-26 01:23:21 +01:00
Thomas BERNARD
3195ca7a71
Merge pull request #701 from Self-Hosting-Group/miniupnpc_exit_with_1_if_no_upnp_devices_found_with_upnp-listdevices
miniupnpc: Exit with 1 if no UPnP devices found with upnp-listdevices
2024-01-22 01:18:19 +01:00
Self-Hosting-Group
b44ab26b28 upnpc: Fix and complete check of the number of options required 2024-01-21 21:16:01 +01:00
Self-Hosting-Group
39543ed3ca miniupnpc: Exit with 1 if no UPnP devices found with upnp-listdevices 2024-01-21 21:10:59 +01:00
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
b334253fa6
setup*.py: 2024 2024-01-15 00:30:01 +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
Thomas BERNARD
ac693ff933
Merge pull request #691 from Self-Hosting-Group/upnpc_show_hint_to_use_ipv6_(option_-6)_for_pinhole_commands
upnpc: Show hint to use IPv6 (option -6) for pinhole commands
2024-01-14 23:03:33 +01:00
Thomas Bernard
468b12dd43 Merge remote-tracking branch 'self-hosting-group/miniupnpc_fix_upnp_uda_1.1_content-type_charset_compliance'
see #688
2024-01-14 22:54:39 +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
Self-Hosting-Group
e165af32ae upnpc: Show hint to use IPv6 (option -6) for pinhole commands
Control points that have not been authenticated and authorized as defined in IGDv2 SHOULD use their IPv6 GUA when calling this action.
http://upnp.org/specs/gw/UPnP-gw-WANIPv6FirewallControl-v1-Service.pdf
2024-01-13 10:10:13 +01:00
Self-Hosting-Group
4fbe3ce431 miniupnpc: Fix UPnP UDA 1.1 content-type charset compliance
and user-agent also in asynchronous sample code. The commits a6aa371166 and b557fdf4db were incomplete.

Field value MUST be "text/xml; charset="utf-8"".
Field value MUST be "text/xml; charset="utf-8"" for description documents.
https://openconnectivity.org/upnp-specs/UPnP-arch-DeviceArchitecture-v1.1.pdf
2024-01-08 20:32:51 +01:00
Thomas Bernard
e98515ac5e
miniupnpd.conf: document pcp_allow_thirdparty option
this option was introduced by c801138c6355f2744f2c09d5e71aeefed1b84527

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
93b44ed36d upnpc.c: Usage: / Notes: / Options: 2024-01-08 00:09:32 +01:00
Thomas Bernard
ed5b0ad4f3
upnpc.c: reformat usage 2024-01-07 23:56:24 +01:00
Thomas Bernard
78afeed634 upnpc: update printed "banner" 2024-01-07 23:55:30 +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 6e8b02b715407846b16ecde572c1b6d0d2d8287a
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
c8b2e1a619 add a comment about ignoring 713 SpecifiedArrayIndexInvalid
see #682
2024-01-04 02:56:13 +01:00
Thomas BERNARD
c6fc63ead0
Merge pull request #682 from Self-Hosting-Group/upnpc_do_not_show_the_normally_occurring_error_713
upnpc: Do not show the normally occurring error 713
2024-01-04 02:53:55 +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
e370f25e91 2024 2024-01-04 02:14:00 +01:00
Thomas Bernard
fc9d39b012
Makefile.mingw: listdevices-*.exe => upnp-listdevices-*.exe
Commit ed16f24 was incomplete.

fixes #685
2024-01-04 02:12:48 +01:00
Thomas Bernard
f22a96b469 miniupnpd version 2.3.4 miniupnpd_2_3_4 2024-01-04 01:54:52 +01:00
Thomas Bernard
faad29d730 miniupnpc version 2.2.6 miniupnpc_2_2_6 2024-01-04 01:30:01 +01:00
Thomas Bernard
32c0fda01c upnpc.c: 2023 => 2024 2024-01-04 01:23:27 +01:00
Thomas Bernard
3c7b8c0cc3 upnpc.c: improve usage text 2024-01-04 01:19:58 +01:00
Thomas Bernard
7761f03b94
update miniupnpc/Changelog.txt 2024-01-04 01:19:12 +01:00
Thomas Bernard
a6aa371166
minisoap.c: Content type with charset=utf-8
UPnP Device Architecture 1.0 (3.2.1 p48)
CONTENT-TYPE
Required. Must be text/xml. Should include character coding used, which must be “utf-8”.

UPnP Device Architecture 1.1 (3.2.1 p75)
CONTENT-TYPE
REQUIRED. Field value MUST be “text/xml; charset="utf-8" ”
2024-01-04 01:13:31 +01:00
Self-Hosting-Group
847380967c upnpc: Do not show the normally occurring error 713
SpecifiedArrayIndexInvalid when listing port mappings with -l.
2024-01-01 21:36:28 +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
a5fd382e95
Merge pull request #666 from ben-31/fix_malloc_error
minissdpc.c: fix memory allocation error
2023-11-15 00:22:28 +01:00