1 /* -*- Mode: C++; tab-width: 8; 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/. */
6 #include
"nsISupports.idl"
9 * Interface for an object that wants to gather "random"
10 * data to be used for entropy purposes.
15 * If anyone wants to collect the entropy distributed by the
16 * event handler, they'll have to implement this CONTRACTID
18 #define NS_ENTROPYCOLLECTOR_CONTRACTID
"@mozilla.org/security/entropy;1"
20 /* Buffer type - for passing random data to the entropy
23 [ptr] native buffer
(void);
25 [uuid(6f883680
-ab9d
-11d4
-9978-00b0d02354a0
)]
26 interface nsIEntropyCollector
: nsISupports
30 * Add the following bytes to the pool of data to be used
31 * in gathering entropy.
33 void randomUpdate
(in buffer entropy
, in long bufLen
);