Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Aug 2017 22:54:35 +0000 (UTC)
From:      Ryan Libby <rlibby@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r322600 - head/sys/crypto/aesni
Message-ID:  <201708162254.v7GMsZfO081002@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: rlibby
Date: Wed Aug 16 22:54:35 2017
New Revision: 322600
URL: https://svnweb.freebsd.org/changeset/base/322600

Log:
  aesni: quiet -Wcast-qual
  
  Reviewed by:	delphij
  Approved by:	markj (mentor)
  Sponsored by:	Dell EMC Isilon
  Differential Revision:	https://reviews.freebsd.org/D12021

Modified:
  head/sys/crypto/aesni/aesni_ghash.c
  head/sys/crypto/aesni/aesni_wrap.c

Modified: head/sys/crypto/aesni/aesni_ghash.c
==============================================================================
--- head/sys/crypto/aesni/aesni_ghash.c	Wed Aug 16 22:48:52 2017	(r322599)
+++ head/sys/crypto/aesni/aesni_ghash.c	Wed Aug 16 22:54:35 2017	(r322600)
@@ -277,7 +277,7 @@ AES_GCM_encrypt(const unsigned char *in, unsigned char
 	__m128i tmp1, tmp2, tmp3, tmp4;
 	__m128i tmp5, tmp6, tmp7, tmp8;
 	__m128i H, H2, H3, H4, Y, T;
-	__m128i *KEY = (__m128i*)key;
+	const __m128i *KEY = (const __m128i *)key;
 	__m128i ctr1, ctr2, ctr3, ctr4;
 	__m128i ctr5, ctr6, ctr7, ctr8;
 	__m128i last_block = _mm_setzero_si128();
@@ -290,7 +290,7 @@ AES_GCM_encrypt(const unsigned char *in, unsigned char
 	__m128i X = _mm_setzero_si128();
 
 	if (ibytes == 96/8) {
-		Y = _mm_loadu_si128((__m128i*)ivec);
+		Y = _mm_loadu_si128((const __m128i *)ivec);
 		Y = _mm_insert_epi32(Y, 0x1000000, 3);
 		/*(Compute E[ZERO, KS] and E[Y0, KS] together*/
 		tmp1 = _mm_xor_si128(X, KEY[0]);
@@ -319,7 +319,7 @@ AES_GCM_encrypt(const unsigned char *in, unsigned char
 		Y = _mm_setzero_si128();
 
 		for (i=0; i < ibytes/16; i++) {
-			tmp1 = _mm_loadu_si128(&((__m128i*)ivec)[i]);
+			tmp1 = _mm_loadu_si128(&((const __m128i *)ivec)[i]);
 			tmp1 = _mm_shuffle_epi8(tmp1, BSWAP_MASK);
 			Y = _mm_xor_si128(Y, tmp1);
 			gfmul(Y, H, &Y);
@@ -349,10 +349,10 @@ AES_GCM_encrypt(const unsigned char *in, unsigned char
 	gfmul(H,H3,&H4);
 
 	for (i=0; i<abytes/16/4; i++) {
-		tmp1 = _mm_loadu_si128(&((__m128i*)addt)[i*4]);
-		tmp2 = _mm_loadu_si128(&((__m128i*)addt)[i*4+1]);
-		tmp3 = _mm_loadu_si128(&((__m128i*)addt)[i*4+2]);
-		tmp4 = _mm_loadu_si128(&((__m128i*)addt)[i*4+3]);
+		tmp1 = _mm_loadu_si128(&((const __m128i *)addt)[i*4]);
+		tmp2 = _mm_loadu_si128(&((const __m128i *)addt)[i*4+1]);
+		tmp3 = _mm_loadu_si128(&((const __m128i *)addt)[i*4+2]);
+		tmp4 = _mm_loadu_si128(&((const __m128i *)addt)[i*4+3]);
 
 		tmp1 = _mm_shuffle_epi8(tmp1, BSWAP_MASK);
 		tmp2 = _mm_shuffle_epi8(tmp2, BSWAP_MASK);
@@ -363,7 +363,7 @@ AES_GCM_encrypt(const unsigned char *in, unsigned char
 		reduce4(H, H2, H3, H4, tmp4, tmp3, tmp2, tmp1, &X);
 	}
 	for (i=i*4; i<abytes/16; i++) {
-		tmp1 = _mm_loadu_si128(&((__m128i*)addt)[i]);
+		tmp1 = _mm_loadu_si128(&((const __m128i *)addt)[i]);
 		tmp1 = _mm_shuffle_epi8(tmp1, BSWAP_MASK);
 		X = _mm_xor_si128(X,tmp1);
 		gfmul(X, H, &X);
@@ -436,21 +436,21 @@ AES_GCM_encrypt(const unsigned char *in, unsigned char
 		tmp8 =_mm_aesenclast_si128(tmp8, KEY[nr]);
 
 		tmp1 = _mm_xor_si128(tmp1,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+0]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+0]));
 		tmp2 = _mm_xor_si128(tmp2,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+1]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+1]));
 		tmp3 = _mm_xor_si128(tmp3,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+2]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+2]));
 		tmp4 = _mm_xor_si128(tmp4,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+3]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+3]));
 		tmp5 = _mm_xor_si128(tmp5,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+4]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+4]));
 		tmp6 = _mm_xor_si128(tmp6,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+5]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+5]));
 		tmp7 = _mm_xor_si128(tmp7,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+6]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+6]));
 		tmp8 = _mm_xor_si128(tmp8,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+7]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+7]));
 
 		_mm_storeu_si128(&((__m128i*)out)[i*8+0], tmp1);
 		_mm_storeu_si128(&((__m128i*)out)[i*8+1], tmp2);
