|
1 /* -*- Mode: idl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ |
|
2 /* This Source Code Form is subject to the terms of the Mozilla Public |
|
3 * License, v. 2.0. If a copy of the MPL was not distributed with this |
|
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
|
5 |
|
6 #include "nsISupports.idl" |
|
7 |
|
8 [scriptable, uuid(bd9dc0fa-68ce-47d0-8859-6418c2ae8576)] |
|
9 interface nsIAuthPromptProvider : nsISupports |
|
10 { |
|
11 /** |
|
12 * Normal (non-proxy) prompt request. |
|
13 */ |
|
14 const uint32_t PROMPT_NORMAL = 0; |
|
15 |
|
16 /** |
|
17 * Proxy auth request. |
|
18 */ |
|
19 const uint32_t PROMPT_PROXY = 1; |
|
20 |
|
21 /** |
|
22 * Request a prompt interface for the given prompt reason; |
|
23 * @throws NS_ERROR_NOT_AVAILABLE if no prompt is allowed or |
|
24 * available for the given reason. |
|
25 * |
|
26 * @param aPromptReason The reason for the auth prompt; |
|
27 * one of #PROMPT_NORMAL or #PROMPT_PROXY |
|
28 * @param iid The desired interface, e.g. |
|
29 * NS_GET_IID(nsIAuthPrompt2). |
|
30 * @returns an nsIAuthPrompt2 interface, or throws NS_ERROR_NOT_AVAILABLE |
|
31 */ |
|
32 void getAuthPrompt(in uint32_t aPromptReason, in nsIIDRef iid, |
|
33 [iid_is(iid),retval] out nsQIResult result); |
|
34 }; |