if(hmac->sha1Context == NULL) {
hmac->sha1Context = sha1Alloc();
if(hmac->sha1Context == NULL) {
if(hmac->sha1Context == NULL) {
hmac->sha1Context = sha1Alloc();
if(hmac->sha1Context == NULL) {
memset (hmac->k_opad + keyLen, 0x5c, kSHA1BlockSize - keyLen);
/* remainder happens in update */
memset (hmac->k_opad + keyLen, 0x5c, kSHA1BlockSize - keyLen);
/* remainder happens in update */
/* if there is another update coming, it gets added in to existing
* context; if the next step is a final, the current digest state is used. */
/* if there is another update coming, it gets added in to existing
* context; if the next step is a final, the current digest state is used. */
void *resultPtr) // caller mallocs, must be HMACSHA1_OUT_SIZE bytes
{
memcpy (resultPtr, sha1Digest (hmac->sha1Context), kSHA1DigestSize);
void *resultPtr) // caller mallocs, must be HMACSHA1_OUT_SIZE bytes
{
memcpy (resultPtr, sha1Digest (hmac->sha1Context), kSHA1DigestSize);