@@ -487,7 +487,8 @@ AES_GCM_encrypt(const unsigned char *in, unsigned char
 		}
 		tmp1 = _mm_aesenc_si128(tmp1, KEY[nr-1]);
 		tmp1 = _mm_aesenclast_si128(tmp1, KEY[nr]);
-		tmp1 = _mm_xor_si128(tmp1, _mm_loadu_si128(&((__m128i*)in)[k]));
+		tmp1 = _mm_xor_si128(tmp1,
+		    _mm_loadu_si128(&((const __m128i *)in)[k]));
 		_mm_storeu_si128(&((__m128i*)out)[k], tmp1);
 		tmp1 = _mm_shuffle_epi8(tmp1, BSWAP_MASK);
 		X = _mm_xor_si128(X, tmp1);
@@ -503,7 +504,8 @@ AES_GCM_encrypt(const unsigned char *in, unsigned char
 		}
 		tmp1 = _mm_aesenc_si128(tmp1, KEY[nr-1]);
 		tmp1 = _mm_aesenclast_si128(tmp1, KEY[nr]);
-		tmp1 = _mm_xor_si128(tmp1, _mm_loadu_si128(&((__m128i*)in)[k]));
+		tmp1 = _mm_xor_si128(tmp1,
+		    _mm_loadu_si128(&((const __m128i *)in)[k]));
 		last_block = tmp1;
 		for (j=0; j<nbytes%16; j++)
 			out[k*16+j] = ((unsigned char*)&last_block)[j];
