Граф коммитов

46 Коммитов

Автор SHA1 Сообщение Дата
Nathan Froyd 042857aede Bug 1360236 - make gSocketThread an internal implementation detail of nsSocketTransportService; r=mcmanus
This change makes the code a little cleaner and reduces the number of
places we call PR_GetCurrentThread, which is important for Quantum DOM
scheduling work.

The conversion was largely automatic, via:

find netwerk/ -name \*.cpp | \
  xargs sed -i -e 's/MOZ_ASSERT(PR_GetCurrentThread() == gSocketThread[^;]*/MOZ_ASSERT(OnSocketThread(), "not on socket thread")/'

and related invocations, with a few manual tweaks at the end.
2017-04-27 14:34:42 -04:00
Nicholas Hurley 01c12cb1ef Bug 1296280 (part 2) - Add pref for our SETTINGS_MAX_TABLE_SIZE. r=mcmanus
MozReview-Commit-ID: 44CYEvJOno0

--HG--
extra : rebase_source : 5317d25981bf83ab8cc9b921055cc9028a1d4470
2016-08-24 14:35:43 -07:00
Nicholas Hurley 233fa83252 Bug 1296280 (part 1) - Add telemetry for HPACK usage. r=bsmedberg,mcmanus data-review=bsmedberg
MozReview-Commit-ID: Hk5XNrj3Tbh

--HG--
extra : rebase_source : 73851cd39d9885110c49007e4e9fca5de06d2d74
2016-08-24 06:38:52 -07:00
Nicholas Hurley c2ffdd32e6 Bug 1300148 - Fix handling of HPACK dynamic size update r=mcmanus
MozReview-Commit-ID: 46n3gWvyW0P

--HG--
extra : rebase_source : e1e4b5f443a59c53f158a8644f65752cb52f6036
2016-09-02 10:50:00 -07:00
Nicholas Nethercote c2306345d5 Bug 1297658 - Avoid unnecessary checking in memory reporters. r=erahm.
This patch removes checking of all the callback calls in memory reporter
CollectReport() functions, because it's not useful.

The patch also does some associated clean-up.

- Replaces some uses of nsIMemoryReporterCallback with the preferred
  nsIHandleReportCallback typedef.

- Replaces aCallback/aCb/aClosure with aHandleRepor/aData for CollectReports()
  parameter names, for consistency.

- Adds MOZ_MUST_USE/[must_use] in a few places in nsIMemoryReporter.idl.

- Uses the MOZ_COLLECT_REPORT macro in all suitable places.

Overall the patch reduces code size by ~300 lines and reduces the size of
libxul by about 37 KiB on my Linux64 builds.

--HG--
extra : rebase_source : e94323614bd10463a0c5134a7276238a7ca1cf23
2016-08-24 15:23:45 +10:00
Nicholas Nethercote bab6d17ebf Bug 1293117 (part 4) - Change many NS_IMETHODIMP occurrences to NS_IMETHOD. r=froydnj.
This patch makes the following changes on many in-class methods.

- NS_IMETHODIMP F() override;      --> NS_IMETHOD F() override;
- NS_IMETHODIMP F() override {...} --> NS_IMETHOD F() override {...}
- NS_IMETHODIMP F() final;         --> NS_IMETHOD F() final;
- NS_IMETHODIMP F() final {...}    --> NS_IMETHOD F() final {...}

Using NS_IMETHOD is the preferred way of marking in-class virtual methods.
Although these transformations add an explicit |virtual|, they are safe --
there's an implicit |virtual| anyway because |override| and |final| only work
with virtual methods.

--HG--
extra : rebase_source : 386ee4e4ea2ecd8d5001efabc3ac87b4d6c0659f
2016-08-08 10:54:47 +10:00
Nicholas Nethercote c49a9433ca Bug 1255239 - Reduce size of HuffmanIncomingTables. r=hurley.
Splitting Each HuffmanIncomingTable into two parts avoids the wasted
0/nullptr fields and allows the remaining fields to be packed more efficiently.
Making them all const allows them to be shared between processes.

On 64-bit platforms this saves (60*N - 7.5) KiB, where N is the number of
processes.

