gecko-dev/netwerk/protocol/http
2021-03-19 13:34:39 +00:00
..
AltDataOutputStreamChild.cpp
AltDataOutputStreamChild.h
AltDataOutputStreamParent.cpp
AltDataOutputStreamParent.h
AlternateServices.cpp Bug 1687618 - Remove isolated and topWindowOrigin from altServices r=necko-reviewers,dragana 2021-01-26 11:08:46 +00:00
AlternateServices.h Bug 1687618 - Remove isolated and topWindowOrigin from altServices r=necko-reviewers,dragana 2021-01-26 11:08:46 +00:00
AltServiceChild.cpp Bug 1687618 - Remove isolated and topWindowOrigin from altServices r=necko-reviewers,dragana 2021-01-26 11:08:46 +00:00
AltServiceChild.h Bug 1687618 - Remove isolated and topWindowOrigin from altServices r=necko-reviewers,dragana 2021-01-26 11:08:46 +00:00
AltServiceParent.cpp Bug 1687618 - Remove isolated and topWindowOrigin from altServices r=necko-reviewers,dragana 2021-01-26 11:08:46 +00:00
AltServiceParent.h Bug 1687618 - Remove isolated and topWindowOrigin from altServices r=necko-reviewers,dragana 2021-01-26 11:08:46 +00:00
AltSvcTransactionChild.cpp Bug 1671939 - Create speculative connection for the first service mode record, r=dragana,necko-reviewers 2020-10-28 13:46:16 +00:00
AltSvcTransactionChild.h Bug 1671939 - Create speculative connection for the first service mode record, r=dragana,necko-reviewers 2020-10-28 13:46:16 +00:00
AltSvcTransactionParent.cpp Bug 1671939 - Create speculative connection for the first service mode record, r=dragana,necko-reviewers 2020-10-28 13:46:16 +00:00
AltSvcTransactionParent.h Bug 1671939 - Create speculative connection for the first service mode record, r=dragana,necko-reviewers 2020-10-28 13:46:16 +00:00
ASpdySession.cpp Bug 1691913 - Rename nsBaseHashtable::Put to InsertOrUpdate. r=xpcom-reviewers,necko-reviewers,jgilbert,dragana,nika 2021-02-26 09:11:46 +00:00
ASpdySession.h Bug 1630511 - Replace MOZ_MUST_USE with [[nodiscard]] in netwerk. r=necko-reviewers,dragana 2020-04-18 06:37:32 +00:00
BackgroundChannelRegistrar.cpp Bug 1691913 - Rename nsBaseHashtable::Put to InsertOrUpdate. r=xpcom-reviewers,necko-reviewers,jgilbert,dragana,nika 2021-02-26 09:11:46 +00:00
BackgroundChannelRegistrar.h
BackgroundDataBridgeChild.cpp Bug 1662072 - Reduce one data copy in parent process when sending chunks to child process r=valentin 2020-08-31 17:11:21 +00:00
BackgroundDataBridgeChild.h Bug 1662072 - Reduce one data copy in parent process when sending chunks to child process r=valentin 2020-08-31 17:11:21 +00:00
BackgroundDataBridgeParent.cpp Bug 1650773 - P3: Send OnStopRequest from socket process to child process directly, r=dragana 2020-07-31 18:05:22 +00:00
BackgroundDataBridgeParent.h Bug 1650773 - P3: Send OnStopRequest from socket process to child process directly, r=dragana 2020-07-31 18:05:22 +00:00
CacheControlParser.cpp Bug 1687413 - Iteratively parse cache-control header to avoid stack overflow r=necko-reviewers,dragana 2021-02-01 20:47:06 +00:00
CacheControlParser.h Bug 1542293 - Rewrite various nsHttpResponseHead::Get* to use Tokenizer r=valentin,mayhemer,necko-reviewers 2020-04-23 17:11:44 +00:00
CachePushChecker.cpp Bug 1679272 - Include ScopeExit.h exactly where used. r=andi 2020-12-07 14:25:59 +00:00
CachePushChecker.h Bug 1546358 - Forward cache entry check to parent process r=dragana 2020-05-25 11:07:07 +00:00
ClassifierDummyChannel.cpp Bug 1697480 - P1: Collect the time between asyncOpen and requestStart when HTTPS RR is used r=necko-reviewers,dragana 2021-03-18 15:26:36 +00:00
ClassifierDummyChannel.h Bug 1612378 - Part 7: Remove the ContentBlockingAllowListPrincipal from the nsIHttpChannelInternal. r=dimi,baku 2020-03-25 13:51:05 +00:00
ClassifierDummyChannelChild.cpp Bug 1612378 - Part 7: Remove the ContentBlockingAllowListPrincipal from the nsIHttpChannelInternal. r=dimi,baku 2020-03-25 13:51:05 +00:00
ClassifierDummyChannelChild.h
ClassifierDummyChannelParent.cpp Bug 1679272 - Include ScopeExit.h exactly where used. r=andi 2020-12-07 14:25:59 +00:00
ClassifierDummyChannelParent.h Bug 1612378 - Part 7: Remove the ContentBlockingAllowListPrincipal from the nsIHttpChannelInternal. r=dimi,baku 2020-03-25 13:51:05 +00:00
components.conf
ConnectionDiagnostics.cpp Bug 1695162 - Use range-based for instead of custom hashtable iterators. r=xpcom-reviewers,kmag 2021-03-17 15:49:46 +00:00
ConnectionEntry.cpp Bug 1690615 - Improve DnsAndConnectSocket part 2 r=necko-reviewers,valentin 2021-02-11 16:04:45 +00:00
ConnectionEntry.h Bug 1690615 - Rename HalfOpen into DnsAndConnectSocket r=necko-reviewers,valentin 2021-02-11 16:04:45 +00:00
ConnectionHandle.cpp Bug 1672520 - Part 0 - Move all different classes defined in nsHttpConnectionMgr into separate files. r=necko-reviewers,kershaw 2020-10-31 19:12:32 +00:00
ConnectionHandle.h Bug 1672520 - Part 0 - Move all different classes defined in nsHttpConnectionMgr into separate files. r=necko-reviewers,kershaw 2020-10-31 19:12:32 +00:00
DelayHttpChannelQueue.cpp Bug 1654992 - Use std::move instead of SwapElements where possible. r=froydnj 2020-08-04 11:27:07 +00:00
DelayHttpChannelQueue.h
DnsAndConnectSocket.cpp Bug 1695917 - Optimize the way we get DNS service in DnsAndConnectSocket r=necko-reviewers,dragana 2021-03-09 07:58:48 +00:00
DnsAndConnectSocket.h Bug 1689554 - Use nsUDPSocket for HTTP3/QUIC r=necko-reviewers,valentin 2021-02-26 08:42:49 +00:00
http2_huffman_table.txt
Http2Compression.cpp Bug 1679987 - Use nsTokenizedRange where easily possible. r=xpcom-reviewers,nika 2020-12-16 19:10:34 +00:00
Http2Compression.h Bug 1337953 - Make nsDeque templated on pointer type r=froydnj 2020-06-25 02:39:23 +00:00
Http2HuffmanIncoming.h
Http2HuffmanOutgoing.h
Http2Push.cpp Bug 1537761 - P1: Send an IPC message for ClearHostMapping() r=dragana 2020-03-10 16:28:47 +00:00
Http2Push.h Bug 1402014 - Make nsAHttpSegmentReader refcounted r=dragana,necko-reviewers 2020-10-21 07:06:35 +00:00
Http2Session.cpp Bug 1693541 - Improve uses of nsBaseHashtable and descendants and avoid multiple subsequent lookups in netwerk. r=necko-reviewers,valentin 2021-03-01 16:41:20 +00:00
Http2Session.h Bug 1634281 - Use nsTHashMap instead of nsDataHashtable. r=xpcom-reviewers,necko-reviewers,jgilbert,nika,valentin 2021-03-10 10:47:47 +00:00
Http2Stream.cpp Bug 1692862 - Null out mSession pointer when closing Http2Stream r=dragana,necko-reviewers 2021-02-17 08:00:53 +00:00
Http2Stream.h Bug 1402014 - Make nsAHttpSegmentReader refcounted r=dragana,necko-reviewers 2020-10-21 07:06:35 +00:00
Http3Session.cpp Bug 1698742 - Fix CryptoAlert codes in the telemetry r=necko-reviewers,kershaw 2021-03-16 12:10:24 +00:00
Http3Session.h Bug 1634281 - Use nsTHashMap instead of nsDataHashtable. r=xpcom-reviewers,necko-reviewers,jgilbert,nika,valentin 2021-03-10 10:47:47 +00:00
Http3Stream.cpp Bug 1689554 - Use nsUDPSocket for HTTP3/QUIC r=necko-reviewers,valentin 2021-02-26 08:42:49 +00:00
Http3Stream.h Bug 1689554 - Use nsUDPSocket for HTTP3/QUIC r=necko-reviewers,valentin 2021-02-26 08:42:49 +00:00
HttpAuthUtils.cpp Bug 1641245 - Make string comparators not virtual. r=froydnj,necko-reviewers,geckoview-reviewers,jgilbert,agi,valentin 2020-05-27 18:11:12 +00:00
HttpAuthUtils.h
HttpBackgroundChannelChild.cpp Bug 1687264 - Do not use mChannelChild if CreateBackgroundChannel fails r=necko-reviewers,valentin 2021-02-19 15:04:45 +00:00
HttpBackgroundChannelChild.h Bug 1604447 - Remove channel diversion code. r=dragana,necko-reviewers 2020-09-18 20:56:54 +00:00
HttpBackgroundChannelParent.cpp Bug 1604447 - Remove channel diversion code. r=dragana,necko-reviewers 2020-09-18 20:56:54 +00:00
HttpBackgroundChannelParent.h Bug 1650773 - P3: Send OnStopRequest from socket process to child process directly, r=dragana 2020-07-31 18:05:22 +00:00
HttpBaseChannel.cpp Bug 1697480 - P1: Collect the time between asyncOpen and requestStart when HTTPS RR is used r=necko-reviewers,dragana 2021-03-18 15:26:36 +00:00
HttpBaseChannel.h Bug 1697480 - P1: Collect the time between asyncOpen and requestStart when HTTPS RR is used r=necko-reviewers,dragana 2021-03-18 15:26:36 +00:00
HttpChannelChild.cpp Bug 1697480 - P1: Collect the time between asyncOpen and requestStart when HTTPS RR is used r=necko-reviewers,dragana 2021-03-18 15:26:36 +00:00
HttpChannelChild.h Bug 1647310 - Stop storing charset on cache entries. r=necko-reviewers,dragana 2021-01-15 09:35:56 +00:00
HttpChannelParams.ipdlh Bug 1697480 - P1: Collect the time between asyncOpen and requestStart when HTTPS RR is used r=necko-reviewers,dragana 2021-03-18 15:26:36 +00:00
HttpChannelParent.cpp Bug 1697480 - P1: Collect the time between asyncOpen and requestStart when HTTPS RR is used r=necko-reviewers,dragana 2021-03-18 15:26:36 +00:00
HttpChannelParent.h Bug 1647310 - Stop storing charset on cache entries. r=necko-reviewers,dragana 2021-01-15 09:35:56 +00:00
HttpConnectionBase.cpp Bug 1689554 - Use nsUDPSocket for HTTP3/QUIC r=necko-reviewers,valentin 2021-02-26 08:42:49 +00:00
HttpConnectionBase.h Bug 1519636 - Reformat recent changes to the Google coding style r=necko-reviewers,valentin 2021-03-02 16:14:46 +00:00
HttpConnectionMgrChild.cpp Bug 1671939 - Create speculative connection for the first service mode record, r=dragana,necko-reviewers 2020-10-28 13:46:16 +00:00
HttpConnectionMgrChild.h Bug 1671939 - Create speculative connection for the first service mode record, r=dragana,necko-reviewers 2020-10-28 13:46:16 +00:00
HttpConnectionMgrParent.cpp Bug 1660470 - Add missing include directives/forward declarations. r=nika 2020-11-23 16:21:38 +00:00
HttpConnectionMgrParent.h
HttpConnectionMgrShell.h Bug 1671939 - Create speculative connection for the first service mode record, r=dragana,necko-reviewers 2020-10-28 13:46:16 +00:00
HttpConnectionUDP.cpp Bug 1696037 - Make sure X-Firefox-Http3 is set properly r=necko-reviewers,valentin 2021-03-10 08:02:55 +00:00
HttpConnectionUDP.h Bug 1696037 - Make sure X-Firefox-Http3 is set properly r=necko-reviewers,valentin 2021-03-10 08:02:55 +00:00
HttpInfo.cpp Bug 1527256 - P3: Get HttpData from socket process r=dragana 2020-07-08 10:29:01 +00:00
HttpInfo.h
HttpLog.h
HTTPSRecordResolver.cpp Bug 1671939 - Move some dns code our of nsHttpTransaction r=dragana 2020-10-28 13:46:24 +00:00
HTTPSRecordResolver.h Bug 1671939 - Move some dns code our of nsHttpTransaction r=dragana 2020-10-28 13:46:24 +00:00
HttpTrafficAnalyzer.cpp Bug 1648010 - Remove NS_NAMED_LITERAL_CSTRING and NS_NAMED_LITERAL_STRING macros. r=froydnj 2020-07-01 08:42:31 +00:00
HttpTrafficAnalyzer.h Bug 1537761 - P1: Send an IPC message for ClearHostMapping() r=dragana 2020-03-10 16:28:47 +00:00
HttpTrafficAnalyzer.inc
HttpTransactionChild.cpp Bug 1682552 - Add a probe to understand the channel successful rate when https rr is used r=necko-reviewers,dragana 2021-01-12 09:17:21 +00:00
HttpTransactionChild.h Bug 1668828 - Don't set cos flag if transaction is already closed r=necko-reviewers,valentin 2020-10-20 12:59:31 +00:00
HttpTransactionParent.cpp Bug 1682552 - Add a probe to understand the channel successful rate when https rr is used r=necko-reviewers,dragana 2021-01-12 09:17:21 +00:00
HttpTransactionParent.h Bug 1682552 - Add a probe to understand the channel successful rate when https rr is used r=necko-reviewers,dragana 2021-01-12 09:17:21 +00:00
HttpTransactionShell.h Bug 1682552 - Add a probe to understand the channel successful rate when https rr is used r=necko-reviewers,dragana 2021-01-12 09:17:21 +00:00
InterceptedChannel.cpp Bug 1650145 - Replace all value uses of Empty[C]String by 0-length _ns literals. r=froydnj,geckoview-reviewers,agi 2020-09-23 15:17:15 +00:00
InterceptedChannel.h Bug 1664948 - Remove content process interception from HttpChannelChild. r=asuth,dragana,necko-reviewers,valentin 2020-09-15 23:44:58 +00:00
InterceptedHttpChannel.cpp Bug 1567222 - Add a LOAD_STOP marker when a request goes through a service worker r=asuth,necko-reviewers,valentin,gerald 2021-03-11 14:31:11 +00:00
InterceptedHttpChannel.h Bug 1665062: HTTPS-Only: Upgraded website creating HTTP auth prompt gets interrupted by error-page r=necko-reviewers,dragana,JulianWels 2020-10-13 14:06:28 +00:00
make_incoming_tables.py Bug 1654103: Standardize on Black for Python code in mozilla-central. 2020-10-26 18:34:53 +00:00
make_outgoing_tables.py Bug 1654103: Standardize on Black for Python code in mozilla-central. 2020-10-26 18:34:53 +00:00
moz.build Bug 1690615 - Rename HalfOpen into DnsAndConnectSocket r=necko-reviewers,valentin 2021-02-11 16:04:45 +00:00
nsAHttpConnection.h Bug 1519636 - Reformat recent changes to the Google coding style r=necko-reviewers,valentin 2021-03-02 16:14:46 +00:00
nsAHttpTransaction.h Bug 1689604 - Remove TCPFastOpen part 3 r=necko-reviewers,valentin 2021-02-03 17:23:45 +00:00
nsCORSListenerProxy.cpp Bug 1691913 - Rename nsBaseHashtable::Put to InsertOrUpdate. r=xpcom-reviewers,necko-reviewers,jgilbert,dragana,nika 2021-02-26 09:11:46 +00:00
nsCORSListenerProxy.h Bug 1676369 - Avoid including nsIHttpChannel.h from header files. r=#necko-reviewers 2020-11-23 16:10:11 +00:00
nsHttp.cpp Bug 1697791 - Add support for draft 31 and 32 r=necko-reviewers,valentin 2021-03-15 14:44:03 +00:00
nsHttp.h Bug 1511151 - Add a flag to allow client certs on CORS preflight connections r=necko-reviewers,keeler,valentin,kershaw 2021-02-18 18:58:17 +00:00
nsHttpActivityDistributor.cpp Bug 1651714 - Reduce expensive includes for TabMessageUtils.h. r=smaug 2020-07-15 13:24:20 +00:00
nsHttpActivityDistributor.h
nsHttpAtomList.h Bug 1689604 - Remove TCPFastOpen part 3 r=necko-reviewers,valentin 2021-02-03 17:23:45 +00:00
nsHttpAuthCache.cpp Bug 1691913 - Rename nsBaseHashtable::Put to InsertOrUpdate. r=xpcom-reviewers,necko-reviewers,jgilbert,dragana,nika 2021-02-26 09:11:46 +00:00
nsHttpAuthCache.h Bug 1643288 - Isolate HTTP channel authentication per first-party when privacy.partition.network_state is set to true - part 2 - nsIHttpProtocolHandler.authCacheKeys, r=mayhemer,necko-reviewers 2020-06-10 14:44:08 +00:00
nsHttpAuthManager.cpp
nsHttpAuthManager.h Bug 1630511 - Replace MOZ_MUST_USE with [[nodiscard]] in netwerk. r=necko-reviewers,dragana 2020-04-18 06:37:32 +00:00
nsHttpBasicAuth.cpp Bug 1659923 - Avoid unnecessary copies around Base64Encode. r=xpcom-reviewers,necko-reviewers,froydnj,valentin 2020-08-19 17:45:16 +00:00
nsHttpBasicAuth.h
nsHttpChannel.cpp Bug 1697480 - P1: Collect the time between asyncOpen and requestStart when HTTPS RR is used r=necko-reviewers,dragana 2021-03-18 15:26:36 +00:00
nsHttpChannel.h Bug 1686421 - Add probes to understand how HTTPS RR is used r=necko-reviewers,dragana 2021-02-09 09:11:45 +00:00
nsHttpChannelAuthProvider.cpp Bug 1685900 - Split internal and external contentPolicyType. r=ckerschb,smaug 2021-01-15 12:07:16 +00:00
nsHttpChannelAuthProvider.h Bug 1630511 - Replace MOZ_MUST_USE with [[nodiscard]] in netwerk. r=necko-reviewers,dragana 2020-04-18 06:37:32 +00:00
nsHttpChunkedDecoder.cpp Backed out 3 changesets (bug 1308104) for bustages on nsHttp.cpp . CLOSED TREE 2020-09-10 22:43:25 +03:00
nsHttpChunkedDecoder.h Bug 1630511 - Replace MOZ_MUST_USE with [[nodiscard]] in netwerk. r=necko-reviewers,dragana 2020-04-18 06:37:32 +00:00
nsHttpConnection.cpp Bug 1689554 - nsHttpChannel and nsHttpTranasction do not get self/peerAddr if HTTP3 is used. r=necko-reviewers,valentin 2021-02-26 08:42:49 +00:00
nsHttpConnection.h Bug 1699024 - Initialize mTotalBytesWritten r=necko-reviewers,valentin 2021-03-18 09:24:59 +00:00
nsHttpConnectionInfo.cpp Bug 1511151 - Add a flag to allow client certs on CORS preflight connections r=necko-reviewers,keeler,valentin,kershaw 2021-02-18 18:58:17 +00:00
nsHttpConnectionInfo.h Bug 1698307 - Make sure the npnToken is cleared if we don't want to use h2 r=necko-reviewers,dragana 2021-03-19 13:34:39 +00:00
nsHttpConnectionMgr.cpp Bug 1697480 - P2: Collect the transaction's pending time for HTTPS RR r=necko-reviewers,dragana 2021-03-18 15:26:36 +00:00
nsHttpConnectionMgr.h Bug 1634281 - Remove unused nsDataHashtable.h includes. r=xpcom-reviewers,nika 2021-03-03 08:58:52 +00:00
nsHttpDigestAuth.cpp
nsHttpDigestAuth.h Bug 1630511 - Replace MOZ_MUST_USE with [[nodiscard]] in netwerk. r=necko-reviewers,dragana 2020-04-18 06:37:32 +00:00
nsHttpHandler.cpp Bug 1687283 - Part 2: Modify the AntiTrackingRedirectHeuristic. r=dimi 2021-03-12 08:45:29 +00:00
nsHttpHandler.h Bug 1698015 - Add another way to download ODoHConfigs via https r=necko-reviewers,dragana 2021-03-19 08:29:14 +00:00
nsHttpHeaderArray.cpp Bug 1684648 nsHttpHeaderArray.cpp: do not use 'else' after 'continue' r=necko-reviewers,kershaw 2021-01-06 10:07:19 +00:00
nsHttpHeaderArray.h Bug 1626570 - Improve handling of copying arrays in netwerk/protocol/. r=valentin,necko-reviewers 2020-05-06 11:50:57 +00:00
nsHttpNTLMAuth.cpp Bug 1621251 Replace NS_ADDREF(*var = other) with *var = do_AddRef(other).take() in /netwerk r=valentin 2020-03-17 15:05:26 +00:00
nsHttpNTLMAuth.h
nsHttpRequestHead.cpp Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj 2020-07-01 08:29:29 +00:00
nsHttpRequestHead.h Bug 1638513 - P1 extract parsing method, r=valentin,necko-reviewers 2020-06-09 18:19:42 +00:00
nsHttpResponseHead.cpp Bug 1677485 - Add more HTTP response codes. r=necko-reviewers,bomsy 2020-11-20 08:39:23 +00:00
nsHttpResponseHead.h Bug 1664405 - Properly copy mHasCacheControl in nsHttpResponseHead::operator=. r=dragana,necko-reviewers 2020-09-11 17:17:07 +00:00
nsHttpTransaction.cpp Bug 1695162 - Use range-based for instead of custom hashtable iterators. r=xpcom-reviewers,kmag 2021-03-17 15:49:46 +00:00
nsHttpTransaction.h Bug 1697480 - P2: Collect the transaction's pending time for HTTPS RR r=necko-reviewers,dragana 2021-03-18 15:26:36 +00:00
nsIBackgroundChannelRegistrar.idl
nsICorsPreflightCallback.h
nsIHttpActivityObserver.idl
nsIHttpAuthenticableChannel.idl
nsIHttpAuthenticator.idl
nsIHttpAuthManager.idl
nsIHttpChannel.idl Bug 1660470 - Add missing include directives/forward declarations. r=nika 2020-11-23 16:21:38 +00:00
nsIHttpChannelAuthProvider.idl Bug 1609410 - Clear used proxy identity in nsHttpChannelAuthProvider to prevent authentication prompt pop-up on transaction internal restart, r=kershaw,necko-reviewers 2020-08-03 18:31:36 +00:00
nsIHttpChannelChild.idl Bug 1670617 - Part 2: Make the CORS preflight cache partitioned by the originAttributes. r=ckerschb,necko-reviewers 2020-10-26 13:39:12 +00:00
nsIHttpChannelInternal.idl Bug 1697480 - P1: Collect the time between asyncOpen and requestStart when HTTPS RR is used r=necko-reviewers,dragana 2021-03-18 15:26:36 +00:00
nsIHttpHeaderVisitor.idl
nsIHttpProtocolHandler.idl Bug 1643288 - Isolate HTTP channel authentication per first-party when privacy.partition.network_state is set to true - part 2 - nsIHttpProtocolHandler.authCacheKeys, r=mayhemer,necko-reviewers 2020-06-10 14:44:08 +00:00
nsIRaceCacheWithNetwork.idl
nsIWellKnownOpportunisticUtils.idl
nsServerTiming.cpp Bug 1671939 - Create speculative connection for the first service mode record, r=dragana,necko-reviewers 2020-10-28 13:46:16 +00:00
nsServerTiming.h
NullHttpChannel.cpp Bug 1675500 - Add more telemetry about http transactions r=necko-reviewers,valentin 2020-11-12 02:12:06 +00:00
NullHttpChannel.h Bug 1630511 - Replace MOZ_MUST_USE with [[nodiscard]] in netwerk. r=necko-reviewers,dragana 2020-04-18 06:37:32 +00:00
NullHttpTransaction.cpp Bug 1689604 - Remove TCPFastOpen part 3 r=necko-reviewers,valentin 2021-02-03 17:23:45 +00:00
NullHttpTransaction.h Bug 1689604 - Remove TCPFastOpen part 3 r=necko-reviewers,valentin 2021-02-03 17:23:45 +00:00
PAltDataOutputStream.ipdl
PAltService.ipdl Bug 1687618 - Remove isolated and topWindowOrigin from altServices r=necko-reviewers,dragana 2021-01-26 11:08:46 +00:00
PAltSvcTransaction.ipdl Bug 1527384 - Introduce PAltSvcTransaction for carrying the validated result from socket process to parent process r=dragana 2020-03-17 16:32:12 +00:00
ParentChannelListener.cpp Bug 1660470 - Add missing include directives/forward declarations. r=nika 2020-11-23 16:21:38 +00:00
ParentChannelListener.h Bug 1604447 - Remove channel diversion code. r=dragana,necko-reviewers 2020-09-18 20:56:54 +00:00
PBackgroundDataBridge.ipdl Bug 1662072 - Reduce one data copy in parent process when sending chunks to child process r=valentin 2020-08-31 17:11:21 +00:00
PClassifierDummyChannel.ipdl
PendingTransactionInfo.cpp Bug 1690615 - Rename HalfOpen into DnsAndConnectSocket r=necko-reviewers,valentin 2021-02-11 16:04:45 +00:00
PendingTransactionInfo.h Bug 1690615 - Rename HalfOpen into DnsAndConnectSocket r=necko-reviewers,valentin 2021-02-11 16:04:45 +00:00
PendingTransactionQueue.cpp Bug 1695162 - Use range-based for instead of custom hashtable iterators. r=xpcom-reviewers,kmag 2021-03-17 15:49:46 +00:00
PendingTransactionQueue.h Bug 1660470 - Add missing include directives/forward declarations. r=nika 2020-11-23 16:21:38 +00:00
PHttpBackgroundChannel.ipdl Bug 1660470 - Avoid including NeckoMessageUtils.h from header files. r=nika 2020-11-23 16:04:12 +00:00
PHttpChannel.ipdl Bug 1647310 - Stop storing charset on cache entries. r=necko-reviewers,dragana 2021-01-15 09:35:56 +00:00
PHttpChannelParams.h Bug 1677466 - Move ParamTraits specializations with extra dependencies out of IPCMessageUtils.h. r=mccr8 2020-12-10 11:09:21 +00:00
PHttpConnectionMgr.ipdl Bug 1671939 - Create speculative connection for the first service mode record, r=dragana,necko-reviewers 2020-10-28 13:46:16 +00:00
PHttpTransaction.ipdl Bug 1682552 - Add a probe to understand the channel successful rate when https rr is used r=necko-reviewers,dragana 2021-01-12 09:17:21 +00:00
PSpdyPush.h Bug 1634281 - Use nsTHashMap instead of nsDataHashtable. r=xpcom-reviewers,necko-reviewers,jgilbert,nika,valentin 2021-03-10 10:47:47 +00:00
QuicSocketControl.cpp Bug 1687701 - Remove IsCertificateDistrustImminent. r=keeler,necko-reviewers,dragana 2021-01-27 18:05:24 +00:00
QuicSocketControl.h Bug 1519636 - Reformat recent changes to the Google coding style r=andi 2020-09-20 10:14:09 +00:00
README
SpeculativeTransaction.cpp Bug 1648558 - Implement fast fallback for HTTP3 without httpssvc r=dragana 2020-11-19 10:18:09 +00:00
SpeculativeTransaction.h Bug 1648558 - Implement fast fallback for HTTP3 without httpssvc r=dragana 2020-11-19 10:18:09 +00:00
TimingStruct.h
TRRServiceChannel.cpp Bug 1698015 - Add another way to download ODoHConfigs via https r=necko-reviewers,dragana 2021-03-19 08:29:14 +00:00
TRRServiceChannel.h Bug 1687618 - Remove implementation of IsIsolated and TopWindowOrigin r=necko-reviewers,dragana 2021-01-26 10:32:43 +00:00
TunnelUtils.cpp Bug 1692120 - Avoid accessing nsSocketTransport::mCondition on main thread r=necko-reviewers,valentin 2021-02-18 10:52:59 +00:00
TunnelUtils.h Bug 1668802 - Remove SpdyConnectTransaction::mConnInfo r=necko-reviewers,valentin 2020-10-05 14:44:03 +00:00
WellKnownOpportunisticUtils.jsm Bug 1649221: Update ChromeUtils.generateQI callers to pass strings. r=mccr8,remote-protocol-reviewers,marionette-reviewers,perftest-reviewers,webcompat-reviewers,geckoview-reviewers,preferences-reviewers,agi,whimboo,Bebe,twisniewski 2020-07-10 23:58:28 +00:00

                                                        Darin Fisher
                                                        darin@netscape.com
                                                        8/8/2001

                            HTTP DESIGN NOTES