@@ -535,7 +537,7 @@ AES_GCM_decrypt(const unsigned char *in, unsigned char
 	__m128i tmp1, tmp2, tmp3, tmp4;
 	__m128i tmp5, tmp6, tmp7, tmp8;
 	__m128i H, H2, H3, H4, Y, T;
-	__m128i *KEY = (__m128i*)key;
+	const __m128i *KEY = (const __m128i *)key;
 	__m128i ctr1, ctr2, ctr3, ctr4;
 	__m128i ctr5, ctr6, ctr7, ctr8;
 	__m128i last_block = _mm_setzero_si128();
@@ -548,7 +550,7 @@ AES_GCM_decrypt(const unsigned char *in, unsigned char
 	__m128i X = _mm_setzero_si128();
 
 	if (ibytes == 96/8) {
-		Y = _mm_loadu_si128((__m128i*)ivec);
+		Y = _mm_loadu_si128((const __m128i *)ivec);
 		Y = _mm_insert_epi32(Y, 0x1000000, 3);
 		/*(Compute E[ZERO, KS] and E[Y0, KS] together*/
 		tmp1 = _mm_xor_si128(X, KEY[0]);
@@ -577,7 +579,7 @@ AES_GCM_decrypt(const unsigned char *in, unsigned char
 		Y = _mm_setzero_si128();
 
 		for (i=0; i < ibytes/16; i++) {
-			tmp1 = _mm_loadu_si128(&((__m128i*)ivec)[i]);
+			tmp1 = _mm_loadu_si128(&((const __m128i *)ivec)[i]);
 			tmp1 = _mm_shuffle_epi8(tmp1, BSWAP_MASK);
 			Y = _mm_xor_si128(Y, tmp1);
 			gfmul(Y, H, &Y);
@@ -607,10 +609,10 @@ AES_GCM_decrypt(const unsigned char *in, unsigned char
 	gfmul(H,H3,&H4);
 
 	for (i=0; i<abytes/16/4; i++) {
-		tmp1 = _mm_loadu_si128(&((__m128i*)addt)[i*4]);
-		tmp2 = _mm_loadu_si128(&((__m128i*)addt)[i*4+1]);
-		tmp3 = _mm_loadu_si128(&((__m128i*)addt)[i*4+2]);
-		tmp4 = _mm_loadu_si128(&((__m128i*)addt)[i*4+3]);
+		tmp1 = _mm_loadu_si128(&((const __m128i *)addt)[i*4]);
+		tmp2 = _mm_loadu_si128(&((const __m128i *)addt)[i*4+1]);
+		tmp3 = _mm_loadu_si128(&((const __m128i *)addt)[i*4+2]);
+		tmp4 = _mm_loadu_si128(&((const __m128i *)addt)[i*4+3]);
 
 		tmp1 = _mm_shuffle_epi8(tmp1, BSWAP_MASK);
 		tmp2 = _mm_shuffle_epi8(tmp2, BSWAP_MASK);
@@ -622,7 +624,7 @@ AES_GCM_decrypt(const unsigned char *in, unsigned char
 		reduce4(H, H2, H3, H4, tmp4, tmp3, tmp2, tmp1, &X);
 	}
 	for (i=i*4; i<abytes/16; i++) {
-		tmp1 = _mm_loadu_si128(&((__m128i*)addt)[i]);
+		tmp1 = _mm_loadu_si128(&((const __m128i *)addt)[i]);
 		tmp1 = _mm_shuffle_epi8(tmp1, BSWAP_MASK);
 		X = _mm_xor_si128(X,tmp1);
 		gfmul(X, H, &X);
@@ -639,10 +641,10 @@ AES_GCM_decrypt(const unsigned char *in, unsigned char
 
 	/* This is where we validate the cipher text before decrypt */
 	for (i = 0; i<nbytes/16/4; i++) {
-		tmp1 = _mm_loadu_si128(&((__m128i*)in)[i*4]);
-		tmp2 = _mm_loadu_si128(&((__m128i*)in)[i*4+1]);
-		tmp3 = _mm_loadu_si128(&((__m128i*)in)[i*4+2]);
-		tmp4 = _mm_loadu_si128(&((__m128i*)in)[i*4+3]);
+		tmp1 = _mm_loadu_si128(&((const __m128i *)in)[i*4]);
+		tmp2 = _mm_loadu_si128(&((const __m128i *)in)[i*4+1]);
+		tmp3 = _mm_loadu_si128(&((const __m128i *)in)[i*4+2]);
+		tmp4 = _mm_loadu_si128(&((const __m128i *)in)[i*4+3]);
 
 		tmp1 = _mm_shuffle_epi8(tmp1, BSWAP_MASK);
 		tmp2 = _mm_shuffle_epi8(tmp2, BSWAP_MASK);
@@ -654,7 +656,7 @@ AES_GCM_decrypt(const unsigned char *in, unsigned char
 		reduce4(H, H2, H3, H4, tmp4, tmp3, tmp2, tmp1, &X);
 	}
 	for (i = i*4; i<nbytes/16; i++) {
-		tmp1 = _mm_loadu_si128(&((__m128i*)in)[i]);
+		tmp1 = _mm_loadu_si128(&((const __m128i *)in)[i]);
 		tmp1 = _mm_shuffle_epi8(tmp1, BSWAP_MASK);
 		X = _mm_xor_si128(X, tmp1);
 		gfmul(X,H,&X);
@@ -738,21 +740,21 @@ AES_GCM_decrypt(const unsigned char *in, unsigned char
 		tmp8 =_mm_aesenclast_si128(tmp8, KEY[nr]);
 
 		tmp1 = _mm_xor_si128(tmp1,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+0]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+0]));
 		tmp2 = _mm_xor_si128(tmp2,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+1]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+1]));
 		tmp3 = _mm_xor_si128(tmp3,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+2]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+2]));
 		tmp4 = _mm_xor_si128(tmp4,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+3]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+3]));
 		tmp5 = _mm_xor_si128(tmp5,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+4]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+4]));
 		tmp6 = _mm_xor_si128(tmp6,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+5]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+5]));
 		tmp7 = _mm_xor_si128(tmp7,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+6]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+6]));
 		tmp8 = _mm_xor_si128(tmp8,
-		    _mm_loadu_si128(&((__m128i*)in)[i*8+7]));
+		    _mm_loadu_si128(&((const __m128i *)in)[i*8+7]));
 
 		_mm_storeu_si128(&((__m128i*)out)[i*8+0], tmp1);
 		_mm_storeu_si128(&((__m128i*)out)[i*8+1], tmp2);