--HG--
extra : rebase_source : 1c55b325a01df53b0d8e28e5f3102b8ed57e5e47
2016-03-11 09:57:02 +11:00
Paul Bignier 1d1fd489f5 Bug 1245106 - necko compilation warnings r=mcmanus
--HG--
extra : rebase_source : 6f4adf253af73a58d3ff5561e33e34eed94e456b
2016-02-26 11:29:28 -05:00
Patrick McManus 7ed406b2be Bug 1238290 - fix bad necko deps on unified_sources r=valentin.gosu
---
 netwerk/base/ARefBase.h                            |  2 ++
 netwerk/base/CaptivePortalService.cpp              |  1 +
 netwerk/base/CaptivePortalService.h                |  1 +
 netwerk/base/EventTokenBucket.cpp                  |  4 +++-
 netwerk/base/LoadContextInfo.cpp                   |  3 +++
 netwerk/base/LoadInfo.cpp                          |  3 +++
 netwerk/base/MemoryDownloader.cpp                  |  1 +
 netwerk/base/Predictor.cpp                         |  1 +
 netwerk/base/RedirectChannelRegistrar.h            |  1 +
 netwerk/base/nsBaseChannel.cpp                     |  1 +
 netwerk/base/nsChannelClassifier.cpp               |  1 +
 netwerk/base/nsDirectoryIndexStream.cpp            |  3 ++-
 netwerk/base/nsDownloader.cpp                      |  1 +
 netwerk/base/nsIOService.cpp                       |  1 +
 netwerk/base/nsIncrementalDownload.cpp             |  3 +++
 netwerk/base/nsNetUtil.cpp                         |  4 ++++
 netwerk/base/nsNetUtil.h                           |  1 +
 netwerk/base/nsProtocolProxyService.cpp            |  1 +
 netwerk/base/nsSecCheckWrapChannel.cpp             |  2 ++
 netwerk/base/nsUDPSocket.cpp                       |  4 +++-
 netwerk/cache/nsDiskCacheBinding.cpp               |  2 +-
 netwerk/cache/nsDiskCacheDeviceSQL.cpp             |  2 ++
 netwerk/cache/nsMemoryCacheDevice.cpp              |  2 +-
 netwerk/cache2/CacheFileUtils.cpp                  |  2 ++
 netwerk/cache2/CacheStorageService.h               |  1 +
 netwerk/ipc/NeckoParent.cpp                        |  1 +
 netwerk/ipc/RemoteOpenFileChild.cpp                |  1 +
 netwerk/protocol/about/nsAboutBloat.cpp            |  1 +
 netwerk/protocol/about/nsAboutCacheEntry.cpp       |  1 +
 netwerk/protocol/about/nsAboutProtocolHandler.cpp  |  1 +
 netwerk/protocol/data/DataChannelParent.cpp        |  1 +
 netwerk/protocol/file/nsFileProtocolHandler.cpp    |  1 +
 netwerk/protocol/ftp/FTPChannelParent.cpp          |  2 ++
 netwerk/protocol/ftp/FTPChannelParent.h            |  1 +
 netwerk/protocol/ftp/nsFtpConnectionThread.cpp     |  1 +
 netwerk/protocol/ftp/nsFtpProtocolHandler.h        |  1 +
 netwerk/protocol/http/Http2Compression.cpp         |  1 +
 netwerk/protocol/http/Http2Session.cpp             |  1 +
 netwerk/protocol/http/Http2Stream.h                |  2 ++
 netwerk/protocol/http/HttpBaseChannel.cpp          |  4 ++++
 netwerk/protocol/http/HttpBaseChannel.h            |  1 +
 netwerk/protocol/http/HttpChannelChild.cpp         | 25 ++--------------------
 netwerk/protocol/http/HttpChannelChild.h           | 24 +++++++++++++++++++++
 netwerk/protocol/http/HttpChannelParent.cpp        |  1 +
 netwerk/protocol/http/HttpChannelParent.h          |  1 +
 .../protocol/http/HttpChannelParentListener.cpp    |  1 +
 netwerk/protocol/http/HttpChannelParentListener.h  |  1 +
 netwerk/protocol/http/InterceptedChannel.cpp       |  1 +
 netwerk/protocol/http/NullHttpChannel.cpp          |  1 +
 netwerk/protocol/http/NullHttpTransaction.cpp      |  1 +
 netwerk/protocol/http/PackagedAppService.cpp       | 14 ++++++++++--
 netwerk/protocol/http/PackagedAppService.h         |  4 +++-
 netwerk/protocol/http/PackagedAppVerifier.cpp      |  1 +
 netwerk/protocol/http/nsCORSListenerProxy.cpp      |  2 +-
 netwerk/protocol/http/nsHttpBasicAuth.cpp          |  1 +
 netwerk/protocol/http/nsHttpChannel.cpp            |  2 ++
 netwerk/protocol/http/nsHttpChunkedDecoder.cpp     |  1 +
 netwerk/protocol/http/nsHttpConnectionInfo.cpp     |  2 ++
 netwerk/protocol/http/nsHttpConnectionMgr.cpp      |  1 +
 netwerk/protocol/http/nsHttpDigestAuth.cpp         |  1 +
 netwerk/protocol/viewsource/nsViewSourceHandler.h  |  4 ++++
 .../protocol/websocket/BaseWebSocketChannel.cpp    |  1 +
 .../websocket/WebSocketEventListenerParent.cpp     |  1 +
 .../protocol/websocket/WebSocketEventService.cpp   |  3 +++
 netwerk/protocol/websocket/WebSocketFrame.cpp      |  2 ++
 netwerk/protocol/wyciwyg/nsWyciwygChannel.cpp      |  1 +
 .../protocol/wyciwyg/nsWyciwygProtocolHandler.cpp  |  1 +
 netwerk/streamconv/converters/mozTXTToHTMLConv.cpp |  1 +
 .../streamconv/converters/nsFTPDirListingConv.cpp  |  1 +
 .../streamconv/converters/nsHTTPCompressConv.cpp   |  2 ++
 netwerk/streamconv/converters/nsHTTPCompressConv.h |  1 +
 netwerk/streamconv/converters/nsIndexedToHTML.cpp  |  1 +
 netwerk/streamconv/converters/nsMultiMixedConv.cpp |  2 ++
 netwerk/streamconv/converters/nsTXTToHTMLConv.cpp  |  2 ++
 netwerk/streamconv/converters/nsUnknownDecoder.cpp |  2 ++
 75 files changed, 147 insertions(+), 32 deletions(-)
