Coverage Report

Created: 2018-09-25 14:53

/work/obj-fuzz/dist/include/nsIPermissionManager.h
Line
Count
Source (jump to first uncovered line)
1
/*
2
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM /src/mozilla-central/netwerk/base/nsIPermissionManager.idl
3
 */
4
5
#ifndef __gen_nsIPermissionManager_h__
6
#define __gen_nsIPermissionManager_h__
7
8
9
#ifndef __gen_nsISupports_h__
10
#include "nsISupports.h"
11
#endif
12
13
#include "mozilla/AlreadyAddRefed.h"
14
#include "mozilla/Assertions.h"
15
#include "mozilla/DebugOnly.h"
16
17
/* For IDL files that don't want to include root IDL files. */
18
#ifndef NS_NO_VTABLE
19
#define NS_NO_VTABLE
20
#endif
21
class nsIURI; /* forward declaration */
22
23
class nsIObserver; /* forward declaration */
24
25
class nsIPrincipal; /* forward declaration */
26
27
class mozIDOMWindow; /* forward declaration */
28
29
class nsIPermission; /* forward declaration */
30
31
class nsISimpleEnumerator; /* forward declaration */
32
33
class nsIRunnable; /* forward declaration */
34
35
namespace IPC {
36
struct Permission;
37
}
38
#include "nsTArrayForwardDeclare.h"
39
40
/* starting interface:    nsIPermissionManager */
41
#define NS_IPERMISSIONMANAGER_IID_STR "4dcb3851-eba2-4e42-b236-82d2596fca22"
42
43
#define NS_IPERMISSIONMANAGER_IID \
44
  {0x4dcb3851, 0xeba2, 0x4e42, \
45
    { 0xb2, 0x36, 0x82, 0xd2, 0x59, 0x6f, 0xca, 0x22 }}
46
47
class NS_NO_VTABLE nsIPermissionManager : public nsISupports {
48
 public:
49
50
  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IPERMISSIONMANAGER_IID)
51
52
  enum {
53
    UNKNOWN_ACTION = 0U,
54
    ALLOW_ACTION = 1U,
55
    DENY_ACTION = 2U,
56
    PROMPT_ACTION = 3U,
57
    EXPIRE_NEVER = 0U,
58
    EXPIRE_SESSION = 1U,
59
    EXPIRE_TIME = 2U,
60
    EXPIRE_POLICY = 3U
61
  };
62
63
  /* void add (in nsIURI uri, in string type, in uint32_t permission, [optional] in uint32_t expireType, [optional] in int64_t expireTime); */
64
  NS_IMETHOD Add(nsIURI *uri, const char * type, uint32_t permission, uint32_t expireType, int64_t expireTime) = 0;
65
66
  /* nsISimpleEnumerator getAllForURI (in nsIURI uri); */
67
  NS_IMETHOD GetAllForURI(nsIURI *uri, nsISimpleEnumerator **_retval) = 0;
68
69
  /* nsISimpleEnumerator getAllForPrincipal (in nsIPrincipal principal); */
70
  NS_IMETHOD GetAllForPrincipal(nsIPrincipal *principal, nsISimpleEnumerator **_retval) = 0;
71
72
  /* void addFromPrincipal (in nsIPrincipal principal, in string typed, in uint32_t permission, [optional] in uint32_t expireType, [optional] in int64_t expireTime); */
73
  NS_IMETHOD AddFromPrincipal(nsIPrincipal *principal, const char * typed, uint32_t permission, uint32_t expireType, int64_t expireTime) = 0;
74
75
  /* void remove (in nsIURI uri, in string type); */
76
  NS_IMETHOD Remove(nsIURI *uri, const char * type) = 0;
77
78
  /* void removeFromPrincipal (in nsIPrincipal principal, in string type); */
79
  NS_IMETHOD RemoveFromPrincipal(nsIPrincipal *principal, const char * type) = 0;
80
81
  /* void removePermission (in nsIPermission perm); */
82
  NS_IMETHOD RemovePermission(nsIPermission *perm) = 0;
83
84
  /* void removeAll (); */
85
  NS_IMETHOD RemoveAll(void) = 0;
86
87
  /* void removeAllSince (in int64_t since); */
88
  NS_IMETHOD RemoveAllSince(int64_t since) = 0;
89
90
  /* void removeByType (in string type); */
91
  NS_IMETHOD RemoveByType(const char * type) = 0;
92
93
  /* uint32_t testPermission (in nsIURI uri, in string type); */
94
  NS_IMETHOD TestPermission(nsIURI *uri, const char * type, uint32_t *_retval) = 0;
95
96
  /* uint32_t testPermissionFromPrincipal (in nsIPrincipal principal, in string type); */
97
  NS_IMETHOD TestPermissionFromPrincipal(nsIPrincipal *principal, const char * type, uint32_t *_retval) = 0;
98
99
  /* uint32_t testPermissionFromWindow (in mozIDOMWindow window, in string type); */
100
  NS_IMETHOD TestPermissionFromWindow(mozIDOMWindow *window, const char * type, uint32_t *_retval) = 0;
101
102
  /* uint32_t testExactPermission (in nsIURI uri, in string type); */
103
  NS_IMETHOD TestExactPermission(nsIURI *uri, const char * type, uint32_t *_retval) = 0;
104
105
  /* uint32_t testExactPermissionFromPrincipal (in nsIPrincipal principal, in string type); */
106
  NS_IMETHOD TestExactPermissionFromPrincipal(nsIPrincipal *principal, const char * type, uint32_t *_retval) = 0;
107
108
  /* uint32_t testExactPermanentPermission (in nsIPrincipal principal, in string type); */
109
  NS_IMETHOD TestExactPermanentPermission(nsIPrincipal *principal, const char * type, uint32_t *_retval) = 0;
110
111
  /* nsIPermission getPermissionObjectForURI (in nsIURI uri, in string type, in boolean exactHost); */
112
  NS_IMETHOD GetPermissionObjectForURI(nsIURI *uri, const char * type, bool exactHost, nsIPermission **_retval) = 0;
113
114
  /* nsIPermission getPermissionObject (in nsIPrincipal principal, in string type, in boolean exactHost); */
115
  NS_IMETHOD GetPermissionObject(nsIPrincipal *principal, const char * type, bool exactHost, nsIPermission **_retval) = 0;
116
117
  /* readonly attribute nsISimpleEnumerator enumerator; */
118
  NS_IMETHOD GetEnumerator(nsISimpleEnumerator **aEnumerator) = 0;
119
120
  /* void removePermissionsWithAttributes (in DOMString patternAsJSON); */
121
  NS_IMETHOD RemovePermissionsWithAttributes(const nsAString& patternAsJSON) = 0;
122
123
  /* void updateExpireTime (in nsIPrincipal principal, in string type, in boolean exactHost, in uint64_t sessionExpireTime, in uint64_t persistentExpireTime); */
124
  NS_IMETHOD UpdateExpireTime(nsIPrincipal *principal, const char * type, bool exactHost, uint64_t sessionExpireTime, uint64_t persistentExpireTime) = 0;
125
126
  /* void getPermissionsWithKey (in ACString permissionKey, out IPCPermissionArrayRef perms); */
127
  NS_IMETHOD GetPermissionsWithKey(const nsACString& permissionKey, nsTArray<IPC::Permission> & perms) = 0;
128
129
  /* void setPermissionsWithKey (in ACString permissionKey, in IPCPermissionArrayRef perms); */
130
  NS_IMETHOD SetPermissionsWithKey(const nsACString& permissionKey, nsTArray<IPC::Permission> & perms) = 0;
131
132
  /* void broadcastPermissionsForPrincipalToAllContentProcesses (in nsIPrincipal aPrincipal); */
133
  NS_IMETHOD BroadcastPermissionsForPrincipalToAllContentProcesses(nsIPrincipal *aPrincipal) = 0;
134
135
  /* void whenPermissionsAvailable (in nsIPrincipal aPrincipal, in nsIRunnable aRunnable); */
136
  NS_IMETHOD WhenPermissionsAvailable(nsIPrincipal *aPrincipal, nsIRunnable *aRunnable) = 0;
137
138
  /* [infallible] readonly attribute boolean hasPreloadPermissions; */
139
  NS_IMETHOD GetHasPreloadPermissions(bool *aHasPreloadPermissions) = 0;
140
  inline bool GetHasPreloadPermissions()
