Line data Source code
1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM ../../../dist/idl/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 0 : class NS_NO_VTABLE nsICryptoHMAC : public nsISupports {
30 : public:
31 :
32 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_ICRYPTOHMAC_IID)
33 :
34 : enum {
35 : MD5 = 2,
36 : SHA1 = 3,
37 : SHA256 = 4,
38 : SHA384 = 5,
39 : SHA512 = 6
40 : };
41 :
42 : /* [must_use] void init (in unsigned long aAlgorithm, in nsIKeyObject aKeyObject); */
43 : MOZ_MUST_USE NS_IMETHOD Init(uint32_t aAlgorithm, nsIKeyObject *aKeyObject) = 0;
44 :
45 : /* [must_use] void update ([array, size_is (aLen), const] in octet aData, in unsigned long aLen); */
46 : MOZ_MUST_USE NS_IMETHOD Update(const uint8_t *aData, uint32_t aLen) = 0;
47 :
48 : /* [must_use] void updateFromStream (in nsIInputStream aStream, in unsigned long aLen); */
49 : MOZ_MUST_USE NS_IMETHOD UpdateFromStream(nsIInputStream *aStream, uint32_t aLen) = 0;
50 :
51 : /* [must_use] ACString finish (in boolean aASCII); */
52 : MOZ_MUST_USE NS_IMETHOD Finish(bool aASCII, nsACString & _retval) = 0;
53 :
54 : /* [must_use] void reset (); */
55 : MOZ_MUST_USE NS_IMETHOD Reset(void) = 0;
56 :
57 : };
58 :
59 : NS_DEFINE_STATIC_IID_ACCESSOR(nsICryptoHMAC, NS_ICRYPTOHMAC_IID)
60 :
61 : /* Use this macro when declaring classes that implement this interface. */
62 : #define NS_DECL_NSICRYPTOHMAC \
63 : MOZ_MUST_USE NS_IMETHOD Init(uint32_t aAlgorithm, nsIKeyObject *aKeyObject) override; \
64 : MOZ_MUST_USE NS_IMETHOD Update(const uint8_t *aData, uint32_t aLen) override; \
65 : MOZ_MUST_USE NS_IMETHOD UpdateFromStream(nsIInputStream *aStream, uint32_t aLen) override; \
66 : MOZ_MUST_USE NS_IMETHOD Finish(bool aASCII, nsACString & _retval) override; \
67 : MOZ_MUST_USE NS_IMETHOD Reset(void) override;
68 :
69 : /* Use this macro when declaring the members of this interface when the
70 : class doesn't implement the interface. This is useful for forwarding. */
71 : #define NS_DECL_NON_VIRTUAL_NSICRYPTOHMAC \
72 : MOZ_MUST_USE nsresult Init(uint32_t aAlgorithm, nsIKeyObject *aKeyObject); \
73 : MOZ_MUST_USE nsresult Update(const uint8_t *aData, uint32_t aLen); \
74 : MOZ_MUST_USE nsresult UpdateFromStream(nsIInputStream *aStream, uint32_t aLen); \
75 : MOZ_MUST_USE nsresult Finish(bool aASCII, nsACString & _retval); \
76 : MOZ_MUST_USE nsresult Reset(void);
77 :
78 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
79 : #define NS_FORWARD_NSICRYPTOHMAC(_to) \
80 : MOZ_MUST_USE NS_IMETHOD Init(uint32_t aAlgorithm, nsIKeyObject *aKeyObject) override { return _to Init(aAlgorithm, aKeyObject); } \
81 : MOZ_MUST_USE NS_IMETHOD Update(const uint8_t *aData, uint32_t aLen) override { return _to Update(aData, aLen); } \
82 : MOZ_MUST_USE NS_IMETHOD UpdateFromStream(nsIInputStream *aStream, uint32_t aLen) override { return _to UpdateFromStream(aStream, aLen); } \
83 : MOZ_MUST_USE NS_IMETHOD Finish(bool aASCII, nsACString & _retval) override { return _to Finish(aASCII, _retval); } \
84 : MOZ_MUST_USE NS_IMETHOD Reset(void) override { return _to Reset(); }
85 :
86 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
87 : #define NS_FORWARD_SAFE_NSICRYPTOHMAC(_to) \
88 : MOZ_MUST_USE NS_IMETHOD Init(uint32_t aAlgorithm, nsIKeyObject *aKeyObject) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Init(aAlgorithm, aKeyObject); } \
89 : MOZ_MUST_USE NS_IMETHOD Update(const uint8_t *aData, uint32_t aLen) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Update(aData, aLen); } \
90 : MOZ_MUST_USE NS_IMETHOD UpdateFromStream(nsIInputStream *aStream, uint32_t aLen) override { return !_to ? NS_ERROR_NULL_POINTER : _to->UpdateFromStream(aStream, aLen); } \
91 : MOZ_MUST_USE NS_IMETHOD Finish(bool aASCII, nsACString & _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Finish(aASCII, _retval); } \
92 : MOZ_MUST_USE NS_IMETHOD Reset(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Reset(); }
93 :
94 : #if 0
95 : /* Use the code below as a template for the implementation class for this interface. */
96 :
97 : /* Header file */
98 : class nsCryptoHMAC : public nsICryptoHMAC
99 : {
100 : public:
101 : NS_DECL_ISUPPORTS
102 : NS_DECL_NSICRYPTOHMAC
103 :
104 : nsCryptoHMAC();
105 :
106 : private:
107 : ~nsCryptoHMAC();
108 :
109 : protected:
110 : /* additional members */
111 : };
112 :
113 : /* Implementation file */
114 : NS_IMPL_ISUPPORTS(nsCryptoHMAC, nsICryptoHMAC)
115 :
116 : nsCryptoHMAC::nsCryptoHMAC()
117 : {
118 : /* member initializers and constructor code */
119 : }
120 :
121 : nsCryptoHMAC::~nsCryptoHMAC()
122 : {
123 : /* destructor code */
124 : }
125 :
126 : /* [must_use] void init (in unsigned long aAlgorithm, in nsIKeyObject aKeyObject); */
127 : MOZ_MUST_USE NS_IMETHODIMP nsCryptoHMAC::Init(uint32_t aAlgorithm, nsIKeyObject *aKeyObject)
128 : {
129 : return NS_ERROR_NOT_IMPLEMENTED;
130 : }
131 :
132 : /* [must_use] void update ([array, size_is (aLen), const] in octet aData, in unsigned long aLen); */
133 : MOZ_MUST_USE NS_IMETHODIMP nsCryptoHMAC::Update(const uint8_t *aData, uint32_t aLen)
134 : {
135 : return NS_ERROR_NOT_IMPLEMENTED;
136 : }
137 :
138 : /* [must_use] void updateFromStream (in nsIInputStream aStream, in unsigned long aLen); */
139 : MOZ_MUST_USE NS_IMETHODIMP nsCryptoHMAC::UpdateFromStream(nsIInputStream *aStream, uint32_t aLen)
140 : {
141 : return NS_ERROR_NOT_IMPLEMENTED;
142 : }
143 :
144 : /* [must_use] ACString finish (in boolean aASCII); */
145 : MOZ_MUST_USE NS_IMETHODIMP nsCryptoHMAC::Finish(bool aASCII, nsACString & _retval)
146 : {
147 : return NS_ERROR_NOT_IMPLEMENTED;
148 : }
149 :
150 : /* [must_use] void reset (); */
151 : MOZ_MUST_USE NS_IMETHODIMP nsCryptoHMAC::Reset()
152 : {
153 : return NS_ERROR_NOT_IMPLEMENTED;
154 : }
155 :
156 : /* End of implementation class template. */
157 : #endif
158 :
159 :
160 : #endif /* __gen_nsICryptoHMAC_h__ */
|