2016-01-08 20:20:50 -05:00
sajitk 8eb3a68c9e Bug 1201997 - Part 4 - Change size and offset variables to size_t.r=froydn 2015-11-15 14:48:08 +01:00
Nicholas Hurley 31010dbad5 Bug 1224328 - Don't infinite loop when parsing headers with newlines. r=mcmanus
--HG--
extra : rebase_source : c044f7bd991b7e48010d6bb6997585b1fc846d1d
2015-11-12 14:44:31 -08:00
Nathan Froyd 0d181baf2d Bug 1219910 - make gSocketThread a relaxed atomic variable; r=mcmanus
Many places that (re-)declared gSocketThread already included
nsSocketTransportService2.h; we can delete the declaration for those
places.  For all the other places, we need to include
nsSocketTransportService2.h.
2015-11-06 12:00:37 -05:00
Carsten "Tomcat" Book 4c0ed54e29 Backed out changeset 9093e927a247 (bug 1201997)
--HG--
extra : rebase_source : c47b13e37a7756243a68cf15555bf176c0de8600
2015-10-30 15:52:18 +01:00
sajitk fe2a36f981 Bug 1201997 - Part 4 - Change size and offset variables to size_t.r=froydn
--HG--
extra : rebase_source : 0fd59eb6513e1af0162a9a02c6041182e556b9e7
2015-10-29 19:58:00 +01:00
Nicholas Hurley 90183c451d Bug 1197847 - Disallow folded headers in h2. r=mcmanus
This also fixes a lot of situations in which we could get a compression
state out of sync with the server, which would be Very Bad.

