[umac.c]
     Ensure nh_result lies on a 64-bit boundary (fixes warnings observed
     on Itanium on Linux); from Dale Talcott (bug #1462); ok djm@
This commit is contained in:
Damien Miller 2008-05-19 16:07:45 +10:00
parent bab9bd4c20
commit 0f30c87c45
2 changed files with 10 additions and 4 deletions

View File

@ -140,6 +140,10 @@
ignoring SIGPIPE by adding a new channel message (EOW) that signals ignoring SIGPIPE by adding a new channel message (EOW) that signals
the peer that we're not interested in any data it might send. the peer that we're not interested in any data it might send.
fixes bz #85; discussion, debugging and ok djm@ fixes bz #85; discussion, debugging and ok djm@
- pvalchev@cvs.openbsd.org 2008/05/12 20:52:20
[umac.c]
Ensure nh_result lies on a 64-bit boundary (fixes warnings observed
on Itanium on Linux); from Dale Talcott (bug #1462); ok djm@
20080403 20080403
- (djm) [openbsd-compat/bsd-poll.c] Include stdlib.h to avoid compile- - (djm) [openbsd-compat/bsd-poll.c] Include stdlib.h to avoid compile-
@ -4000,4 +4004,4 @@
OpenServer 6 and add osr5bigcrypt support so when someone migrates OpenServer 6 and add osr5bigcrypt support so when someone migrates
passwords between UnixWare and OpenServer they will still work. OK dtucker@ passwords between UnixWare and OpenServer they will still work. OK dtucker@
$Id: ChangeLog,v 1.4930 2008/05/19 06:06:47 djm Exp $ $Id: ChangeLog,v 1.4931 2008/05/19 06:07:45 djm Exp $

8
umac.c
View File

@ -1,4 +1,4 @@
/* $OpenBSD: umac.c,v 1.2 2007/09/12 19:39:19 stevesk Exp $ */ /* $OpenBSD: umac.c,v 1.3 2008/05/12 20:52:20 pvalchev Exp $ */
/* ----------------------------------------------------------------------- /* -----------------------------------------------------------------------
* *
* umac.c -- C Implementation UMAC Message Authentication * umac.c -- C Implementation UMAC Message Authentication
@ -1043,7 +1043,8 @@ static int uhash_update(uhash_ctx_t ctx, u_char *input, long len)
*/ */
{ {
UWORD bytes_hashed, bytes_remaining; UWORD bytes_hashed, bytes_remaining;
UINT8 nh_result[STREAMS*sizeof(UINT64)]; UINT64 result_buf[STREAMS];
UINT8 *nh_result = (UINT8 *)&result_buf;
if (ctx->msg_len + len <= L1_KEY_LEN) { if (ctx->msg_len + len <= L1_KEY_LEN) {
nh_update(&ctx->hash, (UINT8 *)input, len); nh_update(&ctx->hash, (UINT8 *)input, len);
@ -1095,7 +1096,8 @@ static int uhash_update(uhash_ctx_t ctx, u_char *input, long len)
static int uhash_final(uhash_ctx_t ctx, u_char *res) static int uhash_final(uhash_ctx_t ctx, u_char *res)
/* Incorporate any pending data, pad, and generate tag */ /* Incorporate any pending data, pad, and generate tag */
{ {
UINT8 nh_result[STREAMS*sizeof(UINT64)]; UINT64 result_buf[STREAMS];
UINT8 *nh_result = (UINT8 *)&result_buf;
if (ctx->msg_len > L1_KEY_LEN) { if (ctx->msg_len > L1_KEY_LEN) {
if (ctx->msg_len % L1_KEY_LEN) { if (ctx->msg_len % L1_KEY_LEN) {