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
..
2016-11-11 09:42:22 -05:00
2020-10-17 22:55:12 +02:00
2020-11-11 13:16:14 +01:00
2017-11-02 16:52:07 +01:00
2015-07-15 18:11:27 +02:00
2021-12-02 00:06:24 +01:00
2024-01-04 01:54:52 +01:00
2018-04-20 17:19:52 +02:00
2023-11-14 21:15:58 +01:00
2018-07-06 14:16:49 +02:00
2022-01-23 01:18:49 +01:00
2020-05-02 18:26:45 +02:00
2012-02-03 13:18:30 +01:00
2020-04-29 00:03:54 +02:00
2022-01-27 11:29:16 +02:00
2019-02-10 16:10:07 +01:00
2020-05-07 00:34:44 +02:00
2015-09-22 10:24:47 +02:00
2021-08-21 10:22:26 +02:00
2020-11-04 22:31:47 +01:00
2024-01-04 01:54:52 +01:00
2012-05-31 15:22:52 +02:00
2016-02-12 15:02:06 +01:00
2019-09-24 16:06:12 +02:00
2017-11-02 16:52:07 +01:00
2021-08-18 11:06:12 +01:00
2021-08-18 11:06:12 +01:00
2023-01-28 16:00:47 +01:00
2021-08-21 10:14:28 +02:00
2022-10-21 21:36:05 +02:00
2024-01-04 01:54:52 +01:00

MiniUPnP project
(c) 2006-2024 Thomas Bernard
webpage: http://miniupnp.free.fr/ or https://miniupnp.tuxfamily.org/
github: https://github.com/miniupnp/miniupnp
freecode: http://freecode.com/projects/miniupnp
contact: miniupnp@free.fr

This directory contain the miniUPnP daemon software, aka miniUPnPd.
This software is subject to the conditions detailed in
the LICENSE file provided with this distribution.


The miniUPnP daemon is an UPnP IGD (internet gateway device)
which provide NAT traversal services to any UPnP enabled client on
the network.
See http://www.upnp.org/ for more details on UPnP.
During the year 2011, support for IGD v2 has been added.
In 2012, IGD v2 WANIPv6FirewallControl has been implemented.

IGD2 is still not enabled by default because of interoperability
issues.

In addition to UPnP IGD, miniUPnPd supports NAT-PMP and PCP :

See information about NAT Port Mapping Protocol (NAT-PMP) here :
http://miniupnp.free.fr/nat-pmp.html
NAT-PMP is the precursor of Port Control Protocol (PCP, RFC 6887).
In 2013, support for PCP has been added too.

Read the INSTALL file for instructions to compile, install and
configure miniupnpd on your system.

Report bugs to miniupnp@free.fr or on the web forum
https://miniupnp.tuxfamily.org/forum/
or using https://github.com/miniupnp/miniupnp/issues

Thomas Bernard