141
0
  {
142
0
    bool result;
143
0
    mozilla::DebugOnly<nsresult> rv = GetHasPreloadPermissions(&result);
144
0
    MOZ_ASSERT(NS_SUCCEEDED(rv));
145
0
    return result;
146
0
  }
147
148
};
149
150
  NS_DEFINE_STATIC_IID_ACCESSOR(nsIPermissionManager, NS_IPERMISSIONMANAGER_IID)
151
152
/* Use this macro when declaring classes that implement this interface. */
153
#define NS_DECL_NSIPERMISSIONMANAGER \
154
  NS_IMETHOD Add(nsIURI *uri, const char * type, uint32_t permission, uint32_t expireType, int64_t expireTime) override; \
155
  NS_IMETHOD GetAllForURI(nsIURI *uri, nsISimpleEnumerator **_retval) override; \
156
  NS_IMETHOD GetAllForPrincipal(nsIPrincipal *principal, nsISimpleEnumerator **_retval) override; \
157
  NS_IMETHOD AddFromPrincipal(nsIPrincipal *principal, const char * typed, uint32_t permission, uint32_t expireType, int64_t expireTime) override; \
158
  NS_IMETHOD Remove(nsIURI *uri, const char * type) override; \
159
  NS_IMETHOD RemoveFromPrincipal(nsIPrincipal *principal, const char * type) override; \
160
  NS_IMETHOD RemovePermission(nsIPermission *perm) override; \
161
  NS_IMETHOD RemoveAll(void) override; \
162
  NS_IMETHOD RemoveAllSince(int64_t since) override; \
163
  NS_IMETHOD RemoveByType(const char * type) override; \
164
  NS_IMETHOD TestPermission(nsIURI *uri, const char * type, uint32_t *_retval) override; \
165
  NS_IMETHOD TestPermissionFromPrincipal(nsIPrincipal *principal, const char * type, uint32_t *_retval) override; \
166
  NS_IMETHOD TestPermissionFromWindow(mozIDOMWindow *window, const char * type, uint32_t *_retval) override; \
167
  NS_IMETHOD TestExactPermission(nsIURI *uri, const char * type, uint32_t *_retval) override; \
168
  NS_IMETHOD TestExactPermissionFromPrincipal(nsIPrincipal *principal, const char * type, uint32_t *_retval) override; \
169
  NS_IMETHOD TestExactPermanentPermission(nsIPrincipal *principal, const char * type, uint32_t *_retval) override; \
170
  NS_IMETHOD GetPermissionObjectForURI(nsIURI *uri, const char * type, bool exactHost, nsIPermission **_retval) override; \
171
  NS_IMETHOD GetPermissionObject(nsIPrincipal *principal, const char * type, bool exactHost, nsIPermission **_retval) override; \
172
  NS_IMETHOD GetEnumerator(nsISimpleEnumerator **aEnumerator) override; \
173
  NS_IMETHOD RemovePermissionsWithAttributes(const nsAString& patternAsJSON) override; \
174
  NS_IMETHOD UpdateExpireTime(nsIPrincipal *principal, const char * type, bool exactHost, uint64_t sessionExpireTime, uint64_t persistentExpireTime) override; \
175
  NS_IMETHOD GetPermissionsWithKey(const nsACString& permissionKey, nsTArray<IPC::Permission> & perms) override; \
176
  NS_IMETHOD SetPermissionsWithKey(const nsACString& permissionKey, nsTArray<IPC::Permission> & perms) override; \
177
  NS_IMETHOD BroadcastPermissionsForPrincipalToAllContentProcesses(nsIPrincipal *aPrincipal) override; \
178
  NS_IMETHOD WhenPermissionsAvailable(nsIPrincipal *aPrincipal, nsIRunnable *aRunnable) override; \
179
  using nsIPermissionManager::GetHasPreloadPermissions; \
180
  NS_IMETHOD GetHasPreloadPermissions(bool *aHasPreloadPermissions) override; 
181
182
/* Use this macro when declaring the members of this interface when the
183
   class doesn't implement the interface. This is useful for forwarding. */
184
#define NS_DECL_NON_VIRTUAL_NSIPERMISSIONMANAGER \
185
  nsresult Add(nsIURI *uri, const char * type, uint32_t permission, uint32_t expireType, int64_t expireTime); \
186
  nsresult GetAllForURI(nsIURI *uri, nsISimpleEnumerator **_retval); \
187
  nsresult GetAllForPrincipal(nsIPrincipal *principal, nsISimpleEnumerator **_retval); \
188
  nsresult AddFromPrincipal(nsIPrincipal *principal, const char * typed, uint32_t permission, uint32_t expireType, int64_t expireTime); \
189
  nsresult Remove(nsIURI *uri, const char * type); \
190
  nsresult RemoveFromPrincipal(nsIPrincipal *principal, const char * type); \
191
  nsresult RemovePermission(nsIPermission *perm); \
192
  nsresult RemoveAll(void); \
193
  nsresult RemoveAllSince(int64_t since); \
194
  nsresult RemoveByType(const char * type); \
195
  nsresult TestPermission(nsIURI *uri, const char * type, uint32_t *_retval); \
196
  nsresult TestPermissionFromPrincipal(nsIPrincipal *principal, const char * type, uint32_t *_retval); \
197
  nsresult TestPermissionFromWindow(mozIDOMWindow *window, const char * type, uint32_t *_retval); \
198
  nsresult TestExactPermission(nsIURI *uri, const char * type, uint32_t *_retval); \
199
  nsresult TestExactPermissionFromPrincipal(nsIPrincipal *principal, const char * type, uint32_t *_retval); \
200
  nsresult TestExactPermanentPermission(nsIPrincipal *principal, const char * type, uint32_t *_retval); \
201
  nsresult GetPermissionObjectForURI(nsIURI *uri, const char * type, bool exactHost, nsIPermission **_retval); \
202
  nsresult GetPermissionObject(nsIPrincipal *principal, const char * type, bool exactHost, nsIPermission **_retval); \
203
  nsresult GetEnumerator(nsISimpleEnumerator **aEnumerator); \
204
  nsresult RemovePermissionsWithAttributes(const nsAString& patternAsJSON); \
205
  nsresult UpdateExpireTime(nsIPrincipal *principal, const char * type, bool exactHost, uint64_t sessionExpireTime, uint64_t persistentExpireTime); \
206
  nsresult GetPermissionsWithKey(const nsACString& permissionKey, nsTArray<IPC::Permission> & perms); \
207
  nsresult SetPermissionsWithKey(const nsACString& permissionKey, nsTArray<IPC::Permission> & perms); \
208
  nsresult BroadcastPermissionsForPrincipalToAllContentProcesses(nsIPrincipal *aPrincipal); \
209
  nsresult WhenPermissionsAvailable(nsIPrincipal *aPrincipal, nsIRunnable *aRunnable); \
210
  using nsIPermissionManager::GetHasPreloadPermissions; \
211
  nsresult GetHasPreloadPermissions(bool *aHasPreloadPermissions); 
212
213
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
214
#define NS_FORWARD_NSIPERMISSIONMANAGER(_to) \
215
  NS_IMETHOD Add(nsIURI *uri, const char * type, uint32_t permission, uint32_t expireType, int64_t expireTime) override { return _to Add(uri, type, permission, expireType, expireTime); } \
216
  NS_IMETHOD GetAllForURI(nsIURI *uri, nsISimpleEnumerator **_retval) override { return _to GetAllForURI(uri, _retval); } \
217
  NS_IMETHOD GetAllForPrincipal(nsIPrincipal *principal, nsISimpleEnumerator **_retval) override { return _to GetAllForPrincipal(principal, _retval); } \
218
  NS_IMETHOD AddFromPrincipal(nsIPrincipal *principal, const char * typed, uint32_t permission, uint32_t expireType, int64_t expireTime) override { return _to AddFromPrincipal(principal, typed, permission, expireType, expireTime); } \
219
  NS_IMETHOD Remove(nsIURI *uri, const char * type) override { return _to Remove(uri, type); } \
220
  NS_IMETHOD RemoveFromPrincipal(nsIPrincipal *principal, const char * type) override { return _to RemoveFromPrincipal(principal, type); } \
221
  NS_IMETHOD RemovePermission(nsIPermission *perm) override { return _to RemovePermission(perm); } \
222
  NS_IMETHOD RemoveAll(void) override { return _to RemoveAll(); } \
223
  NS_IMETHOD RemoveAllSince(int64_t since) override { return _to RemoveAllSince(since); } \