--HG--
extra : rebase_source : 53b87c3cacd34c496f4c63cddda606d005a383e5
2015-09-22 19:58:14 -07:00
Nate Hughes 91f37a593a Bug 1188421 - Properly null memory reporter's compressor reference. r=hurley 2015-07-30 12:31:43 -07:00
Nate Hughes 94f8966c4b Bug 986302 - Add memory reporting for HPACK tables r=hurley r=njn 2015-07-17 14:38:10 -07:00
Carsten "Tomcat" Book f7531b86f7 Backed out changeset 8b90b21e0c64 (bug 986302) for static build failures 2015-07-21 08:53:37 +02:00
Nate Hughes 3f6e8d3da5 Bug 986302 - Add memory reporting for HPACK tables. r=hurley r=njn 2015-07-17 14:38:10 -07:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Nate Hughes b7694c727c Bug 1136727 - Validate pseudo-header fields in HTTP/2. r=hurley
--HG--
extra : rebase_source : 344f5e5f5800b6ccf304e46125317d0937af8c0e
extra : histedit_source : acd01eef8686ea5d2c0f8f187d0a1c6582be867d
2015-07-08 13:24:07 -07:00
Nicholas Hurley 1ea1d4d587 Bug 1159747 - delete h2 static compression table in such a way to avoid crashes after network changes. r=mcmanus 2015-05-27 09:49:00 +02:00
Shigeki Ohtsu bb18946770 bug 1105302 - Fix to use indexed encoding for cookies more than 20 bytes r=mcmanus 2014-11-26 23:44:50 +09:00
Patrick McManus aec785a65a bug 1081341 - h2 1xx responses r=hurley 2014-09-27 09:06:38 -04:00
Nicholas Hurley f19d15e618 Bug 1054173 - Do not fail connections when receiving request headers. r=mcmanus 2014-08-18 14:59:32 -07:00
Shigeki Ohtsu dd8aa72b47 Bug 1051982 - fix integer prefix to encode Header Table Size Update r=hurley 2014-08-12 09:31:26 +09:00
Nicholas Hurley 8446acda81 Bug 1046892 part 1 - HTTP/2 draft 14 client implementation r=mcmanus 2014-08-05 08:41:09 -07:00
Nicholas Hurley 9f15f3e4c3 Bug 1014600 part 1 - Improve HPACK logging. r=mcmanus 2014-07-11 09:48:32 -07:00
Nicholas Hurley 77d6c29a3a Bug 1026609 - HTTP/2 draft 13 part 1 - client implementation. r=mcmanus 2014-06-25 17:33:15 -07:00
Nicholas Hurley d9f98515e7 Bug 1025071 - Save header table space by not indexing :path r=mcmanus 2014-06-13 15:02:05 -07:00
Patrick McManus 76f71eb35a bug 1022076 - http/2 explicit gzip for post h2-12 r=hurley
bug 1022076 - http/2 explicit gzip for post h2-12 r=hurley

--HG--
extra : rebase_source : 8603c97c9ed664520e748ebba405e6a1bce6b3e8
2014-06-06 19:18:00 -04:00
Patrick McManus 6e06b87dfa bug 1022195 - http2 allow indexing of cookie crumbs with decent entropy r=hurley
--HG--
extra : rebase_source : fb48d4aaf4d81007ac5532f493a87babb23257f7
2014-06-07 11:54:38 -04:00
Nicholas Hurley 53b38bf864 Bug 1019577 - Always make room in the table before emitting an entry. r=mcmanus 2014-06-03 13:09:08 -07:00
Nicholas Hurley c69ead23da Bug 1017692 - More logging for HPACK. r=mcmanus 2014-05-30 16:16:23 -07:00
Birunthan Mohanathas aea8617b92 Bug 869836 - Part 7: Use AppendLiteral instead of Append where possible. r=ehsan 2014-05-22 06:48:51 +03:00
Birunthan Mohanathas 58641805f1 Bug 869836 - Part 6: Use EqualsLiteral instead of Equals where possible. r=ehsan 2014-05-22 06:48:51 +03:00
Birunthan Mohanathas 189593520f Bug 869836 - Part 4: Use EqualsLiteral instead of `Equals(NS_LITERAL_STRING(...))`. r=ehsan 2014-05-22 06:48:51 +03:00
Birunthan Mohanathas 19bebbc68d Bug 869836 - Part 2: Use AppendLiteral instead of `Append(NS_LITERAL_STRING(...))`. r=ehsan 2014-05-22 06:48:50 +03:00
Patrick McManus d52c2946ac bug 378637 part 14 - https proxying for spdy31 and http2 r=hurley
--HG--
extra : rebase_source : 03a62d69b08f725c85f092b182a95de9c4eb7288
2014-05-16 11:46:13 -04:00
Nicholas Hurley dad13d622c Bug 1003320 - Send HPACK buffer size updates when receiving SETTINGS_HEADER_TABLE_SIZE. r=mcmanus 2014-04-29 18:46:07 -07:00
Nicholas Hurley b75cd1cf68 Bug 993037 (part 1) - http/2 draft 11 client implementation. r=mcmanus 2014-04-29 18:45:59 -07:00
Nicholas Hurley 33cbd38dd5 Bug 965869 (part 1) - HTTP/2 draft10 client implementation. r=mcmanus 2014-03-26 10:58:09 -07:00
Honza Bambas 76d4ebed1e Bug 965031 - Improve usage of levels of nsHttp log module, r=mcmanus 2014-02-07 22:15:24 +01:00
Nicholas Hurley 15ca033083 Bug 959333 - HTTP/2 should say so in the status line. r=mcmanus 2014-01-29 13:42:19 -08:00
Nicholas Hurley 4655a48e04 Bug 958992 - http/2 draft09 support. r=mcmanus 2014-01-13 17:16:26 -08:00
Patrick McManus bc50e81c07 bug 950768 - http/2-draft08 pref off r=hurley r=mcmanus 2013-10-09 17:21:49 -07:00