On 23/09/12 12:07, Daniel Pocock wrote: > On 22/09/12 19:34, Yann Rouillard wrote: >> Hi Daniel, >> >> What do you want to know about the status of Openssl ? > > > I'm not certain it is any OpenSSL issue, but three things come to mind: > - the code compiles on Linux and Windows > - the same error was found in other projects (as per the Google results) > - this code previously compiled on the OpenCSW build farm (about 3 > months ago) > > although I agree that none of these things proves the code is fault-free > >> I am not sure your problem is directly related to openssl. It seems to look >> like a type declaration mismatch. >> You could try to relaunch the command line used to compile ssl/Security.cxx >> with "-o .libs/Security.o" replaced with -E. > > This is the original code (line 2315): > > sk_GENERAL_NAME_pop_free(gens, GENERAL_NAME_free); > > This is the section of pre-processor output, I notice it puts the line > number in the middle of the statement: > > > sk_pop_free ( ( ( _STACK * ) ( 1 ? ( gens ) : ( struct > stack_st_GENERAL_NAME * ) 0 ) ) , ( ( void ( * ) ( void * ) ) ( ( > #2315 > 1 ? ( GENERAL_NAME_free ) : ( void ( * ) ( GENERAL_NAME * ) ) 0 ) ) ) ) ; > > and the error refers to `extern "C"', which leaves me thinking this has > something to do with the way C code is mixed with C++. >
Just some further observations: GENERAL_NAME_free is defined using macros, particularly IMPLEMENT_ASN1_FUNCTIONS in v3_genn.c which eventually calls IMPLEMENT_ASN1_ALLOC_FUNCTIONS_fname in asn1t.h There is an existing OpenSSL bug report about OpenSSL not playing nicely with C++ on Solaris Sun Pro toolchain: http://rt.openssl.org/Ticket/Display.html?id=2308&user=guest&pass=guest and more examples of people running into similar types of problem... http://stackoverflow.com/questions/9402778/upgrading-openssl-results-in-compiler-error-with-sk-x509-pop-free I tried wrapping all the #include <openssl/something.h> statements in extern "C" {}; but that didn't help me. > >> >> 2012/9/20 Daniel Pocock <[email protected]> >> >>> >>> >>> >>> I've had another go at building reSIProcte >>> >>> It fails with this (dislikes something from OpenSSL) on unstable10[xs] >>> boxes: >>> >>> >>> Error: Different types for "?:" (extern "C" void(*)(GENERAL_NAME_st*) >>> and void(*)(GENERAL_NAME_st*)). >>> >>> >>> and Google found other people having this issue with other projects: >>> >>> http://echelog.com/logs/browse/illumos/1324594800 >>> >>> >>> Can anyone comment on this or the status of the OpenSSL package? >>> >>> >>> >>> >>> libtool: compile: /opt/SUNWspro/bin/CC -DHAVE_CONFIG_H -I. -I../.. >>> -I/opt/csw/bdb48/include -I/opt/csw/include -DRESIP_OSTYPE_SUNOS >>> -DRESIP_ARCH_I386 -DRESIP_LARCH_IA32 -D_REENTRANT >>> -DRESIP_TOOLCHAIN_SUNPRO -xO3 -m32 -xarch=pentium_pro -xchip=pentium_pro >>> -c ssl/Security.cxx -KPIC -DPIC -o .libs/Security.o >>> "ssl/Security.cxx", line 2315: Error: Different types for "?:" (extern >>> "C" void(*)(GENERAL_NAME_st*) and void(*)(GENERAL_NAME_st*)). >>> "ssl/Security.cxx", line 2315: Warning (Anachronism): Formal argument >>> func of type extern "C" void(*)(void*) in call to sk_pop_free(stack_st*, >>> extern "C" void(*)(void*)) is being passed void(*)(void*). >>> "ssl/Security.cxx", line 2591: Error: Different types for "?:" (extern >>> "C" void(*)(GENERAL_NAME_st*) and void(*)(GENERAL_NAME_st*)). >>> "ssl/Security.cxx", line 2591: Warning (Anachronism): Formal argument >>> func of type extern "C" void(*)(void*) in call to sk_pop_free(stack_st*, >>> extern "C" void(*)(void*)) is being passed void(*)(void*). >>> 2 Error(s) and 2 Warning(s) detected. >>> gmake[4]: *** [Security.lo] Error 1 >>> gmake[4]: Leaving directory >>> >>> `/home/daniel/opencsw/resiprocate/trunk/work/solaris10-i386/build-isa-pentium_pro/resiprocate-1.8.5/resip/stack' >>> _______________________________________________ >>> maintainers mailing list >>> [email protected] >>> https://lists.opencsw.org/mailman/listinfo/maintainers >>> .:: This mailing list's archive is public. ::. >>> >> >> >> >> _______________________________________________ >> maintainers mailing list >> [email protected] >> https://lists.opencsw.org/mailman/listinfo/maintainers >> .:: This mailing list's archive is public. ::. > > _______________________________________________ > maintainers mailing list > [email protected] > https://lists.opencsw.org/mailman/listinfo/maintainers > .:: This mailing list's archive is public. ::. _______________________________________________ maintainers mailing list [email protected] https://lists.opencsw.org/mailman/listinfo/maintainers .:: This mailing list's archive is public. ::.
