зеркало из https://github.com/mozilla/gecko-dev.git
b0cbc31990
As part of the ongoing effort to port the nsIWebProgress events from RemoteWebProgress / WebProgressChild to BrowserParent / BrowserChild, we need to (de)serialize the nsITransportSecurityInfo instance across the IPC layer. The existing code was calling `NS_SerializeToString` which has the overhead of (a) allocating a buffer and also performing base64 encoding/decoding. This patch adds `IPC::ParamTraits` implementations for `nsITransportSecurityInfo`, `nsIX509Certificate`, and `nsIX509CertList` that (de)serializes the params directly onto and off of the IPC message so that we don't go through the overhead of allocating and encoding/decoding an additional buffer. This (de)serialization will address the performance issues present in the current implementation. As a side effect, I also make nsITransportSecurityInfo a builtinclass XPCOM interface, since the existing serialization code was assuming it was, there is only one implementation, and it is in C++. Differential Revision: https://phabricator.services.mozilla.com/D35090 --HG-- extra : moz-landing-system : lando |
||
---|---|---|
.. | ||
apps | ||
certverifier | ||
ct | ||
mac/hardenedruntime | ||
manager | ||
nss | ||
sandbox | ||
.eslintrc.js | ||
generate_certdata.py | ||
generate_mapfile.py | ||
moz.build | ||
nss.symbols |