intel / intel-ipsec-mb

Intel(R) Multi-Buffer Crypto for IPSec
BSD 3-Clause "New" or "Revised" License
292 stars 88 forks source link

IMB_SNOW3G_F8_4_BUFFER() Direct API failing on Windows with VS2017+ #59

Closed mdcornu closed 4 years ago

mdcornu commented 4 years ago

IMB_SNOW3G_F8_4_BUFFER() direct API tests fail on Windows when compiled using Microsoft Visual Studio 2017 or later with compiler optimizations enabled. Tests pass when compiled without optimizations.

Affected interfaces:

This issue is currently being investigated.

Example ipsec_MB_testapp output:


Testing IMB_SNOW3G_F8_4_BUFFER: (Direct API):

IMB_SNOW3G_F8_4_BUFFER(Enc) vector:0 buffer:0

Actual::

0xA0 0xD3 0x82 0xB5 0x96 0x64 0xE2 0xE2 0x0D 0x2D 0x5E 0xDF 0xCC 0xE8 0x6D 0xC3 

0x4B 0x80 0xB4 0xF4 0xCC 0x11 0x41 0x93 0xE1 0x88 0xAA 0xEB 0x41 0x7C 0xAA 0x34 

Expected::

0x5D 0x5B 0xFE 0x75 0xEB 0x04 0xF6 0x8C 0xE0 0xA1 0x23 0x77 0xEA 0x00 0xB3 0x7D 

0x47 0xC6 0xA0 0xBA 0x06 0x30 0x91 0x55 0x08 0x6A 0x85 0x9C 0x43 0x41 0xB3 0x7C 

validate_snow3g_f8_4_blocks:: FAIL

Testing IMB_SNOW3G_F8_8_BUFFER: (Direct API):

IMB_SNOW3G_F8_8_BUFFER(Enc) vector:0 buffer:0

Actual::

0xA0 0xD3 0x82 0xB5 0x96 0x64 0xE2 0xE2 0x0D 0x2D 0x5E 0xDF 0xCC 0xE8 0x6D 0xC3 

0x4B 0x80 0xB4 0xF4 0xCC 0x11 0x41 0x93 0xE1 0x88 0xAA 0xEB 0x41 0x7C 0xAA 0x34 

Expected::

0x5D 0x5B 0xFE 0x75 0xEB 0x04 0xF6 0x8C 0xE0 0xA1 0x23 0x77 0xEA 0x00 0xB3 0x7D 

0x47 0xC6 0xA0 0xBA 0x06 0x30 0x91 0x55 0x08 0x6A 0x85 0x9C 0x43 0x41 0xB3 0x7C 

validate_snow3g_f8_8_blocks:: FAIL

Testing IMB_SNOW3G_F8_8_BUFFER_MULTIKEY: (Direct API):

................

Testing IMB_SNOW3G_F8_N_BUFFER: (Direct API):

......IMB_SNOW3G_F8_N_BUFFER(Enc) , vector:3

Actual::

0xA0 0xD3 0x82 0xB5 0x96 0x64 0xE2 0xE2 0x0D 0x2D 0x5E 0xDF 0xCC 0xE8 0x6D 0xC3 

0x4B 0x80 0xB4 0xF4 0xCC 0x11 0x41 0x93 0xE1 0x88 0xAA 0xEB 0x41 0x7C 0xAA 0x34 

Expected::

0x5D 0x5B 0xFE 0x75 0xEB 0x04 0xF6 0x8C 0xE0 0xA1 0x23 0x77 0xEA 0x00 0xB3 0x7D 

0x47 0xC6 0xA0 0xBA 0x06 0x30 0x91 0x55 0x08 0x6A 0x85 0x9C 0x43 0x41 0xB3 0x7C 

validate_snow3g_f8_n_blocks:: FAIL