[gupnp] UPNP compliance to M-SEARCH responses



The UPNP device architecture specifies that the M-SEARCH responses MUST not be 
sent to malformed M-SEARCH requests.

Specifically, 
"If there is an error with the search request (such as an invalid field value 
in the MAN header field, a missing MX header field, or
other malformed content), the device MUST silently discard and ignore the 
search request; sending of error responses is
PROHIBITED due to the possibility of packet storms if many devices send an 
error response to the same request."


Would patches that mandate these requirements be acceptable? or would that 
break any DLNA compliance?  

The UPNP Forum's test tool specifically tests these conditions as well as the 
format of the M-SEARCH line.  The M-SEARCH line MUST be "M-SEARCH * HTTP/1.1" 
and they specifically test every element of the line. 

My proposal would add a bunch of extra sanity checking and break the "liberal 
in what we accept, strict in what we send out" principal, however if anyone 
else looks for UPNP certification using gssdp, they will also need these 
changes.    In addition, the proposed changes would remove the gssdp ability 
to fill in a default value for the MX header if it is missing.

In addition, since a passed UPNP certification appears to be a requirement for 
the first step of DLNA certification, I suspect that this will be necessary 
for DLNA as well.


-- 
Stephen Depooter
<stephend xandros com>
--
To unsubscribe send a mail to gupnp+unsubscribe\@o-hand.com



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]