Module Name: othersrc Committed By: agc Date: Thu Jun 12 06:19:35 UTC 2014
Modified Files: othersrc/external/bsd/multigest/dist: blake2.c crc32c.c keccak.c main.c multigest.c rmd160.c sha1.c tiger.c whirlpool.c Log Message: Make this compile WARNS=6 with gcc-4.8 To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 othersrc/external/bsd/multigest/dist/blake2.c cvs rdiff -u -r1.1.1.1 -r1.2 othersrc/external/bsd/multigest/dist/crc32c.c \ othersrc/external/bsd/multigest/dist/rmd160.c \ othersrc/external/bsd/multigest/dist/sha1.c \ othersrc/external/bsd/multigest/dist/tiger.c \ othersrc/external/bsd/multigest/dist/whirlpool.c cvs rdiff -u -r1.4 -r1.5 othersrc/external/bsd/multigest/dist/keccak.c cvs rdiff -u -r1.5 -r1.6 othersrc/external/bsd/multigest/dist/main.c cvs rdiff -u -r1.14 -r1.15 othersrc/external/bsd/multigest/dist/multigest.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: othersrc/external/bsd/multigest/dist/blake2.c diff -u othersrc/external/bsd/multigest/dist/blake2.c:1.3 othersrc/external/bsd/multigest/dist/blake2.c:1.4 --- othersrc/external/bsd/multigest/dist/blake2.c:1.3 Tue Mar 4 02:12:58 2014 +++ othersrc/external/bsd/multigest/dist/blake2.c Thu Jun 12 06:19:35 2014 @@ -311,7 +311,7 @@ blake2b_compress(BLAKE2_CTX *S, const ui int i; for (i = 0; i < 16; ++i) { - m[i] = load64(block + i * sizeof(m[i])); + m[i] = load64(block + (sizeof(m[i]) * (uint64_t)i)); } for (i = 0; i < 8; ++i) { v[i] = S->h[i]; @@ -412,7 +412,7 @@ blake2b_final(BLAKE2_CTX *S, uint8_t *ou blake2b_compress(S, S->buf); for (i = 0; i < 8; ++i) { /* Output full hash to temp buffer */ - store64(buffer + sizeof(S->h[i]) * i, S->h[i]); + store64(buffer + (sizeof(S->h[i]) * (uint64_t)i), S->h[i]); } memcpy(out, buffer, outlen); return 0; Index: othersrc/external/bsd/multigest/dist/crc32c.c diff -u othersrc/external/bsd/multigest/dist/crc32c.c:1.1.1.1 othersrc/external/bsd/multigest/dist/crc32c.c:1.2 --- othersrc/external/bsd/multigest/dist/crc32c.c:1.1.1.1 Fri Aug 16 06:47:53 2013 +++ othersrc/external/bsd/multigest/dist/crc32c.c Thu Jun 12 06:19:35 2014 @@ -540,9 +540,9 @@ crc32c_sb8_64_bit(uint32_t crc, p_buf += 4; } else { crc ^= *p_buf++; - crc ^= (*p_buf++) << 8; - crc ^= (*p_buf++) << 16; - crc ^= (*p_buf++) << 24; + crc ^= (uint32_t)(*p_buf++) << 8; + crc ^= (uint32_t)(*p_buf++) << 16; + crc ^= (uint32_t)(*p_buf++) << 24; } term1 = crc_tableil8_o88[crc & 0x000000FF] ^ crc_tableil8_o80[(crc >> 8) & 0x000000FF]; Index: othersrc/external/bsd/multigest/dist/rmd160.c diff -u othersrc/external/bsd/multigest/dist/rmd160.c:1.1.1.1 othersrc/external/bsd/multigest/dist/rmd160.c:1.2 --- othersrc/external/bsd/multigest/dist/rmd160.c:1.1.1.1 Fri Aug 16 06:47:53 2013 +++ othersrc/external/bsd/multigest/dist/rmd160.c Thu Jun 12 06:19:35 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: rmd160.c,v 1.1.1.1 2013/08/16 06:47:53 agc Exp $ */ +/* $NetBSD: rmd160.c,v 1.2 2014/06/12 06:19:35 agc Exp $ */ /********************************************************************\ * @@ -430,10 +430,10 @@ RMD160Final(uint8_t digest[20], RMD160_C if (digest != NULL) { for (i = 0; i < 20; i += 4) { /* extracts the 8 least significant bits. */ - digest[i] = context->state[i>>2]; - digest[i + 1] = (context->state[i>>2] >> 8); - digest[i + 2] = (context->state[i>>2] >> 16); - digest[i + 3] = (context->state[i>>2] >> 24); + digest[i] = (uint8_t)context->state[i>>2]; + digest[i + 1] = (uint8_t)(context->state[i>>2] >> 8); + digest[i + 2] = (uint8_t)(context->state[i>>2] >> 16); + digest[i + 3] = (uint8_t)(context->state[i>>2] >> 24); } } } Index: othersrc/external/bsd/multigest/dist/sha1.c diff -u othersrc/external/bsd/multigest/dist/sha1.c:1.1.1.1 othersrc/external/bsd/multigest/dist/sha1.c:1.2 --- othersrc/external/bsd/multigest/dist/sha1.c:1.1.1.1 Fri Aug 16 06:47:53 2013 +++ othersrc/external/bsd/multigest/dist/sha1.c Thu Jun 12 06:19:35 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: sha1.c,v 1.1.1.1 2013/08/16 06:47:53 agc Exp $ */ +/* $NetBSD: sha1.c,v 1.2 2014/06/12 06:19:35 agc Exp $ */ /* $OpenBSD: sha1.c,v 1.9 1997/07/23 21:12:32 kstailey Exp $ */ /* @@ -225,8 +225,8 @@ SHA1Update(SHA1_CTX *context, const uint _DIAGASSERT(data != 0); j = context->count[0]; - if ((context->count[0] += len << 3) < j) - context->count[1] += (len>>29)+1; + if ((context->count[0] += (uint32_t)(len << 3)) < j) + context->count[1] += (uint32_t)((len>>29)+1); j = (j >> 3) & 63; if ((j + len) > 63) { i = 64 - j; Index: othersrc/external/bsd/multigest/dist/tiger.c diff -u othersrc/external/bsd/multigest/dist/tiger.c:1.1.1.1 othersrc/external/bsd/multigest/dist/tiger.c:1.2 --- othersrc/external/bsd/multigest/dist/tiger.c:1.1.1.1 Fri Aug 16 06:47:53 2013 +++ othersrc/external/bsd/multigest/dist/tiger.c Thu Jun 12 06:19:35 2014 @@ -819,7 +819,7 @@ TIGER_Update(TIGER_CTX *ctx, const void for (; j < 56; j++) { u.temp8[j] = 0; } - ((uint64_t *)(void *)(&(u.temp8[56])))[0] = ((uint64_t)length) << 3; + u.temp64[7] = ((uint64_t)length) << 3; tiger_compress(u.temp64, ctx->ctx); } Index: othersrc/external/bsd/multigest/dist/whirlpool.c diff -u othersrc/external/bsd/multigest/dist/whirlpool.c:1.1.1.1 othersrc/external/bsd/multigest/dist/whirlpool.c:1.2 --- othersrc/external/bsd/multigest/dist/whirlpool.c:1.1.1.1 Fri Aug 16 06:47:54 2013 +++ othersrc/external/bsd/multigest/dist/whirlpool.c Thu Jun 12 06:19:35 2014 @@ -1453,7 +1453,7 @@ whirlpool_update(whirlpool_context_t *st /* * tally the length of the added data: */ - u64 value = sourceBits; + u64 value = (u64)sourceBits; for (i = 31, carry = 0; i >= 0 && (carry != 0 || value != LL(0)); i--) { carry += bitLength[i] + ((u32)value & 0xff); bitLength[i] = (u8)carry; @@ -1485,7 +1485,7 @@ whirlpool_update(whirlpool_context_t *st */ bufferBits = bufferPos = 0; } - buffer[bufferPos] = b << (8 - bufferRem); + buffer[bufferPos] = (u8)(b << (8 - bufferRem)); bufferBits += bufferRem; /* * proceed to remaining data: @@ -1501,7 +1501,7 @@ whirlpool_update(whirlpool_context_t *st /* * process the remaining bits: */ - buffer[bufferPos] |= b >> bufferRem; + buffer[bufferPos] |= (u8)(b >> bufferRem); } else { b = 0; } @@ -1531,7 +1531,7 @@ whirlpool_update(whirlpool_context_t *st */ bufferBits = bufferPos = 0; } - buffer[bufferPos] = b << (8 - bufferRem); + buffer[bufferPos] = (u8)(b << (8 - bufferRem)); bufferBits += (int)sourceBits; } structpointer->bufferBits = bufferBits; @@ -1556,14 +1556,14 @@ whirlpool_finalize(char *result, whirlpo /* * append a '1'-bit: */ - buffer[bufferPos] |= 0x80U >> (bufferBits & 7); + buffer[bufferPos] |= (u8)(0x80U >> (bufferBits & 7)); bufferPos++; /* all remaining bits on the current u8 are set to zero. */ /* * pad with zero bits to complete (N*WHIRLPOOL_WBLOCK_BITS - WHIRLPOOL_LENGTH_BITS) bits: */ if (bufferPos > WHIRLPOOL_WBLOCK_BYTES - WHIRLPOOL_LENGTH_BYTES) { if (bufferPos < WHIRLPOOL_WBLOCK_BYTES) { - memset(&buffer[bufferPos], 0, WHIRLPOOL_WBLOCK_BYTES - bufferPos); + memset(&buffer[bufferPos], 0, (size_t)(WHIRLPOOL_WBLOCK_BYTES - bufferPos)); } /* * process data block: @@ -1575,7 +1575,7 @@ whirlpool_finalize(char *result, whirlpo bufferPos = 0; } if (bufferPos < WHIRLPOOL_WBLOCK_BYTES - WHIRLPOOL_LENGTH_BYTES) { - memset(&buffer[bufferPos], 0, (WHIRLPOOL_WBLOCK_BYTES - WHIRLPOOL_LENGTH_BYTES) - bufferPos); + memset(&buffer[bufferPos], 0, (size_t)((WHIRLPOOL_WBLOCK_BYTES - WHIRLPOOL_LENGTH_BYTES) - bufferPos)); } bufferPos = WHIRLPOOL_WBLOCK_BYTES - WHIRLPOOL_LENGTH_BYTES; /* @@ -1590,14 +1590,14 @@ whirlpool_finalize(char *result, whirlpo * return the completed message digest: */ for (i = 0; i < WHIRLPOOL_DIGEST_BYTES/8; i++) { - digest[0] = (u8)(structpointer->hash[i] >> 56); - digest[1] = (u8)(structpointer->hash[i] >> 48); - digest[2] = (u8)(structpointer->hash[i] >> 40); - digest[3] = (u8)(structpointer->hash[i] >> 32); - digest[4] = (u8)(structpointer->hash[i] >> 24); - digest[5] = (u8)(structpointer->hash[i] >> 16); - digest[6] = (u8)(structpointer->hash[i] >> 8); - digest[7] = (u8)(structpointer->hash[i] ); + digest[0] = (char)(structpointer->hash[i] >> 56); + digest[1] = (char)(structpointer->hash[i] >> 48); + digest[2] = (char)(structpointer->hash[i] >> 40); + digest[3] = (char)(structpointer->hash[i] >> 32); + digest[4] = (char)(structpointer->hash[i] >> 24); + digest[5] = (char)(structpointer->hash[i] >> 16); + digest[6] = (char)(structpointer->hash[i] >> 8); + digest[7] = (char)(structpointer->hash[i] ); digest += 8; } structpointer->bufferBits = bufferBits; Index: othersrc/external/bsd/multigest/dist/keccak.c diff -u othersrc/external/bsd/multigest/dist/keccak.c:1.4 othersrc/external/bsd/multigest/dist/keccak.c:1.5 --- othersrc/external/bsd/multigest/dist/keccak.c:1.4 Thu Aug 22 06:37:29 2013 +++ othersrc/external/bsd/multigest/dist/keccak.c Thu Jun 12 06:19:35 2014 @@ -192,9 +192,9 @@ LFSR86540(uint8_t *LFSR) if (((*LFSR) & 0x80) != 0) { /* Primitive polynomial over GF(2): x^8+x^6+x^5+x^4+1 */ - (*LFSR) = ((*LFSR) << 1) ^ 0x71; + (*LFSR) = (uint8_t)((*LFSR) << 1) ^ 0x71; } else { - (*LFSR) = (*LFSR) << 1; + (*LFSR) = (uint8_t)((*LFSR) << 1); } return result; } @@ -208,7 +208,7 @@ keccak_initialise_RoundConstants(KECCAK_ for (i = 0; i < KECCAK_NUM_ROUNDS; i++) { ctx->RoundConstants[i] = 0; for (j = 0; j < 7; j++) { - bitPosition = (1<<j)-1; /*2^j-1 */ + bitPosition = (unsigned)(1<<j)-1; /*2^j-1 */ if (LFSR86540(&LFSRstate)) { ctx->RoundConstants[i] ^= (uint64_t)1<<bitPosition; } @@ -298,7 +298,7 @@ absorb(KECCAK_CTX *ctx, const uint8_t *d absorb_queue(ctx); } if (partialByte > 0) { - uint8_t mask = (1 << partialByte)-1; + uint8_t mask = (uint8_t)((1 << partialByte)-1); ctx->dataQueue[ctx->bitsInQueue/8] = data[(unsigned long)i/8] & mask; ctx->bitsInQueue += partialByte; i += partialByte; @@ -313,14 +313,14 @@ PadAndSwitchToSqueezingPhase(KECCAK_CTX { /* Note: the bits are numbered from 0=LSB to 7=MSB */ if (ctx->bitsInQueue + 1 == ctx->rate) { - ctx->dataQueue[ctx->bitsInQueue/8 ] |= 1 << (ctx->bitsInQueue % 8); + ctx->dataQueue[ctx->bitsInQueue/8 ] |= (uint8_t)(1 << (ctx->bitsInQueue % 8)); absorb_queue(ctx); memset(ctx->dataQueue, 0, ctx->rate/8); } else { memset(ctx->dataQueue + (ctx->bitsInQueue+7)/8, 0, ctx->rate/8 - (ctx->bitsInQueue+7)/8); - ctx->dataQueue[ctx->bitsInQueue/8 ] |= 1 << (ctx->bitsInQueue % 8); + ctx->dataQueue[ctx->bitsInQueue/8 ] |= (uint8_t)(1 << (ctx->bitsInQueue % 8)); } - ctx->dataQueue[(ctx->rate-1)/8] |= 1 << ((ctx->rate-1) % 8); + ctx->dataQueue[(ctx->rate-1)/8] |= (uint8_t)(1 << ((ctx->rate-1) % 8)); absorb_queue(ctx); memcpy(ctx->dataQueue, ctx->state, ctx->rate/8); ctx->bitsAvailableForSqueezing = ctx->rate; @@ -381,7 +381,7 @@ KECCAK_Init(KECCAK_CTX *ctx, int hashbit default: return BAD_HASHLEN; } - ctx->fixedOutputLength = hashbitlen; + ctx->fixedOutputLength = (uint32_t)hashbitlen; return SUCCESS; } @@ -398,7 +398,7 @@ KECCAK_Update(KECCAK_CTX *ctx, const uin uint8_t lastByte; /* Align the last partial byte to the least significant bits */ - lastByte = data[(unsigned long)databitlen/8] >> (8 - (databitlen % 8)); + lastByte = (uint8_t)(data[(unsigned long)databitlen/8] >> (8 - (databitlen % 8))); return absorb((KECCAK_CTX*)ctx, &lastByte, databitlen % 8); } return ret; Index: othersrc/external/bsd/multigest/dist/main.c diff -u othersrc/external/bsd/multigest/dist/main.c:1.5 othersrc/external/bsd/multigest/dist/main.c:1.6 --- othersrc/external/bsd/multigest/dist/main.c:1.5 Sun Aug 18 06:03:14 2013 +++ othersrc/external/bsd/multigest/dist/main.c Thu Jun 12 06:19:35 2014 @@ -41,12 +41,12 @@ static int do_input(const char *alg, uint8_t *raw, const char *pat, const char *repl) { + ssize_t rc; size_t cc; - size_t rc; char *data; if ((data = calloc(1, MB(4))) != NULL) { - for (cc = 0 ; cc < MB(4) ; cc += rc) { + for (cc = 0 ; cc < MB(4) ; cc += (size_t)rc) { if ((rc = read(fileno(stdin), &data[cc], MB(4) - cc)) <= 0) { break; } @@ -110,11 +110,11 @@ read_check(const char *check) return 0; } fstat(fileno(fp), &st); - if ((in = calloc(1, st.st_size + 1)) == NULL) { + if ((in = calloc(1, (size_t)(st.st_size + 1))) == NULL) { fclose(fp); return 0; } - read(fileno(fp), in, st.st_size); + read(fileno(fp), in, (size_t)(st.st_size)); in[st.st_size] = 0x0; fclose(fp); if (regexec(&r, in, 10, match, 0) != 0) { @@ -129,7 +129,7 @@ read_check(const char *check) getsubst(subs, from, sizeof(from), to, sizeof(to)); multigest_file(alg, file, raw, from, to); multigest_format_hex(raw, alg, calc, sizeof(calc)); - if ((ret = memcmp(calc, provided, match[4].rm_eo - match[4].rm_so)) != 0) { + if ((ret = memcmp(calc, provided, (size_t)(match[4].rm_eo - match[4].rm_so))) != 0) { fprintf(stderr, "multigest: provided digest: '%s', calculated digest: '%s'\n", provided, calc); } regfree(&r); Index: othersrc/external/bsd/multigest/dist/multigest.c diff -u othersrc/external/bsd/multigest/dist/multigest.c:1.14 othersrc/external/bsd/multigest/dist/multigest.c:1.15 --- othersrc/external/bsd/multigest/dist/multigest.c:1.14 Wed Mar 26 22:13:44 2014 +++ othersrc/external/bsd/multigest/dist/multigest.c Thu Jun 12 06:19:35 2014 @@ -445,7 +445,7 @@ normalise(multigest_t *multigest, const *from = 0; while (multigest->r && len > 0) { match[0].rm_so = *from; - match[0].rm_eo = len; + match[0].rm_eo = (regoff_t)len; if (regexec(multigest->r, data, 2, match, REG_STARTEND) != 0) { break; } @@ -496,8 +496,8 @@ comb4p_round(multigest_t *m, uint8_t *ou } (*d1->update)(&m->ctx[d1->ctxoff], (const char *)&r, sizeof(r)); (*d2->update)(&m->ctx[d2->ctxoff], (const char *)&r, sizeof(r)); - (*d1->update)(&m->ctx[d1->ctxoff], (const char *)in, d1->rawsize); - (*d2->update)(&m->ctx[d2->ctxoff], (const char *)in, d2->rawsize); + (*d1->update)(&m->ctx[d1->ctxoff], (const char *)in, (unsigned)d1->rawsize); + (*d2->update)(&m->ctx[d2->ctxoff], (const char *)in, (unsigned)d2->rawsize); (*d1->final)(h1, &m->ctx[d1->ctxoff]); xorbuf(out, out, h1, d1->rawsize); (*d2->final)(h2, &m->ctx[d2->ctxoff]); @@ -646,7 +646,7 @@ multigest_update(multigest_t *multigest, normalise(multigest, data, len, &from); for (d = multigest->digs, i = 0 ; i < multigest->digc ; i++, d++) { if (d->rawsize) { - (*d->update)(&multigest->ctx[d->ctxoff], &data[from], (unsigned)(len - from)); + (*d->update)(&multigest->ctx[d->ctxoff], &data[from], (unsigned)(len - (unsigned)from)); } } } @@ -693,7 +693,7 @@ multigest_final(multigest_t *m, uint8_t return; } (*d2->final)(h2, &m->ctx[d2->ctxoff]); - (*d1->update)(&m->ctx[d1->ctxoff], (const char *)h2, d1->rawsize); + (*d1->update)(&m->ctx[d1->ctxoff], (const char *)h2, (unsigned)d1->rawsize); (*d1->final)(raw, &m->ctx[d1->ctxoff]); break; case COMBINE_XOR: @@ -735,6 +735,7 @@ multigest_unpcstring(const char *in, siz static const char *hexes = "0123456789abcdef"; const char *p[2]; const char *i; + uint8_t num; char *o; for (i = in, o = out ; (size_t)(o - out) < osize - 1 && (size_t)(i - in) < isize && *i ; o++) { @@ -743,7 +744,8 @@ multigest_unpcstring(const char *in, siz (p[1] = strchr(hexes, i[2])) == NULL) { break; } - *o = ((char)(p[0] - hexes) * 16) + (p[1] - hexes); + num = (uint8_t)((p[0] - hexes) << 4) | (uint8_t)(p[1] - hexes); + *o = (char)num; i += 3; } else { *o = *i++; @@ -898,11 +900,11 @@ multigest_file(const char *alg, const ch return 0; } fstat(fileno(fp), &st); - size = st.st_size; + size = (size_t)st.st_size; mapped = mmap(NULL, size, PROT_READ, MAP_SHARED, fileno(fp), 0); if (mapped == MAP_FAILED) { mapped = calloc(1, MB(1)); - for (cc = 0 ; cc < size ; cc += rc) { + for (cc = 0 ; cc < size ; cc += (size_t)rc) { if ((rc = read(fileno(fp), mapped, MB(1))) <= 0) { break; }