michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: #include "nsISupports.idl" michael@0: michael@0: interface nsIInterfaceRequestor; michael@0: michael@0: /** michael@0: * nsIClientAuthDialog michael@0: * Provides UI for SSL client-auth dialogs. michael@0: */ michael@0: [scriptable, uuid(fa4c7520-1433-11d5-ba24-00108303b117)] michael@0: interface nsIClientAuthDialogs : nsISupports michael@0: { michael@0: /** michael@0: * display michael@0: * UI shown when a user is asked to do SSL client auth. michael@0: */ michael@0: void ChooseCertificate(in nsIInterfaceRequestor ctx, michael@0: in wstring cn, michael@0: in wstring organization, michael@0: in wstring issuer, michael@0: [array, size_is(count)] in wstring certNickList, michael@0: [array, size_is(count)] in wstring certDetailsList, michael@0: in unsigned long count, michael@0: out long selectedIndex, michael@0: out boolean canceled); michael@0: }; michael@0: michael@0: [scriptable, uuid(95c4373e-bdd4-4a63-b431-f5b000367721)] michael@0: interface nsIClientAuthUserDecision : nsISupports michael@0: { michael@0: attribute boolean rememberClientAuthCertificate; michael@0: }; michael@0: michael@0: %{C++ michael@0: #define NS_CLIENTAUTHDIALOGS_CONTRACTID "@mozilla.org/nsClientAuthDialogs;1" michael@0: %}