all client autobahn test should pass ! last failing one was ...
+- zlib/deflate has a bug with windowsbits == 8, so we silently upgrade it to 9/ (fix autobahn test 13.X which uses 8 for the windows size)
This commit is contained in:
parent
95a97a197a
commit
003afc8b56
@ -1 +1 @@
|
|||||||
5.2.0
|
6.0.0
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
All notable changes to this project will be documented in this file.
|
All notable changes to this project will be documented in this file.
|
||||||
|
|
||||||
|
## [6.0.0] - 2019-09-04
|
||||||
|
|
||||||
|
- all client autobahn test should pass !
|
||||||
|
- zlib/deflate has a bug with windowsbits == 8, so we silently upgrade it to 9/ (fix autobahn test 13.X which uses 8 for the windows size)
|
||||||
|
|
||||||
## [5.2.0] - 2019-09-04
|
## [5.2.0] - 2019-09-04
|
||||||
|
|
||||||
- Fragmentation: for sent messages which are compressed, the continuation fragments should not have the rsv1 bit set (fix all autobahn tests for zlib compression 12.X)
|
- Fragmentation: for sent messages which are compressed, the continuation fragments should not have the rsv1 bit set (fix all autobahn tests for zlib compression 12.X)
|
||||||
|
@ -33,6 +33,8 @@ namespace ix
|
|||||||
_serverNoContextTakeover = serverNoContextTakeover;
|
_serverNoContextTakeover = serverNoContextTakeover;
|
||||||
_clientMaxWindowBits = clientMaxWindowBits;
|
_clientMaxWindowBits = clientMaxWindowBits;
|
||||||
_serverMaxWindowBits = serverMaxWindowBits;
|
_serverMaxWindowBits = serverMaxWindowBits;
|
||||||
|
|
||||||
|
sanitizeClientMaxWindowBits();
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
@ -107,10 +109,22 @@ namespace ix
|
|||||||
_clientMaxWindowBits =
|
_clientMaxWindowBits =
|
||||||
std::min(maxClientMaxWindowBits,
|
std::min(maxClientMaxWindowBits,
|
||||||
std::max(x, minClientMaxWindowBits));
|
std::max(x, minClientMaxWindowBits));
|
||||||
|
|
||||||
|
sanitizeClientMaxWindowBits();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void WebSocketPerMessageDeflateOptions::sanitizeClientMaxWindowBits()
|
||||||
|
{
|
||||||
|
// zlib/deflate has a bug with windowsbits == 8, so we silently upgrade it to 9
|
||||||
|
// See https://bugs.chromium.org/p/chromium/issues/detail?id=691074
|
||||||
|
if (_clientMaxWindowBits == 8)
|
||||||
|
{
|
||||||
|
_clientMaxWindowBits = 9;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
std::string WebSocketPerMessageDeflateOptions::generateHeader()
|
std::string WebSocketPerMessageDeflateOptions::generateHeader()
|
||||||
{
|
{
|
||||||
std::stringstream ss;
|
std::stringstream ss;
|
||||||
|
@ -41,5 +41,7 @@ namespace ix
|
|||||||
bool _serverNoContextTakeover;
|
bool _serverNoContextTakeover;
|
||||||
int _clientMaxWindowBits;
|
int _clientMaxWindowBits;
|
||||||
int _serverMaxWindowBits;
|
int _serverMaxWindowBits;
|
||||||
|
|
||||||
|
void sanitizeClientMaxWindowBits();
|
||||||
};
|
};
|
||||||
} // namespace ix
|
} // namespace ix
|
||||||
|
@ -6,4 +6,4 @@
|
|||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#define IX_WEBSOCKET_VERSION "5.2.0"
|
#define IX_WEBSOCKET_VERSION "6.0.0"
|
||||||
|
Loading…
Reference in New Issue
Block a user