CLASS BREAKDOWN

  nsHttpHandler
    - implements nsIProtocolHandler
    - manages preferences
    - owns the authentication cache
    - holds references to frequently used services

  nsHttpChannel
    - implements nsIHttpChannel
    - talks to the cache
    - initiates http transactions
    - processes http response codes
    - intercepts progress notifications

  nsHttpConnection
    - implements nsIStreamListener & nsIStreamProvider
    - talks to the socket transport service
    - feeds data to its transaction object
    - routes progress notifications

  nsHttpConnectionInfo
    - identifies a connection

  nsHttpTransaction
    - implements nsIRequest
    - encapsulates a http request and response
    - parses incoming data

  nsHttpChunkedDecoder
    - owned by a transaction
    - removes chunked decoding

  nsHttpRequestHead
    - owns a nsHttpHeaderArray
    - knows how to fill a request buffer

  nsHttpResponseHead
    - owns a nsHttpHeaderArray
    - knows how to parse response lines
    - performs common header manipulations/calculations

  nsHttpHeaderArray
    - stores http "<header>:<value>" pairs

  nsHttpAuthCache
    - stores authentication credentials for http auth domains

  nsHttpBasicAuth
    - implements nsIHttpAuthenticator
    - generates BASIC auth credentials from user:pass


