1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM /builds/slave/m-beta-lnx-codecoverage/build/netwerk/base/public/nsICryptoHMAC.idl
3 : */
4 :
5 : #ifndef __gen_nsICryptoHMAC_h__
6 : #define __gen_nsICryptoHMAC_h__
7 :
8 :
9 : #ifndef __gen_nsISupports_h__
10 : #include "nsISupports.h"
11 : #endif
12 :
13 : /* For IDL files that don't want to include root IDL files. */
14 : #ifndef NS_NO_VTABLE
15 : #define NS_NO_VTABLE
16 : #endif
17 : class nsIInputStream; /* forward declaration */
18 :
19 : class nsIKeyObject; /* forward declaration */
20 :
21 :
22 : /* starting interface: nsICryptoHMAC */
23 : #define NS_ICRYPTOHMAC_IID_STR "8feb4c7c-1641-4a7b-bc6d-1964e2099497"
24 :
25 : #define NS_ICRYPTOHMAC_IID \
26 : {0x8feb4c7c, 0x1641, 0x4a7b, \
27 : { 0xbc, 0x6d, 0x19, 0x64, 0xe2, 0x09, 0x94, 0x97 }}
28 :
29 1558 : class NS_NO_VTABLE NS_SCRIPTABLE nsICryptoHMAC : public nsISupports {
30 : public:
31 :
32 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_ICRYPTOHMAC_IID)
33 :
34 : enum {
35 : MD2 = 1,
36 : MD5 = 2,
37 : SHA1 = 3,
38 : SHA256 = 4,
39 : SHA384 = 5,
40 : SHA512 = 6
41 : };
42 :
43 : /* void init (in unsigned long aAlgorithm, in nsIKeyObject aKeyObject); */
44 : NS_SCRIPTABLE NS_IMETHOD Init(PRUint32 aAlgorithm, nsIKeyObject *aKeyObject) = 0;
45 :
46 : /* void update ([array, size_is (aLen), const] in octet aData, in unsigned long aLen); */
47 : NS_SCRIPTABLE NS_IMETHOD Update(const PRUint8 *aData, PRUint32 aLen) = 0;
48 :
49 : /* void updateFromStream (in nsIInputStream aStream, in unsigned long aLen); */
50 : NS_SCRIPTABLE NS_IMETHOD UpdateFromStream(nsIInputStream *aStream, PRUint32 aLen) = 0;
51 :
52 : /* ACString finish (in boolean aASCII); */
53 : NS_SCRIPTABLE NS_IMETHOD Finish(bool aASCII, nsACString & _retval NS_OUTPARAM) = 0;
54 :
55 : /* void reset (); */
56 : NS_SCRIPTABLE NS_IMETHOD Reset(void) = 0;
57 :
58 : };
59 :
60 : NS_DEFINE_STATIC_IID_ACCESSOR(nsICryptoHMAC, NS_ICRYPTOHMAC_IID)
61 :
62 : /* Use this macro when declaring classes that implement this interface. */
63 : #define NS_DECL_NSICRYPTOHMAC \
64 : NS_SCRIPTABLE NS_IMETHOD Init(PRUint32 aAlgorithm, nsIKeyObject *aKeyObject); \
65 : NS_SCRIPTABLE NS_IMETHOD Update(const PRUint8 *aData, PRUint32 aLen); \
66 : NS_SCRIPTABLE NS_IMETHOD UpdateFromStream(nsIInputStream *aStream, PRUint32 aLen); \
67 : NS_SCRIPTABLE NS_IMETHOD Finish(bool aASCII, nsACString & _retval NS_OUTPARAM); \
68 : NS_SCRIPTABLE NS_IMETHOD Reset(void);
69 :
70 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
71 : #define NS_FORWARD_NSICRYPTOHMAC(_to) \
72 : NS_SCRIPTABLE NS_IMETHOD Init(PRUint32 aAlgorithm, nsIKeyObject *aKeyObject) { return _to Init(aAlgorithm, aKeyObject); } \
73 : NS_SCRIPTABLE NS_IMETHOD Update(const PRUint8 *aData, PRUint32 aLen) { return _to Update(aData, aLen); } \
74 : NS_SCRIPTABLE NS_IMETHOD UpdateFromStream(nsIInputStream *aStream, PRUint32 aLen) { return _to UpdateFromStream(aStream, aLen); } \
75 : NS_SCRIPTABLE NS_IMETHOD Finish(bool aASCII, nsACString & _retval NS_OUTPARAM) { return _to Finish(aASCII, _retval); } \
76 : NS_SCRIPTABLE NS_IMETHOD Reset(void) { return _to Reset(); }
77 :
78 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
79 : #define NS_FORWARD_SAFE_NSICRYPTOHMAC(_to) \
80 : NS_SCRIPTABLE NS_IMETHOD Init(PRUint32 aAlgorithm, nsIKeyObject *aKeyObject) { return !_to ? NS_ERROR_NULL_POINTER : _to->Init(aAlgorithm, aKeyObject); } \
81 : NS_SCRIPTABLE NS_IMETHOD Update(const PRUint8 *aData, PRUint32 aLen) { return !_to ? NS_ERROR_NULL_POINTER : _to->Update(aData, aLen); } \
82 : NS_SCRIPTABLE NS_IMETHOD UpdateFromStream(nsIInputStream *aStream, PRUint32 aLen) { return !_to ? NS_ERROR_NULL_POINTER : _to->UpdateFromStream(aStream, aLen); } \
83 : NS_SCRIPTABLE NS_IMETHOD Finish(bool aASCII, nsACString & _retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->Finish(aASCII, _retval); } \
84 : NS_SCRIPTABLE NS_IMETHOD Reset(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->Reset(); }
85 :
86 : #if 0
87 : /* Use the code below as a template for the implementation class for this interface. */
88 :
89 : /* Header file */
90 : class nsCryptoHMAC : public nsICryptoHMAC
91 : {
92 : public:
93 : NS_DECL_ISUPPORTS
94 : NS_DECL_NSICRYPTOHMAC
95 :
96 : nsCryptoHMAC();
97 :
98 : private:
99 : ~nsCryptoHMAC();
100 :
101 : protected:
102 : /* additional members */
103 : };
104 :
105 : /* Implementation file */
106 : NS_IMPL_ISUPPORTS1(nsCryptoHMAC, nsICryptoHMAC)
107 :
108 : nsCryptoHMAC::nsCryptoHMAC()
109 : {
110 : /* member initializers and constructor code */
111 : }
112 :
113 : nsCryptoHMAC::~nsCryptoHMAC()
114 : {
115 : /* destructor code */
116 : }
117 :
118 : /* void init (in unsigned long aAlgorithm, in nsIKeyObject aKeyObject); */
119 : NS_IMETHODIMP nsCryptoHMAC::Init(PRUint32 aAlgorithm, nsIKeyObject *aKeyObject)
120 : {
121 : return NS_ERROR_NOT_IMPLEMENTED;
122 : }
123 :
124 : /* void update ([array, size_is (aLen), const] in octet aData, in unsigned long aLen); */
125 : NS_IMETHODIMP nsCryptoHMAC::Update(const PRUint8 *aData, PRUint32 aLen)
126 : {
127 : return NS_ERROR_NOT_IMPLEMENTED;
128 : }
129 :
130 : /* void updateFromStream (in nsIInputStream aStream, in unsigned long aLen); */
131 : NS_IMETHODIMP nsCryptoHMAC::UpdateFromStream(nsIInputStream *aStream, PRUint32 aLen)
132 : {
133 : return NS_ERROR_NOT_IMPLEMENTED;
134 : }
135 :
136 : /* ACString finish (in boolean aASCII); */
137 : NS_IMETHODIMP nsCryptoHMAC::Finish(bool aASCII, nsACString & _retval NS_OUTPARAM)
138 : {
139 : return NS_ERROR_NOT_IMPLEMENTED;
140 : }
141 :
142 : /* void reset (); */
143 : NS_IMETHODIMP nsCryptoHMAC::Reset()
144 : {
145 : return NS_ERROR_NOT_IMPLEMENTED;
146 : }
147 :
148 : /* End of implementation class template. */
149 : #endif
150 :
151 :
152 : #endif /* __gen_nsICryptoHMAC_h__ */
|