Fix for issue #110, send 'server_no_context_takeover' and 'client_no_context_takeover' parameters in 'permessage-deflate' extension
This commit is contained in:
parent
5eeba8c19f
commit
300574f8a0
@ -793,18 +793,6 @@ namespace WebSocketSharp
|
|||||||
|
|
||||||
// As client
|
// As client
|
||||||
private string createExtensions ()
|
private string createExtensions ()
|
||||||
{
|
|
||||||
var buff = new StringBuilder (32);
|
|
||||||
|
|
||||||
if (_compression != CompressionMethod.None)
|
|
||||||
buff.Append (_compression.ToExtensionString ());
|
|
||||||
|
|
||||||
return buff.Length > 0
|
|
||||||
? buff.ToString ()
|
|
||||||
: null;
|
|
||||||
}
|
|
||||||
|
|
||||||
private string createExtensions2 ()
|
|
||||||
{
|
{
|
||||||
var buff = new StringBuilder (80);
|
var buff = new StringBuilder (80);
|
||||||
|
|
||||||
@ -1077,32 +1065,6 @@ namespace WebSocketSharp
|
|||||||
|
|
||||||
// As server
|
// As server
|
||||||
private void processSecWebSocketExtensionsHeader (string value)
|
private void processSecWebSocketExtensionsHeader (string value)
|
||||||
{
|
|
||||||
var buff = new StringBuilder (32);
|
|
||||||
|
|
||||||
var compress = false;
|
|
||||||
foreach (var extension in value.SplitHeaderValue (',')) {
|
|
||||||
var trimed = extension.Trim ();
|
|
||||||
var unprefixed = trimed.RemovePrefix ("x-webkit-");
|
|
||||||
if (!compress && unprefixed.IsCompressionExtension ()) {
|
|
||||||
var method = unprefixed.ToCompressionMethod ();
|
|
||||||
if (method != CompressionMethod.None) {
|
|
||||||
_compression = method;
|
|
||||||
compress = true;
|
|
||||||
|
|
||||||
buff.Append (trimed + ", ");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
var len = buff.Length;
|
|
||||||
if (len > 0) {
|
|
||||||
buff.Length = len - 2;
|
|
||||||
_extensions = buff.ToString ();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void processSecWebSocketExtensionsHeader2 (string value)
|
|
||||||
{
|
{
|
||||||
var buff = new StringBuilder (80);
|
var buff = new StringBuilder (80);
|
||||||
|
|
||||||
@ -1500,28 +1462,6 @@ namespace WebSocketSharp
|
|||||||
|
|
||||||
// As client
|
// As client
|
||||||
private bool validateSecWebSocketExtensionsHeader (string value)
|
private bool validateSecWebSocketExtensionsHeader (string value)
|
||||||
{
|
|
||||||
var compress = _compression != CompressionMethod.None;
|
|
||||||
if (value == null || value.Length == 0) {
|
|
||||||
if (compress)
|
|
||||||
_compression = CompressionMethod.None;
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!compress)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
var extensions = value.SplitHeaderValue (',');
|
|
||||||
if (extensions.Contains (
|
|
||||||
extension => extension.Trim () != _compression.ToExtensionString ()))
|
|
||||||
return false;
|
|
||||||
|
|
||||||
_extensions = value;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
private bool validateSecWebSocketExtensionsHeader2 (string value)
|
|
||||||
{
|
{
|
||||||
var comp = _compression != CompressionMethod.None;
|
var comp = _compression != CompressionMethod.None;
|
||||||
if (value == null || value.Length == 0) {
|
if (value == null || value.Length == 0) {
|
||||||
|
Loading…
Reference in New Issue
Block a user