vlc | branch: master | Rémi Denis-Courmont <[email protected]> | Sat Apr 4 20:20:48 2020 +0300| [5387e631dd7972ea8d6fc30f3bd7c8bc56e63eaf] | committer: Rémi Denis-Courmont
sap: remove SAPv0 support This removes non-strict mode, in other words support for non-standard version 0 of the protocol. This means releases of the session directory tool (sdr) from before October 1996. SAP was only standardized as version 2 in 2000. SAP support was added to VLC in 2003; VLC and miniSAPserver have always sent packets following the standard (except for the first 6 days of development where a completely custom packet format was used, never seen in a release). We retain backward compatibility with version 1 (sdr releases from 1996 to 2000) because there are no relevant differences with version 2. Version 0 packets however lack the hash value, which *is* troublesome. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5387e631dd7972ea8d6fc30f3bd7c8bc56e63eaf --- modules/services_discovery/sap.c | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/modules/services_discovery/sap.c b/modules/services_discovery/sap.c index f13dd3e3cc..6a2406ed60 100644 --- a/modules/services_discovery/sap.c +++ b/modules/services_discovery/sap.c @@ -91,10 +91,6 @@ "This enables actual parsing of the announces by the SAP module. " \ "Otherwise, all announcements are parsed by the \"live555\" " \ "(RTP/RTSP) module." ) -#define SAP_STRICT_TEXT N_( "SAP Strict mode" ) -#define SAP_STRICT_LONGTEXT N_( \ - "When this is set, the SAP parser will discard some non-compliant " \ - "announcements." ) /* Callbacks */ static int Open ( vlc_object_t * ); @@ -118,8 +114,7 @@ vlc_module_begin () SAP_TIMEOUT_TEXT, SAP_TIMEOUT_LONGTEXT, true ) add_bool( "sap-parse", true, SAP_PARSE_TEXT,SAP_PARSE_LONGTEXT, true ) - add_bool( "sap-strict", false, - SAP_STRICT_TEXT,SAP_STRICT_LONGTEXT, true ) + add_obsolete_bool( "sap-strict" ) /* since 4.0.0 */ add_obsolete_bool( "sap-timeshift" ) /* Redumdant since 1.0.0 */ set_capability( "services_discovery", 0 ) @@ -223,7 +218,6 @@ typedef struct struct sap_announce_t **pp_announces; /* Modes */ - bool b_strict; bool b_parse; vlc_tick_t i_timeout; @@ -300,7 +294,6 @@ static int Open( vlc_object_t *p_this ) p_sys->pi_fd = NULL; p_sys->i_fd = 0; - p_sys->b_strict = var_CreateGetBool( p_sd, "sap-strict"); p_sys->b_parse = var_CreateGetBool( p_sd, "sap-parse" ); p_sys->i_announces = 0; @@ -683,11 +676,8 @@ static int ParseSAP( services_discovery_t *p_sd, const uint8_t *buf, uint16_t i_hash = U16_AT (buf + 2); - if( p_sys->b_strict && i_hash == 0 ) - { - msg_Dbg( p_sd, "strict mode, discarding announce with null id hash"); + if( i_hash == 0 ) return VLC_EGENERIC; - } buf += 4; if( b_ipv6 ) _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
