The API docs say it's a pointer to a structure, so try removing the "*" from the Win32::API->new() call. I did that and I get no errors even when doing the actual $func->Call(...) though I'm not sure if I'm getting meaningful results either.
Comment on Re: Win32::API::Struct: Pointers of Pointers
No, the structure is ENCRYPTION_CERTIFICATE_HASH_LIST and PENCRYPTION_CERTIFICATE_HASH_LIST is already a pointer. So, PENCRYPTION_CERTIFICATE_HASH_LIST* is a mointer of pointer.
Knowing a lot about C and C++ programming (mainly under Windows), your suggestion can not work correctly.
Knowing a lot about C and C++ programming (mainly under Windows), your suggestion can not work correctly.
I'm just going by the principle that the documentation is not always right, and it doesn't hurt to try something else. The argument description says that it is a pointer to a structure. The "*" in the function syntax suggests it's a pointer to a pointer to a structure. One of those is wrong. If you've implemented this in C or C++ and you know for sure, then nevermind.