Firstly, apologies for sending the post below to the dev group, my bad.
I have been compiling this using SUN Workshop Compiler (Forte Developer 6 u2) on Solaris 8. Firstly, the original compile works fine on all the source code. The source code does have a problem when compiling using C++ however. The compile errors are on calls to the macros: sk_X509_EXTENSION_pop_free sk_CONF_VALUE_num etc etc Basically any macro that ends up calling most of the SKM_sk* functions are failing. I had to change the SKM_sk_num define so instead of: #define SKM_sk_num(type, st) \ sk_num(CHECK_PTR_OF(STACK_OF(type), st)) It is now: #define SKM_sk_num(type, st) \ sk_num((const _STACK *)CHECKED_PTR_OF(STACK_OF(type), st)) CHECKED_PTR_OF is defined as: #define CHECKED_PTR_OF(type, p) \ ((void*) (l ? p : (type*)0)) #endif Which returns void* Brad _____ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Brad Mitchell Sent: Monday, 1 December 2008 9:26 AM To: [EMAIL PROTECTED] Subject: Re: OpenSSL compile issues using workshop compiler on Solaris (my program) Hi guys, I am fairly new to OpenSSL and have been using this over the past couple of months. I've been especially interested in the time stamping functionality introduced by the OpenTSA project so I have up until now been using openssl v0.9.8c patched with the TS functions. I have been having issues in testing my application however and after compiling and running in debug mode under dbx with access checking, I am finding issues which may or may not have been resolved in later versions of openssl. I've taken the latest couple of snapshots to try and test this theory out, however, I find my application no longer compiles :-( "CryptManager.cc", line 731: Error: Formal argument st of type stack_st* in call to sk_pop_free(stack_st*, void(*)(void*)) is being passed void*. "CryptManager.cc", line 957: Error: Formal argument 1 of type const stack_st* in call to sk_num(const stack_st*) is being passed void*. "CryptManager.cc", line 960: Error: Formal argument 1 of type const stack_st* in call to sk_value(const stack_st*, int) is being passed void*. "CryptManager.cc", line 1004: Error: Formal argument 1 of type const stack_st* in call to sk_num(const stack_st*) is being passed void*. "CryptManager.cc", line 1006: Error: Formal argument 1 of type const stack_st* in call to sk_value(const stack_st*, int) is being passed void*. "CryptManager.cc", line 1164: Error: Formal argument 1 of type const stack_st* in call to sk_num(const stack_st*) is being passed void*. "CryptManager.cc", line 1167: Error: Formal argument 1 of type const stack_st* in call to sk_value(const stack_st*, int) is being passed void*. "CryptManager.cc", line 2058: Error: Formal argument 1 of type const stack_st* in call to sk_num(const stack_st*) is being passed void*. "CryptManager.cc", line 2060: Error: Formal argument 1 of type const stack_st* in call to sk_value(const stack_st*, int) is being passed void*. "CryptManager.cc", line 2301: Error: Formal argument 1 of type const stack_st* in call to sk_num(const stack_st*) is being passed void*. "CryptManager.cc", line 2303: Error: Formal argument 1 of type const stack_st* in call to sk_value(const stack_st*, int) is being passed void*. "CryptManager.cc", line 2304: Warning: The variable cnf has not yet been assigned a value. "CryptManager.cc", line 2490: Error: Formal argument 1 of type const stack_st* in call to sk_num(const stack_st*) is being passed void*. "CryptManager.cc", line 2492: Error: Formal argument 1 of type const stack_st* in call to sk_value(const stack_st*, int) is being passed void*. "CryptManager.cc", line 2493: Warning: The variable ext has not yet been assigned a value. "CryptManager.cc", line 2515: Error: Formal argument st of type stack_st* in call to sk_pop_free(stack_st*, void(*)(void*)) is being passed void*. "CryptManager.cc", line 2672: Error: Formal argument 1 of type const stack_st* in call to sk_num(const stack_st*) is being passed void*. "CryptManager.cc", line 2673: Error: Formal argument 1 of type const stack_st* in call to sk_value(const stack_st*, int) is being passed void*. "CryptManager.cc", line 2674: Warning: The variable val has not yet been assigned a value. "CryptManager.cc", line 2677: Error: Formal argument st of type stack_st* in call to sk_pop_free(stack_st*, void(*)(void*)) is being passed void*. 17 Error(s) and 35 Warning(s) detected. Any simple suggestions? These function calls are pretty much the same as in the ca.c etc under the apps directory. Any help would be appreciated! Regards, Brad