2007-08-16 04:43:12 +04:00
|
|
|
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
2012-05-21 15:12:37 +04:00
|
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
2007-08-16 04:43:12 +04:00
|
|
|
|
|
|
|
|
|
|
|
#include "nsISupports.idl"
|
|
|
|
|
2008-11-02 15:13:48 +03:00
|
|
|
interface nsIPluginTag;
|
2010-09-02 05:35:06 +04:00
|
|
|
interface nsIVariant;
|
2008-11-02 15:13:48 +03:00
|
|
|
|
2014-10-15 17:23:22 +04:00
|
|
|
[scriptable, uuid(a6dcc76e-9f62-4cc1-a470-b483a1a6f096)]
|
2007-08-16 04:43:12 +04:00
|
|
|
interface nsIBlocklistService : nsISupports
|
|
|
|
{
|
2008-11-02 15:13:48 +03:00
|
|
|
// Indicates that the item does not appear in the blocklist.
|
|
|
|
const unsigned long STATE_NOT_BLOCKED = 0;
|
|
|
|
// Indicates that the item is in the blocklist but the problem is not severe
|
|
|
|
// enough to warant forcibly blocking.
|
|
|
|
const unsigned long STATE_SOFTBLOCKED = 1;
|
|
|
|
// Indicates that the item should be blocked and never used.
|
|
|
|
const unsigned long STATE_BLOCKED = 2;
|
2009-10-02 15:26:04 +04:00
|
|
|
// Indicates that the item is considered outdated, and there is a known
|
|
|
|
// update available.
|
|
|
|
const unsigned long STATE_OUTDATED = 3;
|
2012-07-11 19:56:34 +04:00
|
|
|
// Indicates that the item is vulnerable and there is an update.
|
|
|
|
const unsigned long STATE_VULNERABLE_UPDATE_AVAILABLE = 4;
|
|
|
|
// Indicates that the item is vulnerable and there is no update.
|
|
|
|
const unsigned long STATE_VULNERABLE_NO_UPDATE = 5;
|
2008-11-02 15:13:48 +03:00
|
|
|
|
2018-04-23 19:11:34 +03:00
|
|
|
// Unused; Please increment if we add more blocklist states.
|
|
|
|
const unsigned long STATE_MAX = 6;
|
|
|
|
|
2008-11-02 15:13:48 +03:00
|
|
|
/**
|
|
|
|
* Determine the blocklist state of a plugin
|
|
|
|
* @param plugin
|
|
|
|
* The plugin to get the state for
|
|
|
|
* @param appVersion
|
|
|
|
* The version of the application we are checking in the blocklist.
|
|
|
|
* If this parameter is null, the version of the running application
|
|
|
|
* is used.
|
|
|
|
* @param toolkitVersion
|
|
|
|
* The version of the toolkit we are checking in the blocklist.
|
|
|
|
* If this parameter is null, the version of the running toolkit
|
|
|
|
* is used.
|
2018-04-23 19:11:34 +03:00
|
|
|
* @returns Promise that resolves to the STATE constant.
|
2008-11-02 15:13:48 +03:00
|
|
|
*/
|
2018-04-30 22:12:15 +03:00
|
|
|
Promise getPluginBlocklistState(in nsIPluginTag plugin,
|
|
|
|
[optional] in AString appVersion,
|
|
|
|
[optional] in AString toolkitVersion);
|
2011-05-26 01:31:56 +04:00
|
|
|
|
2018-03-06 19:31:24 +03:00
|
|
|
readonly attribute boolean isLoaded;
|
2010-09-02 05:35:06 +04:00
|
|
|
};
|