Commit Graph

346 Commits

Author SHA1 Message Date
Josh Matthews
c8c3238d81 Bug 1300464 - Propagate redirecting channel's security information to new HTTP channels when intercepted channels are redirected. r=mayhemer 2016-09-16 13:38:07 -04:00
Bill McCloskey
05c9a233c3 Bug 1277582 - Don't send HTTP constructor when content process has started to shut down (r=mrbkap) 2016-09-06 11:13:33 -07:00
Valentin Gosu
94331b5b9a Bug 1297663 - Backout bug 1264566 a=backout
MozReview-Commit-ID: L9poncnpmGs
2016-08-31 15:39:36 +02:00
Andrea Marchesini
60cb067eba Bug 1298738 - Remove onprogress assertions in HttpChannelChild, r=jduell 2016-08-30 15:49:36 -07:00
Kan-Ru Chen
a9b19d0584 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES
2016-08-24 14:47:04 +08:00
Wes Kocher
c9c496797e Backed out changeset e1f3ed984607 (bug 1261585) for causing bug 1292586 a=backout 2016-08-22 11:29:04 -07:00
Valentin Gosu
d6f7fc8185 Bug 1264566 - Close mUploadStream in the content process in OnStopRequest. r=jduell
MozReview-Commit-ID: GPmltXvAT6s
2016-08-11 00:48:46 +02:00
Yoshi Huang
932b2340e4 Bug 1292450 - Check mPrivateBrowsingId is correct in LoadInfo and LoadContext. r=smaug, ehsan
Make sure the mPrivateBrowsingId of Origin Attributes is consistent
between LoadInfo and LoadContext.

For chrome docshell, its mPrivateBrowsingId remains 0 even if its
UserPrivateBrowsing() is true (bug 1278664). So we sync the
mPrivateBrowsingId field in LoadInfo in the same way.
2016-08-15 19:03:24 +08:00
Nicholas Nethercote
1f65390cc9 Bug 1293603 (part 2) - Make Run() declarations consistent. r=erahm.
This patch makes most Run() declarations in subclasses of nsIRunnable have the
same form: |NS_IMETHOD Run() override|.

As a result of these changes, I had to add |override| to a couple of other
functions to satisfy clang's -Winconsistent-missing-override warning.
2016-08-08 12:18:10 +10:00
Wei-Cheng Pan
5493c7abbf Bug 1264566 - Part 3: Release upload stream after request complete. r=valentin
MozReview-Commit-ID: 5r1fEkOy9vU
2016-06-24 18:12:32 +08:00
5beed3083d Bug 1261585 - Make nsITraceableChannel listener work with content encoding.r=jduell 2016-07-19 05:05:00 +02:00
Nicholas Nethercote
e91fd67397 Bug 1273043 - Add a missing null check to HttpChannelChild::DoOnStartRequest(). r=michal. 2016-07-12 10:33:07 +10:00
Valentin Gosu
155f2293d3 Bug 1277582 - Check if TabChild is still available before calling SendPHttpChannelConstructor. r=billm
MozReview-Commit-ID: 5XH3cYkbUd1
2016-07-15 03:32:20 +03:00
Ben Kelly
87d8067125 Bug 1286258 Abort http channels that fail ContinueAsyncOpen() during service worker handling. r=valentin 2016-07-12 10:54:13 -07:00
Valentin Gosu
c6a20fe298 Bug 1277582 - Don't send SendPHttpChannelConstructor ipdl messages during child shutdown r=dragana,jdm
MozReview-Commit-ID: F6pCCn4jPVb
2016-07-07 17:12:00 +03:00
Andrea Marchesini
7dcf0fcf39 Bug 1278838 - Remove separate worker binding for Performance API, r=smaug 2016-06-09 19:04:42 +02:00
Jarda Snajdr
2eed757419 Bug 1274556 - Add a channelId attribute to nsIHttpChannel r=hurley 2016-06-01 12:29:21 -07:00
Jarda Snajdr
a6be41af63 Bug 1269765 - Notify http-on-opening-request in content process. r=valentin 2016-05-30 01:24:00 +02:00
Dragana Damjanovic
d2b06cedaa Bug 507571 - Lock nsHttpResponseHead. r=mcmanus 2016-05-24 06:07:00 +02:00
Chris Peterson
9e6efc9fd6 Bug 1274162 - Fix -Wshadow warnings in netwerk/protocol/http/ directory. r=mcmanus
netwerk/protocol/http/nsHttpHeaderArray.h:96:63 [-Wshadow] declaration shadows a field of 'mozilla::net::nsHttpHeaderArray::nsEntry'
netwerk/protocol/http/Http2Session.cpp:2766:14 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/HttpBaseChannel.cpp:1886:14 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/HttpChannelChild.cpp:265:53 [-Wshadow] declaration shadows a field of 'mozilla::net::AssociateApplicationCacheEvent'
netwerk/protocol/http/HttpChannelChild.cpp:266:53 [-Wshadow] declaration shadows a field of 'mozilla::net::AssociateApplicationCacheEvent'
netwerk/protocol/http/HttpChannelChild.cpp:2566:14 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/HttpChannelParent.cpp:397:17 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/InterceptedChannel.cpp:276:14 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/InterceptedChannel.cpp:285:14 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/SpdySession31.cpp:2177:14 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/nsCORSListenerProxy.cpp:304:30 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/nsHttpChannel.cpp:796:17 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/nsHttpChannel.cpp:4474:35 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/nsHttpChannel.cpp:5915:18 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/nsHttpConnection.cpp:982:21 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/nsHttpConnectionMgr.cpp:1220:43 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/nsHttpConnectionMgr.cpp:1240:43 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/nsHttpConnectionMgr.cpp:2247:27 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/nsHttpConnectionMgr.cpp:2758:23 [-Wshadow] declaration shadows a local variable
netwerk/protocol/http/nsHttpPipeline.cpp:709:30 [-Wshadow] declaration shadows a local variable
2016-05-10 23:57:24 -07:00
Dragana Damjanovic
e743f08e91 Bug 1247982 - Lock request headers. r=mcmanus 2016-05-03 00:06:00 +02:00
Kyle Huey
a9cf047227 Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj 2016-04-25 17:23:21 -07:00
Valentin Gosu
684bb7e7c6 Bug 1262326 - Make test_user_agent_overrides.html work in e10s r=nwgh
* Rename SchedulingContext to RequestContext
* Move SetLoadGroupUserAgentOverride to nsHttpChannel
* Cache the userAgentOverride in RequestContext instead of LoadGroup