224
  NS_IMETHOD RemoveByType(const char * type) override { return _to RemoveByType(type); } \
225
  NS_IMETHOD TestPermission(nsIURI *uri, const char * type, uint32_t *_retval) override { return _to TestPermission(uri, type, _retval); } \
226
  NS_IMETHOD TestPermissionFromPrincipal(nsIPrincipal *principal, const char * type, uint32_t *_retval) override { return _to TestPermissionFromPrincipal(principal, type, _retval); } \
227
  NS_IMETHOD TestPermissionFromWindow(mozIDOMWindow *window, const char * type, uint32_t *_retval) override { return _to TestPermissionFromWindow(window, type, _retval); } \
228
  NS_IMETHOD TestExactPermission(nsIURI *uri, const char * type, uint32_t *_retval) override { return _to TestExactPermission(uri, type, _retval); } \
229
  NS_IMETHOD TestExactPermissionFromPrincipal(nsIPrincipal *principal, const char * type, uint32_t *_retval) override { return _to TestExactPermissionFromPrincipal(principal, type, _retval); } \
230
  NS_IMETHOD TestExactPermanentPermission(nsIPrincipal *principal, const char * type, uint32_t *_retval) override { return _to TestExactPermanentPermission(principal, type, _retval); } \
231
  NS_IMETHOD GetPermissionObjectForURI(nsIURI *uri, const char * type, bool exactHost, nsIPermission **_retval) override { return _to GetPermissionObjectForURI(uri, type, exactHost, _retval); } \
232
  NS_IMETHOD GetPermissionObject(nsIPrincipal *principal, const char * type, bool exactHost, nsIPermission **_retval) override { return _to GetPermissionObject(principal, type, exactHost, _retval); } \
233
  NS_IMETHOD GetEnumerator(nsISimpleEnumerator **aEnumerator) override { return _to GetEnumerator(aEnumerator); } \
234
  NS_IMETHOD RemovePermissionsWithAttributes(const nsAString& patternAsJSON) override { return _to RemovePermissionsWithAttributes(patternAsJSON); } \
235
  NS_IMETHOD UpdateExpireTime(nsIPrincipal *principal, const char * type, bool exactHost, uint64_t sessionExpireTime, uint64_t persistentExpireTime) override { return _to UpdateExpireTime(principal, type, exactHost, sessionExpireTime, persistentExpireTime); } \
236
  NS_IMETHOD GetPermissionsWithKey(const nsACString& permissionKey, nsTArray<IPC::Permission> & perms) override { return _to GetPermissionsWithKey(permissionKey, perms); } \
237
  NS_IMETHOD SetPermissionsWithKey(const nsACString& permissionKey, nsTArray<IPC::Permission> & perms) override { return _to SetPermissionsWithKey(permissionKey, perms); } \
238
  NS_IMETHOD BroadcastPermissionsForPrincipalToAllContentProcesses(nsIPrincipal *aPrincipal) override { return _to BroadcastPermissionsForPrincipalToAllContentProcesses(aPrincipal); } \
239
  NS_IMETHOD WhenPermissionsAvailable(nsIPrincipal *aPrincipal, nsIRunnable *aRunnable) override { return _to WhenPermissionsAvailable(aPrincipal, aRunnable); } \
240
  using nsIPermissionManager::GetHasPreloadPermissions; \
241
  NS_IMETHOD GetHasPreloadPermissions(bool *aHasPreloadPermissions) override { return _to GetHasPreloadPermissions(aHasPreloadPermissions); } 
242
243
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
244
#define NS_FORWARD_SAFE_NSIPERMISSIONMANAGER(_to) \
245
  NS_IMETHOD Add(nsIURI *uri, const char * type, uint32_t permission, uint32_t expireType, int64_t expireTime) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Add(uri, type, permission, expireType, expireTime); } \
246
  NS_IMETHOD GetAllForURI(nsIURI *uri, nsISimpleEnumerator **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAllForURI(uri, _retval); } \
247
  NS_IMETHOD GetAllForPrincipal(nsIPrincipal *principal, nsISimpleEnumerator **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAllForPrincipal(principal, _retval); } \
