Back to index

lightning-sunbird  0.9+nobinonly
Public Member Functions | Public Attributes | Private Member Functions | Private Attributes
nsCryptoHash Class Reference

#include <nsNSSComponent.h>

Inheritance diagram for nsCryptoHash:
Inheritance graph
[legend]
Collaboration diagram for nsCryptoHash:
Collaboration graph
[legend]

List of all members.

Public Member Functions

NS_DECL_ISUPPORTS
NS_DECL_NSICRYPTOHASH 
nsCryptoHash ()
void init (in unsigned long aAlgorithm)
 Initialize the hashing object.
void initWithString (in ACString aAlgorithm)
 Initialize the hashing object.
void update ([const, array, size_is(aLen)] in octet aData, in unsigned long aLen)
void updateFromStream (in nsIInputStream aStream, in unsigned long aLen)
 Calculates and updates a new hash based on a given data stream.
ACString finish (in PRBool aASCII)
 Completes this hash object and produces the actual hash data.

Public Attributes

const short MD2 = 1
 Hashing Algorithms.
const short MD5 = 2
const short SHA1 = 3
const short SHA256 = 4
const short SHA384 = 5
const short SHA512 = 6

Private Member Functions

 ~nsCryptoHash ()

Private Attributes

HASHContext * mHashContext

Detailed Description

Definition at line 167 of file nsNSSComponent.h.


Constructor & Destructor Documentation

Definition at line 2132 of file nsNSSComponent.cpp.

Definition at line 2137 of file nsNSSComponent.cpp.

Here is the call graph for this function:


Member Function Documentation

ACString nsICryptoHash::finish ( in PRBool  aASCII) [inherited]

Completes this hash object and produces the actual hash data.

Parameters:
aASCIIif true then the returned value is a base-64 encoded string. if false, then the returned value is binary data.
Returns:
a hash of the data that was read by this object. This can be either binary data or base 64 encoded.
Exceptions:
NS_ERROR_NOT_INITIALIZEDif |init| has not been called.

NOTE: This method may be called any time after |init| is called. This call resets the object to its pre-init state.

void nsICryptoHash::init ( in unsigned long  aAlgorithm) [inherited]

Initialize the hashing object.

This method may be called multiple times with different algorithm types.

Parameters:
aAlgorithmthe algorithm type to be used. This value must be one of the above valid algorithm types.
Exceptions:
NS_ERROR_INVALID_ARGif an unsupported algorithm type is passed.

NOTE: This method or initWithString must be called before any other method on this interface is called.

void nsICryptoHash::initWithString ( in ACString  aAlgorithm) [inherited]

Initialize the hashing object.

This method may be called multiple times with different algorithm types.

Parameters:
aAlgorithmthe algorithm type to be used.
Exceptions:
NS_ERROR_INVALID_ARGif an unsupported algorithm type is passed.

NOTE: This method or init must be called before any other method on this interface is called.

void nsICryptoHash::update ( [const, array, size_is(aLen)] in octet  aData,
in unsigned long  aLen 
) [inherited]
Parameters:
aDataa buffer to calculate the hash over
aLenthe length of the buffer |aData|
Exceptions:
NS_ERROR_NOT_INITIALIZEDif |init| has not been called.
void nsICryptoHash::updateFromStream ( in nsIInputStream  aStream,
in unsigned long  aLen 
) [inherited]

Calculates and updates a new hash based on a given data stream.

Parameters:
aStreaman input stream to read from.
aLenhow much to read from the given |aStream|. Passing PR_UINT32_MAX indicates that all data available will be used to update the hash.
Exceptions:
NS_ERROR_NOT_INITIALIZEDif |init| has not been called.
NS_ERROR_NOT_AVAILABLEif the requested amount of data to be calculated into the hash is not available.

Member Data Documentation

const short nsICryptoHash::MD2 = 1 [inherited]

Hashing Algorithms.

These values are to be used by the |init| method to indicate which hashing function to use. These values map directly onto the values defined in mozilla/security/nss/lib/cryptohi/hasht.h.

Definition at line 54 of file nsICryptoHash.idl.

const short nsICryptoHash::MD5 = 2 [inherited]

Definition at line 55 of file nsICryptoHash.idl.

HASHContext* nsCryptoHash::mHashContext [private]

Definition at line 177 of file nsNSSComponent.h.

const short nsICryptoHash::SHA1 = 3 [inherited]

Definition at line 56 of file nsICryptoHash.idl.

const short nsICryptoHash::SHA256 = 4 [inherited]

Definition at line 57 of file nsICryptoHash.idl.

const short nsICryptoHash::SHA384 = 5 [inherited]

Definition at line 58 of file nsICryptoHash.idl.

const short nsICryptoHash::SHA512 = 6 [inherited]

Definition at line 59 of file nsICryptoHash.idl.


The documentation for this class was generated from the following files: