Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
7485362f
Commit
7485362f
authored
Feb 04, 2020
by
Michael Stefaniuc
Committed by
Alexandre Julliard
Feb 04, 2020
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
bcrypt/tests: Get rid of strcmp_wa().
Signed-off-by:
Michael Stefaniuc
<
mstefani@winehq.org
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
9d98733b
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
18 additions
and
27 deletions
+18
-27
bcrypt.c
dlls/bcrypt/tests/bcrypt.c
+18
-27
No files found.
dlls/bcrypt/tests/bcrypt.c
View file @
7485362f
...
...
@@ -155,13 +155,6 @@ static void format_hash(const UCHAR *bytes, ULONG size, char *buf)
return
;
}
static
int
strcmp_wa
(
const
WCHAR
*
strw
,
const
char
*
stra
)
{
WCHAR
buf
[
512
];
MultiByteToWideChar
(
CP_ACP
,
0
,
stra
,
-
1
,
buf
,
ARRAY_SIZE
(
buf
));
return
lstrcmpW
(
strw
,
buf
);
}
#define test_object_length(a) _test_object_length(__LINE__,a)
static
void
_test_object_length
(
unsigned
line
,
void
*
handle
)
{
...
...
@@ -211,7 +204,7 @@ static void _test_hash_length(unsigned line, void *handle, ULONG exlen)
}
#define test_alg_name(a,b) _test_alg_name(__LINE__,a,b)
static
void
_test_alg_name
(
unsigned
line
,
void
*
handle
,
const
char
*
exname
)
static
void
_test_alg_name
(
unsigned
line
,
void
*
handle
,
const
WCHAR
*
exname
)
{
ULONG
size
=
0xdeadbeef
;
UCHAR
buf
[
256
];
...
...
@@ -220,13 +213,14 @@ static void _test_alg_name(unsigned line, void *handle, const char *exname)
status
=
pBCryptGetProperty
(
handle
,
BCRYPT_ALGORITHM_NAME
,
buf
,
sizeof
(
buf
),
&
size
,
0
);
ok_
(
__FILE__
,
line
)(
status
==
STATUS_SUCCESS
,
"BCryptGetProperty failed: %08x
\n
"
,
status
);
ok_
(
__FILE__
,
line
)(
size
==
(
strlen
(
exname
)
+
1
)
*
sizeof
(
WCHAR
),
"got %u
\n
"
,
size
);
ok_
(
__FILE__
,
line
)(
!
strcmp_wa
(
name
,
exname
),
"alg name = %s, expected %s
\n
"
,
wine_dbgstr_w
(
name
),
exname
);
ok_
(
__FILE__
,
line
)(
size
==
(
lstrlenW
(
exname
)
+
1
)
*
sizeof
(
WCHAR
),
"got %u
\n
"
,
size
);
ok_
(
__FILE__
,
line
)(
!
lstrcmpW
(
name
,
exname
),
"alg name = %s, expected %s
\n
"
,
wine_dbgstr_w
(
name
),
wine_dbgstr_w
(
exname
));
}
struct
hash_test
{
const
char
*
alg
;
const
WCHAR
*
alg
;
unsigned
hash_size
;
const
char
*
hash
;
const
char
*
hash2
;
...
...
@@ -239,15 +233,12 @@ static void test_hash(const struct hash_test *test)
BCRYPT_ALG_HANDLE
alg
;
BCRYPT_HASH_HANDLE
hash
;
UCHAR
buf
[
512
],
buf_hmac
[
1024
],
hash_buf
[
128
],
hmac_hash
[
128
];
WCHAR
alg_name
[
64
];
char
str
[
512
];
NTSTATUS
ret
;
ULONG
len
;
MultiByteToWideChar
(
CP_ACP
,
0
,
test
->
alg
,
-
1
,
alg_name
,
ARRAY_SIZE
(
alg_name
));
alg
=
NULL
;
ret
=
pBCryptOpenAlgorithmProvider
(
&
alg
,
alg_name
,
MS_PRIMITIVE_PROVIDER
,
0
);
ret
=
pBCryptOpenAlgorithmProvider
(
&
alg
,
test
->
alg
,
MS_PRIMITIVE_PROVIDER
,
0
);
ok
(
ret
==
STATUS_SUCCESS
,
"got %08x
\n
"
,
ret
);
ok
(
alg
!=
NULL
,
"alg not set
\n
"
);
...
...
@@ -312,7 +303,7 @@ static void test_hash(const struct hash_test *test)
ok
(
ret
==
STATUS_SUCCESS
,
"got %08x
\n
"
,
ret
);
alg
=
NULL
;
ret
=
pBCryptOpenAlgorithmProvider
(
&
alg
,
alg_name
,
MS_PRIMITIVE_PROVIDER
,
BCRYPT_ALG_HANDLE_HMAC_FLAG
);
ret
=
pBCryptOpenAlgorithmProvider
(
&
alg
,
test
->
alg
,
MS_PRIMITIVE_PROVIDER
,
BCRYPT_ALG_HANDLE_HMAC_FLAG
);
ok
(
ret
==
STATUS_SUCCESS
,
"got %08x
\n
"
,
ret
);
ok
(
alg
!=
NULL
,
"alg not set
\n
"
);
...
...
@@ -380,19 +371,19 @@ static void test_hashes(void)
{
static
const
struct
hash_test
tests
[]
=
{
{
"SHA1"
,
20
,
{
L
"SHA1"
,
20
,
"961fa64958818f767707072755d7018dcd278e94"
,
"9314f62ff64197143c91fc86de37e9ae776a3fb8"
,
"2472cf65d0e090618d769d3e46f0d9446cf212da"
,
"b2d2ba8cfd714d474cf0d9622cc5d15e1f53d53f"
,
},
{
"SHA256"
,
32
,
{
L
"SHA256"
,
32
,
"ceb73749c899693706ede1e30c9929b3fd5dd926163831c2fb8bd41e6efb1126"
,
"ea0938c118a7b15954f41b85195f2b42aec3a9429c63f593cfa65c137ffaa986"
,
"34c1aa473a4468a91d06e7cdbc75bc4f93b830ccfc2a47ffd74e8e6ed29e4c72"
,
"55feb7052060bd99e33f36eb0982c7f4856eb6a84fbefe19a1afd9faafc3af6f"
,
},
{
"SHA384"
,
48
,
{
L
"SHA384"
,
48
,
"62b21e90c9022b101671ba1f808f8631a8149f0f12904055839a35c1ca78ae53"
"63eed1e743a692d70e0504b0cfd12ef9"
,
"724db7c0bbc51ef1ac3fc793083fc54c0e5c423faec9b11378c01c236b19aaaf"
...
...
@@ -402,7 +393,7 @@ static void test_hashes(void)
"03e1818e5c165a0e54619e513acb06c393e1a6cb0ddbb4036b5f29617b334642"
"e6e0be8b214d8508595b17a8c4b4e7db"
,
},
{
"SHA512"
,
64
,
{
L
"SHA512"
,
64
,
"d55ced17163bf5386f2cd9ff21d6fd7fe576a915065c24744d09cfae4ec84ee1"
"ef6ef11bfbc5acce3639bab725b50a1fe2c204f8c820d6d7db0df0ecbc49c5ca"
,
"7752d707b54d2b00e7d1c09120d189475b0fd2e31ebb988cf0a01fc8492ddc0b"
...
...
@@ -412,19 +403,19 @@ static void test_hashes(void)
"1487bcecba46ae677622fa499e4cb2f0fdf92f6f3427cba76382d537a06e49c3"
"3e70a2fc1fc730092bf21128c3704cc6387f6dfbf7e2f9f315bbb894505a1205"
,
},
{
"MD2"
,
16
,
{
L
"MD2"
,
16
,
"1bb33606ba908912a84221109d29cd7e"
,
"b9a6ad9323b17e2d0cd389dddd6ef78a"
,
"7f05b0638d77f4a27f3a9c4d353cd648"
,
"05980873e6bfdd05dd7b30078de7e42a"
,
},
{
"MD4"
,
16
,
{
L
"MD4"
,
16
,
"74b5db93c0b41e36ca7074338fc0b637"
,
"a14a9ff2059a8c28f47b01e6bc48a1bf"
,
"bc2e8ac4d8248ed21b8d26227a30ea3a"
,
"b609db0eb4b8669db74f2c20099701e4"
,
},
{
"MD5"
,
16
,
{
L
"MD5"
,
16
,
"e2a3e68d23ce348b8f68b3079de3d4c9"
,
"bcdd7ca574342aa9db0e212348eacb16"
,
"7bda029b93fa8d817fcc9e13d6bdf092"
,
...
...
@@ -460,7 +451,7 @@ static void test_BcryptHash(void)
ok
(
alg
!=
NULL
,
"alg not set
\n
"
);
test_hash_length
(
alg
,
16
);
test_alg_name
(
alg
,
"MD5"
);
test_alg_name
(
alg
,
L
"MD5"
);
memset
(
md5
,
0
,
sizeof
(
md5
));
ret
=
pBCryptHash
(
alg
,
NULL
,
0
,
(
UCHAR
*
)
"test"
,
sizeof
(
"test"
),
md5
,
sizeof
(
md5
));
...
...
@@ -541,7 +532,7 @@ static void test_BcryptDeriveKeyPBKDF2(void)
ok
(
alg
!=
NULL
,
"alg not set
\n
"
);
test_hash_length
(
alg
,
20
);
test_alg_name
(
alg
,
"SHA1"
);
test_alg_name
(
alg
,
L
"SHA1"
);
ret
=
pBCryptDeriveKeyPBKDF2
(
alg
,
rfc6070
[
0
].
pwd
,
rfc6070
[
0
].
pwd_len
,
rfc6070
[
0
].
salt
,
rfc6070
[
0
].
salt_len
,
0
,
buf
,
rfc6070
[
0
].
dk_len
,
0
);
...
...
@@ -581,7 +572,7 @@ static void test_rng(void)
ret
=
pBCryptGetProperty
(
alg
,
BCRYPT_HASH_LENGTH
,
(
UCHAR
*
)
&
len
,
sizeof
(
len
),
&
size
,
0
);
ok
(
ret
==
STATUS_NOT_SUPPORTED
,
"got %08x
\n
"
,
ret
);
test_alg_name
(
alg
,
"RNG"
);
test_alg_name
(
alg
,
L
"RNG"
);
memset
(
buf
,
0
,
16
);
ret
=
pBCryptGenRandom
(
alg
,
buf
,
8
,
0
);
...
...
@@ -654,7 +645,7 @@ static void test_aes(void)
ok
(
!
lstrcmpW
((
const
WCHAR
*
)
mode
,
BCRYPT_CHAIN_MODE_GCM
),
"got %s
\n
"
,
wine_dbgstr_w
((
const
WCHAR
*
)
mode
));
ok
(
size
==
64
,
"got %u
\n
"
,
size
);
test_alg_name
(
alg
,
"AES"
);
test_alg_name
(
alg
,
L
"AES"
);
ret
=
pBCryptCloseAlgorithmProvider
(
alg
,
0
);
ok
(
ret
==
STATUS_SUCCESS
,
"got %08x
\n
"
,
ret
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment