mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-22 17:55:50 +00:00
40a8c122d3
Introduce these new blocking state values: const unsigned long STATE_COOKIES_BLOCKED_BY_PERMISSION = 0x10000000; const unsigned long STATE_COOKIES_BLOCKED_TRACKER = 0x20000000; const unsigned long STATE_COOKIES_BLOCKED_ALL = 0x40000000; const unsigned long STATE_COOKIES_BLOCKED_FOREIGN = 0x80000000;
76 lines
2.6 KiB
C++
76 lines
2.6 KiB
C++
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
/* vim: set sw=2 ts=8 et tw=80 ft=cpp : */
|
|
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
include protocol PBackground;
|
|
include NeckoChannelParams;
|
|
include PURLClassifierInfo;
|
|
|
|
include "mozilla/net/NeckoMessageUtils.h";
|
|
|
|
using class nsHttpHeaderArray from "nsHttpHeaderArray.h";
|
|
using struct mozilla::net::ResourceTimingStruct from "mozilla/net/TimingStruct.h";
|
|
|
|
namespace mozilla {
|
|
namespace net {
|
|
|
|
//-------------------------------------------------------------------
|
|
async protocol PHttpBackgroundChannel
|
|
{
|
|
manager PBackground;
|
|
|
|
child:
|
|
// OnStartRequest is sent over main thread IPC. The following
|
|
// OnTransportAndData/OnStopRequest/OnProgress/OnStatus/FlushForDiversion/
|
|
// DivertMessages needs to wait in content process until OnStartRequest
|
|
// is processed. For synchronizing the event sequence.
|
|
async OnStartRequestSent();
|
|
|
|
// Combines a single OnDataAvailable and its associated OnProgress &
|
|
// OnStatus calls into one IPDL message
|
|
async OnTransportAndData(nsresult channelStatus,
|
|
nsresult transportStatus,
|
|
uint64_t offset,
|
|
uint32_t count,
|
|
nsCString data);
|
|
|
|
async OnStopRequest(nsresult channelStatus,
|
|
ResourceTimingStruct timing,
|
|
TimeStamp lastActiveTabOptimization,
|
|
nsHttpHeaderArray responseTrailers);
|
|
|
|
async OnProgress(int64_t progress, int64_t progressMax);
|
|
|
|
async OnStatus(nsresult status);
|
|
|
|
// Parent has been suspended for diversion; no more events to be enqueued.
|
|
async FlushedForDiversion();
|
|
|
|
// Child should resume processing the ChannelEventQueue, i.e. diverting any
|
|
// OnDataAvailable and OnStopRequest messages in the queue back to the parent.
|
|
async DivertMessages();
|
|
|
|
// Tell the child that tracking protection was disabled for this load.
|
|
async NotifyTrackingProtectionDisabled();
|
|
|
|
// Tell the child that tracking cookies are blocked for this load.
|
|
async NotifyTrackingCookieBlocked(uint32_t aRejectedReason);
|
|
|
|
// Tell the child that the resource being loaded is on the tracking
|
|
// protection list.
|
|
async NotifyTrackingResource(bool aIsThirdParty);
|
|
|
|
// Tell the child information of matched URL againts SafeBrowsing list
|
|
async SetClassifierMatchedInfo(ClassifierInfo info);
|
|
|
|
async __delete__();
|
|
|
|
};
|
|
|
|
|
|
} // namespace net
|
|
} // namespace mozilla
|