@@ -563,6 +563,7 @@ static int IntelQaDevIsHash(WC_ASYNC_DEV* dev)
563563 case WOLFSSL_ASYNC_MARKER_SHA224 :
564564 case WOLFSSL_ASYNC_MARKER_SHA :
565565 case WOLFSSL_ASYNC_MARKER_MD5 :
566+ case WOLFSSL_ASYNC_MARKER_SHA3 :
566567 isHash = 1 ;
567568 break ;
568569 }
@@ -604,6 +605,7 @@ static int IntelQaDevIsSym(WC_ASYNC_DEV* dev)
604605 case WOLFSSL_ASYNC_MARKER_SHA224 :
605606 case WOLFSSL_ASYNC_MARKER_SHA :
606607 case WOLFSSL_ASYNC_MARKER_MD5 :
608+ case WOLFSSL_ASYNC_MARKER_SHA3 :
607609 isSym = 1 ;
608610 break ;
609611 }
@@ -2506,6 +2508,14 @@ static int IntelQaSymHashGetInfo(CpaCySymHashAlgorithm hashAlgorithm,
25062508 digestSize = WC_SHA512_DIGEST_SIZE ;
25072509 #endif
25082510 break ;
2511+ #ifdef QAT_V2
2512+ case CPA_CY_SYM_HASH_SHA3_256 :
2513+ #ifdef WOLFSSL_SHA3
2514+ blockSize = WC_SHA3_256_BLOCK_SIZE ;
2515+ digestSize = WC_SHA3_256_DIGEST_SIZE ;
2516+ #endif
2517+ break ;
2518+ #endif
25092519
25102520 /* not supported */
25112521 case CPA_CY_SYM_HASH_NONE :
@@ -2519,7 +2529,6 @@ static int IntelQaSymHashGetInfo(CpaCySymHashAlgorithm hashAlgorithm,
25192529 case CPA_CY_SYM_HASH_AES_CBC_MAC :
25202530 #ifdef QAT_V2
25212531 case CPA_CY_SYM_HASH_ZUC_EIA3 :
2522- case CPA_CY_SYM_HASH_SHA3_256 :
25232532 #endif
25242533 default :
25252534 return -1 ;
@@ -3002,9 +3011,16 @@ int IntelQaSymMd5(WC_ASYNC_DEV* dev, byte* out, const byte* in, word32 sz)
30023011 return IntelQaSymHash (dev , out , in , sz ,
30033012 CPA_CY_SYM_HASH_MODE_PLAIN , CPA_CY_SYM_HASH_MD5 , NULL , 0 );
30043013}
3005-
30063014#endif /* !NO_MD5 */
30073015
3016+ #ifdef WOLFSSL_SHA3
3017+ int IntelQaSymSha3 (WC_ASYNC_DEV * dev , byte * out , const byte * in , word32 sz )
3018+ {
3019+ return IntelQaSymHash (dev , out , in , sz ,
3020+ CPA_CY_SYM_HASH_MODE_PLAIN , CPA_CY_SYM_HASH_SHA3_256 , NULL , 0 );
3021+ }
3022+ #endif
3023+
30083024#ifndef NO_HMAC
30093025 int IntelQaHmacGetType (int macType , word32 * hashAlgorithm )
30103026 {
@@ -3041,8 +3057,18 @@ int IntelQaSymMd5(WC_ASYNC_DEV* dev, byte* out, const byte* in, word32 sz)
30413057 if (hashAlgorithm ) * hashAlgorithm = CPA_CY_SYM_HASH_SHA512 ;
30423058 break ;
30433059 #endif
3060+ #ifdef WOLFSSL_SHA3
3061+ case WC_SHA3_256 :
3062+ if (hashAlgorithm ) * hashAlgorithm = CPA_CY_SYM_HASH_SHA3_256 ;
3063+ break ;
3064+ #endif
30443065 #ifdef HAVE_BLAKE2
30453066 case BLAKE2B_ID :
3067+ #endif
3068+ #ifdef WOLFSSL_SHA3
3069+ case WC_SHA3_224 :
3070+ case WC_SHA3_384 :
3071+ case WC_SHA3_512 :
30463072 #endif
30473073 default :
30483074 return NOT_COMPILED_IN ;
0 commit comments