Bug 1868802: add `this` pointer to `nsHttpHandler::NotifyObservers`'s logging. r...
[gecko.git] / netwerk / cookie / PCookieService.ipdl
blob3c1694005f1750ba854df7831186086bf79779e9
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim: set sw=2 ts=8 et tw=80 ft=cpp : */
4 /* This Source Code Form is subject to the terms of the Mozilla Public
5  * License, v. 2.0. If a copy of the MPL was not distributed with this
6  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
8 include protocol PNecko;
9 include NeckoChannelParams;
11 using mozilla::OriginAttributes from "mozilla/ipc/BackgroundUtils.h";
12 [RefCounted] using class nsIURI from "mozilla/ipc/URIUtils.h";
14 namespace mozilla {
15 namespace net {
17 /**
18  * PCookieService
19  *
20  * Provides IPDL methods for setting and getting cookies. These are stored on
21  * and managed by the parent; the child process goes through the parent for
22  * all cookie operations. Lower-level programmatic operations (i.e. those
23  * provided by the nsICookieManager interface) are not
24  * currently implemented and requesting these interfaces in the child will fail.
25  *
26  * @see nsICookieService
27  * @see nsICookiePermission
28  */
30 [ManualDealloc, NestedUpTo=inside_cpow] sync protocol PCookieService
32   manager PNecko;
34 parent:
35   [Nested=inside_cpow] async SetCookies(nsCString baseDomain,
36                                         OriginAttributes attrs,
37                                         nullable nsIURI host,
38                                         bool fromHttp,
39                                         CookieStruct[] cookies);
41   async PrepareCookieList(nullable nsIURI host,
42                           bool isForeign,
43                           bool isThirdPartyTrackingResource,
44                           bool isThirdPartySocialTrackingResource,
45                           bool firstPartyStorageAccessPermissionGranted,
46                           uint32_t rejectedReason,
47                           bool isSafeTopLevelNav,
48                           bool isSameSiteForeign,
49                           bool hadCrossSiteRedirects,
50                           OriginAttributes attrs);
52   async __delete__();
54 child:
55   async TrackCookiesLoad(CookieStruct[] cookiesList,
56                          OriginAttributes attrs);
58   async RemoveCookie(CookieStruct cookie,
59                      OriginAttributes attrs);
61   async RemoveBatchDeletedCookies(CookieStruct[] cookiesList,
62                                   OriginAttributes[] attrsList);
64   async RemoveAll();
66   async AddCookie(CookieStruct cookie,
67                   OriginAttributes attrs);