@@ -782,7 +784,8 @@ AES_GCM_decrypt(const unsigned char *in, unsigned char
 		}
 		tmp1 = _mm_aesenc_si128(tmp1, KEY[nr-1]);
 		tmp1 = _mm_aesenclast_si128(tmp1, KEY[nr]);
-		tmp1 = _mm_xor_si128(tmp1, _mm_loadu_si128(&((__m128i*)in)[k]));
+		tmp1 = _mm_xor_si128(tmp1,
+		    _mm_loadu_si128(&((const __m128i *)in)[k]));
 		_mm_storeu_si128(&((__m128i*)out)[k], tmp1);
 	}
 	//If remains one incomplete block
@@ -795,7 +798,8 @@ AES_GCM_decrypt(const unsigned char *in, unsigned char
 		}
 		tmp1 = _mm_aesenc_si128(tmp1, KEY[nr-1]);
 		tmp1 = _mm_aesenclast_si128(tmp1, KEY[nr]);
-		tmp1 = _mm_xor_si128(tmp1, _mm_loadu_si128(&((__m128i*)in)[k]));
+		tmp1 = _mm_xor_si128(tmp1,
+		    _mm_loadu_si128(&((const __m128i *)in)[k]));
 		last_block = tmp1;
 		for (j=0; j<nbytes%16; j++)
 			out[k*16+j] = ((unsigned char*)&last_block)[j];

Modified: head/sys/crypto/aesni/aesni_wrap.c
==============================================================================
--- head/sys/crypto/aesni/aesni_wrap.c	Wed Aug 16 22:48:52 2017	(r322599)
+++ head/sys/crypto/aesni/aesni_wrap.c	Wed Aug 16 22:54:35 2017	(r322600)
@@ -219,7 +219,7 @@ aesni_encrypt_icm(int rounds, const void *key_schedule
 
 	BSWAP_EPI64 = _mm_set_epi8(8,9,10,11,12,13,14,15,0,1,2,3,4,5,6,7);
 
-	ctr1 = _mm_loadu_si128((__m128i*)iv);
+	ctr1 = _mm_loadu_si128((const __m128i *)iv);
 	ctr1 = _mm_shuffle_epi8(ctr1, BSWAP_EPI64);
 
 	cnt = len / AES_BLOCK_LEN / 8;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201708162254.v7GMsZfO081002>