michael@0: /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- michael@0: * 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 nsIX509CertList; michael@0: michael@0: /** michael@0: * This represents a service to access and manipulate michael@0: * X.509 certificates stored in a database through methods michael@0: * not in nsIX509CertDB, which is frozen michael@0: * michael@0: */ michael@0: [scriptable, uuid(e0df4784-6560-45bf-b1b7-86076a0e8381)] michael@0: interface nsIX509CertDB2 : nsISupports { michael@0: michael@0: /* michael@0: * Add a cert to a cert DB from a base64 encoded string. michael@0: * michael@0: * @param base64 The raw representation of a certificate, michael@0: * encoded as Base 64. michael@0: * @param aTrust decoded by CERT_DecodeTrustString. 3 comma separated characters, michael@0: * indicating SSL, Email, and Obj signing trust michael@0: * @param aName name of the cert for display purposes. michael@0: */ michael@0: void addCertFromBase64(in string base64, in string aTrust, in string aName); michael@0: michael@0: /* michael@0: * Get all the known certs in the database michael@0: */ michael@0: nsIX509CertList getCerts(); michael@0: }; michael@0: