NSData+Hashing.m File Reference

#import "NSData+Hashing.h"
#include <openssl/sha.h>

Include dependency graph for NSData+Hashing.m:


Defines

#define HEComputeDigest(method)
#define HEComputeDigestNSData(method)
#define HEComputeDigestNSString(method)
#define SHA1_CTX   SHA_CTX
#define SHA1_DIGEST_LENGTH   SHA_DIGEST_LENGTH

Define Documentation

#define HEComputeDigest ( method   ) 

Value:

method##_CTX ctx;                                                   \
    unsigned char digest[method##_DIGEST_LENGTH];                       \
    method##_Init(&ctx);                                                \
    method##_Update(&ctx, [self bytes], [self length]);                 \
    method##_Final(digest, &ctx);

#define HEComputeDigestNSData ( method   ) 

Value:

HEComputeDigest(method)                                             \
    return [NSData dataWithBytes:digest length:method##_DIGEST_LENGTH];

#define HEComputeDigestNSString ( method   ) 

Value:

static char __HEHexDigits[] = "0123456789abcdef";                   \
    unsigned char digestString[2*method##_DIGEST_LENGTH];               \
    unsigned int i;                                                     \
    HEComputeDigest(method)                                             \
    for(i=0; i<method##_DIGEST_LENGTH; i++) {                           \
        digestString[2*i]   = __HEHexDigits[digest[i] >> 4];            \
        digestString[2*i+1] = __HEHexDigits[digest[i] & 0x0f];          \
    }                                                                   \
    return [NSString stringWithCString:(char *)digestString length:2*method##_DIGEST_LENGTH];

#define SHA1_CTX   SHA_CTX

#define SHA1_DIGEST_LENGTH   SHA_DIGEST_LENGTH


Generated on Mon Dec 8 22:57:08 2008 for CocoaGit by  doxygen 1.5.7