* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTOR(S) ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTOR(S) BE LIABLE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTOR(S) BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
*
* $From: sha2.c,v 1.1 2001/11/08 00:01:51 adg Exp adg $
*
- * $PostgreSQL: pgsql/contrib/pgcrypto/sha2.c,v 1.9 2007/04/06 05:36:50 tgl Exp $
+ * contrib/pgcrypto/sha2.c
*/
#include "postgres.h"
#include <sys/param.h>
+#include "px.h"
#include "sha2.h"
/*
(x) = ((tmp & 0xffff0000ffff0000ULL) >> 16) | \
((tmp & 0x0000ffff0000ffffULL) << 16); \
}
-#endif /* not bigendian */
+#endif /* not bigendian */
/*
* Macro for incrementally adding the unsigned 64-bit integer n to the
*
* NOTE: The naming of R and S appears backwards here (R is a SHIFT and
* S is a ROTATION) because the SHA-256/384/512 description document
- * (see http://csrc.nist.gov/cryptval/shs/sha256-384-512.pdf) uses this
- * same "backwards" definition.
+ * (see http://www.iwar.org.uk/comsec/resources/cipher/sha256-384-512.pdf)
+ * uses this same "backwards" definition.
*/
/* Shift-right (used in SHA-256, SHA-384, and SHA-512): */
#define R(b,x) ((x) >> (b))
/*** SHA-256: *********************************************************/
void
-SHA256_Init(SHA256_CTX * context)
+SHA256_Init(SHA256_CTX *context)
{
if (context == NULL)
return;
} while(0)
static void
-SHA256_Transform(SHA256_CTX * context, const uint8 *data)
+SHA256_Transform(SHA256_CTX *context, const uint8 *data)
{
uint32 a,
b,
#else /* SHA2_UNROLL_TRANSFORM */
static void
-SHA256_Transform(SHA256_CTX * context, const uint8 *data)
+SHA256_Transform(SHA256_CTX *context, const uint8 *data)
{
uint32 a,
b,
#endif /* SHA2_UNROLL_TRANSFORM */
void
-SHA256_Update(SHA256_CTX * context, const uint8 *data, size_t len)
+SHA256_Update(SHA256_CTX *context, const uint8 *data, size_t len)
{
size_t freespace,
usedspace;
}
static void
-SHA256_Last(SHA256_CTX * context)
+SHA256_Last(SHA256_CTX *context)
{
unsigned int usedspace;
}
void
-SHA256_Final(uint8 digest[], SHA256_CTX * context)
+SHA256_Final(uint8 digest[], SHA256_CTX *context)
{
/* If no digest buffer is passed, we don't bother doing this: */
if (digest != NULL)
}
/* Clean up state data: */
- memset(context, 0, sizeof(*context));
+ px_memset(context, 0, sizeof(*context));
}
/*** SHA-512: *********************************************************/
void
-SHA512_Init(SHA512_CTX * context)
+SHA512_Init(SHA512_CTX *context)
{
if (context == NULL)
return;
} while(0)
static void
-SHA512_Transform(SHA512_CTX * context, const uint8 *data)
+SHA512_Transform(SHA512_CTX *context, const uint8 *data)
{
uint64 a,
b,
#else /* SHA2_UNROLL_TRANSFORM */
static void
-SHA512_Transform(SHA512_CTX * context, const uint8 *data)
+SHA512_Transform(SHA512_CTX *context, const uint8 *data)
{
uint64 a,
b,
#endif /* SHA2_UNROLL_TRANSFORM */
void
-SHA512_Update(SHA512_CTX * context, const uint8 *data, size_t len)
+SHA512_Update(SHA512_CTX *context, const uint8 *data, size_t len)
{
size_t freespace,
usedspace;
}
static void
-SHA512_Last(SHA512_CTX * context)
+SHA512_Last(SHA512_CTX *context)
{
unsigned int usedspace;
}
void
-SHA512_Final(uint8 digest[], SHA512_CTX * context)
+SHA512_Final(uint8 digest[], SHA512_CTX *context)
{
/* If no digest buffer is passed, we don't bother doing this: */
if (digest != NULL)
}
/* Zero out state data */
- memset(context, 0, sizeof(*context));
+ px_memset(context, 0, sizeof(*context));
}
/*** SHA-384: *********************************************************/
void
-SHA384_Init(SHA384_CTX * context)
+SHA384_Init(SHA384_CTX *context)
{
if (context == NULL)
return;
}
void
-SHA384_Update(SHA384_CTX * context, const uint8 *data, size_t len)
+SHA384_Update(SHA384_CTX *context, const uint8 *data, size_t len)
{
SHA512_Update((SHA512_CTX *) context, data, len);
}
void
-SHA384_Final(uint8 digest[], SHA384_CTX * context)
+SHA384_Final(uint8 digest[], SHA384_CTX *context)
{
/* If no digest buffer is passed, we don't bother doing this: */
if (digest != NULL)
}
/* Zero out state data */
- memset(context, 0, sizeof(*context));
+ px_memset(context, 0, sizeof(*context));
}
/*** SHA-224: *********************************************************/
void
-SHA224_Init(SHA224_CTX * context)
+SHA224_Init(SHA224_CTX *context)
{
if (context == NULL)
return;
}
void
-SHA224_Update(SHA224_CTX * context, const uint8 *data, size_t len)
+SHA224_Update(SHA224_CTX *context, const uint8 *data, size_t len)
{
SHA256_Update((SHA256_CTX *) context, data, len);
}
void
-SHA224_Final(uint8 digest[], SHA224_CTX * context)
+SHA224_Final(uint8 digest[], SHA224_CTX *context)
{
/* If no digest buffer is passed, we don't bother doing this: */
if (digest != NULL)
}
/* Clean up state data: */
- memset(context, 0, sizeof(*context));
+ px_memset(context, 0, sizeof(*context));
}