MozReview-Commit-ID: FQS9uSRR8kd
2016-04-21 16:59:17 +02:00
Stone Shih
1117a7ea03 Bug 1225756 - Part1: Let the regular veto handlers check on redirects then check mRedirectChannelChild in the result callback. r=mayhemer 2016-04-14 13:45:51 +08:00
Andrew McCreight
ee737616d3 Bug 1263235, part 3 - Move PHttpChannel::OnTransportAndData's data argument last. r=mayhemer
This will reduce internal memory fragmentation for the IPC::Message used to make this call.
2016-04-14 10:41:01 -07:00
Dragana Damjanovic
21564e99ae Bug 1261070 - Move Send__delete__ to FailedAsyncOpen. r=jduell 2016-04-07 10:33:44 +02:00
66d38407fb Bug 1261632 - Assert that OnStopRequest is called only once. r=michal 2016-04-06 04:47:00 -04:00
e57ca64185 Bug 1256336 - Do not use httpChannelChild after Send__delete is called. r=jduell 2016-03-24 16:40:42 +01:00
Stone Shih
3d5fc1b71b Bug 1255597 - Part 3: Synchronize content-type hint of HttpChannelChild to HttpChannelParent. r=jduell 2016-03-16 14:03:57 +08:00
Andrea Marchesini
fcd1cce239 Bug 1254730 - patch 2 - Better comments and a better management of lifetime of ChannelEvents, r=michal 2016-03-14 18:46:22 +01:00
Andrea Marchesini
d82cb13961 Bug 1254730 - ChannelEventQueue must be thread-safe, r=michal 2016-03-14 17:10:26 +01:00
Daniel Holbert
ddef67330c Bug 1249450 part 1: Move GetSecureUpgradedURI from HttpBaseChannel to nsNetUtil. r=mcmanus 2016-03-10 15:23:45 -08:00
Valentin Gosu
151341e727 Bug 1253379 - Cache timings not send to HttpChannelChild r=mayhemer
MozReview-Commit-ID: D7IWrI25mIB
2016-03-04 12:14:00 +01:00
Nathan Froyd
96e9726fa8 Bug 1247393 - use arrays of UniquePtr in ChannelEventQueue; r=mcmanus 2016-01-20 16:56:04 -05:00
Dylan Roeh
a9101514d9 Bug 1148544 - Figure out UA override once per LoadGroup and cache it, rather than once per channel. r=nwgh 2016-02-22 15:57:18 -06:00
Wes Kocher
3fe4f2ae90 Backed out 2 changesets (bug 1148544) for failures in test_user_agent_overrides.html
Backed out changeset 5073d841f77d (bug 1148544)
Backed out changeset 64a2c41c6f20 (bug 1148544)
2016-02-09 16:58:54 -08:00
Dylan Roeh
655497f586 Bug 1148544 - Figure out UA override once per LoadGroup and cache it, rather than once per channel. r=nwgh 2016-02-09 16:51:34 -06:00
Andrea Marchesini
690125fc21 Bug 1221320 - XMLHttpRequest authentication should not require auth prompt dialog, r=honzab.moz 2015-12-30 18:47:55 +00:00
Honza Bambas
95053d5270 Bug 1087320 - On charset reload set LOAD_FROM_CACHE only on the default channel, r=bz r=jduell 2016-01-19 15:28:00 +01:00
Patrick McManus
c07974e685 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
Ehsan Akhgari
59305f7e65 Bug 1229369 - Part 2: Drop the aChannel argument to HttpChannelChild::ShouldInterceptURI() 2016-01-06 11:19:50 -05:00
Ehsan Akhgari
2f2ec6a22a Bug 1229369 - Intercept redirected network fetches that have their request mode set to manual; r=jdm
In the non-e10s case, this is done by simply avoiding to set the
LOAD_BYPASS_SERVICE_WORKER flag when we detect a non-internal redirect
in the manual redirect mode.