248
  NS_IMETHOD AddFromPrincipal(nsIPrincipal *principal, const char * typed, uint32_t permission, uint32_t expireType, int64_t expireTime) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AddFromPrincipal(principal, typed, permission, expireType, expireTime); } \
249
  NS_IMETHOD Remove(nsIURI *uri, const char * type) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Remove(uri, type); } \
250
  NS_IMETHOD RemoveFromPrincipal(nsIPrincipal *principal, const char * type) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveFromPrincipal(principal, type); } \
251
  NS_IMETHOD RemovePermission(nsIPermission *perm) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemovePermission(perm); } \
252
  NS_IMETHOD RemoveAll(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveAll(); } \
253
  NS_IMETHOD RemoveAllSince(int64_t since) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveAllSince(since); } \
254
  NS_IMETHOD RemoveByType(const char * type) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveByType(type); } \
255
  NS_IMETHOD TestPermission(nsIURI *uri, const char * type, uint32_t *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestPermission(uri, type, _retval); } \
256
  NS_IMETHOD TestPermissionFromPrincipal(nsIPrincipal *principal, const char * type, uint32_t *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestPermissionFromPrincipal(principal, type, _retval); } \
257
  NS_IMETHOD TestPermissionFromWindow(mozIDOMWindow *window, const char * type, uint32_t *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestPermissionFromWindow(window, type, _retval); } \
258
  NS_IMETHOD TestExactPermission(nsIURI *uri, const char * type, uint32_t *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestExactPermission(uri, type, _retval); } \
259
  NS_IMETHOD TestExactPermissionFromPrincipal(nsIPrincipal *principal, const char * type, uint32_t *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestExactPermissionFromPrincipal(principal, type, _retval); } \
260
  NS_IMETHOD TestExactPermanentPermission(nsIPrincipal *principal, const char * type, uint32_t *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestExactPermanentPermission(principal, type, _retval); } \
261
  NS_IMETHOD GetPermissionObjectForURI(nsIURI *uri, const char * type, bool exactHost, nsIPermission **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPermissionObjectForURI(uri, type, exactHost, _retval); } \
262
  NS_IMETHOD GetPermissionObject(nsIPrincipal *principal, const char * type, bool exactHost, nsIPermission **_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPermissionObject(principal, type, exactHost, _retval); } \
263
  NS_IMETHOD GetEnumerator(nsISimpleEnumerator **aEnumerator) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetEnumerator(aEnumerator); } \
264
  NS_IMETHOD RemovePermissionsWithAttributes(const nsAString& patternAsJSON) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemovePermissionsWithAttributes(patternAsJSON); } \
265
  NS_IMETHOD UpdateExpireTime(nsIPrincipal *principal, const char * type, bool exactHost, uint64_t sessionExpireTime, uint64_t persistentExpireTime) override { return !_to ? NS_ERROR_NULL_POINTER : _to->UpdateExpireTime(principal, type, exactHost, sessionExpireTime, persistentExpireTime); } \
266
  NS_IMETHOD GetPermissionsWithKey(const nsACString& permissionKey, nsTArray<IPC::Permission> & perms) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPermissionsWithKey(permissionKey, perms); } \
267
  NS_IMETHOD SetPermissionsWithKey(const nsACString& permissionKey, nsTArray<IPC::Permission> & perms) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetPermissionsWithKey(permissionKey, perms); } \
268
  NS_IMETHOD BroadcastPermissionsForPrincipalToAllContentProcesses(nsIPrincipal *aPrincipal) override { return !_to ? NS_ERROR_NULL_POINTER : _to->BroadcastPermissionsForPrincipalToAllContentProcesses(aPrincipal); } \
269
  NS_IMETHOD WhenPermissionsAvailable(nsIPrincipal *aPrincipal, nsIRunnable *aRunnable) override { return !_to ? NS_ERROR_NULL_POINTER : _to->WhenPermissionsAvailable(aPrincipal, aRunnable); } \
270
  NS_IMETHOD GetHasPreloadPermissions(bool *aHasPreloadPermissions) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHasPreloadPermissions(aHasPreloadPermissions); } 
271
272
0
#define NS_PERMISSIONMANAGER_CONTRACTID "@mozilla.org/permissionmanager;1"
273
#define PERM_CHANGE_NOTIFICATION "perm-changed"
274
275
#endif /* __gen_nsIPermissionManager_h__ */