ATOMS

  nsHttp:: (header namespace)

  eg. nsHttp::Content_Length


TRANSACTION MODEL

  InitiateTransaction -> ActivateConnection -> AsyncWrite, AsyncRead

  The channel creates transactions, and passes them to the handler via
  InitiateTransaction along with a nsHttpConnectionInfo object
  identifying the requested connection.  The handler either dispatches
  the transaction immediately or queues it up to be dispatched later,
  depending on whether or not the limit on the number of connections
  to the requested server has been reached.  Once the transaction can
  be run, the handler looks for an idle connection or creates a new
  connection, and then (re)activates the connection, assigning it the
  new transaction.

  Once activated the connection ensures that it has a socket transport,
  and then calls AsyncWrite and AsyncRead on the socket transport.  This
  begins the process of talking to the server.  To minimize buffering,
  socket transport thread-proxying is completely disabled (using the flags
  DONT_PROXY_LISTENER | DONT_PROXY_PROVIDER | DONT_PROXY_OBSERVER with
  both AsyncWrite and AsyncRead).  This means that the nsHttpConnection's
  OnStartRequest, OnDataAvailable, OnDataWritable, and OnStopRequest
  methods will execute on the socket transport thread.

  The transaction defines (non-virtual) OnDataReadable, OnDataWritable, and
  OnStopTransaction methods, which the connection calls in response to
  its OnDataAvailable, OnDataWritable, and OnStopRequest methods, respectively.
  The transaction owns a nsStreamListenerProxy created by the channel, which
  it uses to transfer data from the socket thread over to the client's thread.
  To mimize buffering, the transaction implements nsIInputStream, and passes
  itself to the stream listener proxy's OnDataAvailable.  In this way, we
  have effectively wedged the response parsing between the socket and the
  thread proxy's buffer.  When read, the transaction turns around and reads
  from the socket using the buffer passed to it.  The transaction scans the
  buffer for headers, removes them as they are detected, and copies the headers
  into its nsHttpResponseHead object.  The rest of the data remains in the
  buffer, and is proxied over to the client's thread to be handled first by the
  http channel and eventually by the client.

  There are several other major design factors, including:

    - transaction cancelation
    - progress notification
    - SSL tunneling
    - chunked decoding
    - thread safety
    - premature EOF detection and transaction restarting
    - pipelining (not yet implemented)


CACHING

<EOF>