The e10s solution is a bit more complicated.  Only the child process
knows whether a URI needs to be intercepted, so we piggy back on the
code written to support the |event.respondWith(Response.redirect())|
case where we know in the child that the target of the redirect needs to
be intercepted.

This means that we need to check the same condition as in the non-e10s
case, but we also need to check whether the target of the redirection
needs to be intercepted, which means we need to properly take secure
upgrades into account as well.  This is done by computing both whether
we should intercept and whether we should do a secure upgrade in
HttpChannelChild::SetupRedirect() and saving the information on the
HttpChannelChild for later usage in HttpChannelChild::AsyncOpen().
2016-01-05 21:02:00 -05:00
Ehsan Akhgari
852aa4f559 Bug 1214305 - Part 7: Decide in the child process whether an intercepted channel should go through a secure upgrade; r=mcmanus
This is OK from a security perspective, since this decision only affects
whether the channel will be intercepted with the secure URI in the child
process.  If the intercepting service worker decides to fall back to an
actual network request, we send the request to the parent process with
the original pre-upgrade URI, and the parent process will still be in
charge of whether a network visible HTTP request should be upgraded.
2016-01-04 16:30:02 -05:00
Ehsan Akhgari
3dbe05dd7b Bug 1214305 - Part 6: Use a non-IPC redirect for synthesized upgraded responses to ensure the response URL is correctly propagated; r=mcmanus 2016-01-04 16:30:02 -05:00
Wes Kocher
3ed0d4d1fb Backed out 10 changesets (bug 1214305) for leaks on linux debug m-e10s(bc7)
Backed out changeset 1f482566235a (bug 1214305)
Backed out changeset 001b31489756 (bug 1214305)
Backed out changeset 4e94d2088219 (bug 1214305)
Backed out changeset fba4a5bcea41 (bug 1214305)
Backed out changeset 100f8e249007 (bug 1214305)
Backed out changeset a59c453192dc (bug 1214305)
Backed out changeset 2daa86fc1fb9 (bug 1214305)
Backed out changeset c04efb57b0ed (bug 1214305)
Backed out changeset 52046e843c60 (bug 1214305)
Backed out changeset ac4fd6615828 (bug 1214305)
2016-01-04 10:34:24 -08:00
Ehsan Akhgari
c7008cd2c4 Bug 1214305 - Part 7: Decide in the child process whether an intercepted channel should go through a secure upgrade; r=mcmanus
This is OK from a security perspective, since this decision only affects
whether the channel will be intercepted with the secure URI in the child
process.  If the intercepting service worker decides to fall back to an
actual network request, we send the request to the parent process with
the original pre-upgrade URI, and the parent process will still be in
charge of whether a network visible HTTP request should be upgraded.
2016-01-04 09:52:47 -05:00
Ehsan Akhgari
c1c7e812fc Bug 1214305 - Part 6: Use a non-IPC redirect for synthesized upgraded responses to ensure the response URL is correctly propagated; r=mcmanus 2016-01-04 09:52:45 -05:00
Ehsan Akhgari
b5332348f8 Bug 1219469 - Part 1: Revert the error reporting added in bug 1233845; r=jdm 2016-01-04 09:39:10 -05:00
Ben Kelly
5d318d35fd Bug 1220681 P4 Automatically suspend the parent channel after synthesizing the response for diverison. r=jdm 2015-12-23 12:20:53 -08:00
Ben Kelly
b2d4063f89 Bug 1220681 P3 Delay diversion on parent side until response head has been synthesized. r=jdm 2015-12-23 12:20:53 -08:00