It is definitely valid to call CryptDecrypt multiple times with the same
key. Calls with Final = FALSE change the internal state of the key, calls
with Final = TRUE restore the initial state. Subsequent calls with Final =
TRUE should return the same result.

Your testcase fails because CryptDecrypt changes the value of dwLen, which
you do not restore before calling the function again.

Regards,
Daniel


2013/6/27 Qian Hong <fract...@gmail.com>

> Hello,
>
> I was investigating Bug 33898 [1] hardly and get a partial result, I
> have a special test case demonstrate the behavior of Aliwangwang [2],
> however, I failed to expand the special case to a common test case. My
> attempting is shown in [3]. The hack in [3] works for Aliwangwang, but
> the test case in [3] doesn't fully pass on Windows as I expected [4].
>
> I'm not sure if there is an APP bug rather than Wine bug here, is it
> valid to call multiple CryptDecrypt with only one CryptDeriveKey
> called? If true, is it correct to assume the second CryptDecrypt call
> should behavior identical as the first one?
> If there is a Wine bug here, what is the right way to write a common
> test case for it?
>
> Any hints on this bug is great appreciated!
>
> Thanks very much!
>
> [1] http://bugs.winehq.org/show_bug.cgi?id=33898
> [2] http://bugs.winehq.org/attachment.cgi?id=44996
> [3] http://bugs.winehq.org/attachment.cgi?id=44997&action=diff
> [4] https://testbot.winehq.org/JobDetails.pl?Key=26138
>
> --
> Regards,
> Qian Hong
>
> -
> http://www.winehq.org
>
>
>


Reply via email to