Mega Search
23.2 Million


Sign Up

Make a donation  
Re: NEW Problems compiling latest Indy 5158 (continued from  
News Group: embarcadero.public.cppbuilder.internet.socket

I compile and include Indy properly into CB2010 IDE...

When I compile my project it comes up with:

[BCC32 Error] Idsslopensslheaders.hpp(61): E2303 Type name expected

The line where the compiler fails:
	RSA_METHOD *meth;

All I need to do is to drop IdSSLIOHandlerSocketOpenSSL1 on my form.
Last version of Indy I used was 5135 and it worked well.

Any ideas?

Vote for best question.
Score: 0  # Vote:  0
Date Posted: 15-Jul-2014, at 10:37 AM EST
From: John May
 
Re: Problems compiling latest Indy 5157  
News Group: embarcadero.public.cppbuilder.internet.socket
> {quote:title=Remy Lebeau (TeamB) wrote:}{quote}
> Remy wrote:
> Turns out there are some more missing/incorrect EXTERNALSYM declarations. 
>  I have fixed those now as well.

Indeed the project now compiles without a glitch. Great job Remy!

Vote for best answer.
Score: 0  # Vote:  0
Date Posted: 16-Jul-2014, at 6:07 AM EST
From: John May
 
Re: Problems compiling latest Indy 5157  
News Group: embarcadero.public.cppbuilder.internet.socket
Remy wrote:

> PEVP_CIPHER_CTX is declared as EXTERNALSYM, but EVP_CIPHER_CTX_cleanup
> is not (IdSSLOpenSSLHeaders.pas tries to, but does not incorrectly, so
> it does not take effect).  EVP_CIPHER_CTX_cleanup should not be
> declared in IdSSLOpenSSLHeaders.hpp at all.  I have checked in a fix
> for that.

Turns out there are some more missing/incorrect EXTERNALSYM declarations. 
 I have fixed those now as well.

--
Remy Lebeau (TeamB)

Vote for best answer.
Score: 0  # Vote:  0
Date Posted: 15-Jul-2014, at 11:00 AM EST
From: Remy Lebeau (TeamB)
 
Re: Problems compiling latest Indy 5157  
News Group: embarcadero.public.cppbuilder.internet.socket
John wrote:

> Thanks for the earlier fix... unfortunately... there is more in 5158:
> 
> [BCC32 Error] Idsslopensslheaders.hpp(259): E2147 'PEVP_CIPHER_CTX'
> cannot start a parameter declaration

PEVP_CIPHER_CTX is declared as EXTERNALSYM, but EVP_CIPHER_CTX_cleanup is 
not (IdSSLOpenSSLHeaders.pas tries to, but does not incorrectly, so it does 
not take effect).  EVP_CIPHER_CTX_cleanup should not be declared in IdSSLOpenSSLHeaders.hpp 
at all.  I have checked in a fix for that.

--
Remy Lebeau (TeamB)

Vote for best answer.
Score: 0  # Vote:  0
Date Posted: 15-Jul-2014, at 10:46 AM EST
From: Remy Lebeau (TeamB)
 
Re: Problems compiling latest Indy 5157  
News Group: embarcadero.public.cppbuilder.internet.socket
Thanks for the earlier fix... unfortunately... there is more in 5158:

[BCC32 Error] Idsslopensslheaders.hpp(259): E2147 'PEVP_CIPHER_CTX' cannot start a parameter declaration

Line:
{code}
extern PACKAGE int __cdecl (*EVP_CIPHER_CTX_cleanup)(PEVP_CIPHER_CTX a);
{code}

Vote for best answer.
Score: 0  # Vote:  0
Date Posted: 15-Jul-2014, at 10:36 AM EST
From: John May
 
Re: Problems compiling latest Indy 5157 [Edit]  
News Group: embarcadero.public.cppbuilder.internet.socket
> {quote:title=Remy Lebeau (TeamB) wrote:}{quote}

Thanks!

Vote for best answer.
Score: 0  # Vote:  0
Date Posted: 15-Jul-2014, at 8:53 AM EST
From: John May
 
Re: Problems compiling latest Indy 5157 [Edit]  
News Group: embarcadero.public.cppbuilder.internet.socket
John wrote:

> I compile and include Indy properly into CB2010 IDE...
> 
> When I compile my project it comes up with:
> 
> [BCC32 Error] Idsslopensslheaders.hpp(61): E2303 Type name expected
> 
> The line where the compiler fails:
> RSA_METHOD *meth;

There was a missing EXTERNALSYM declaration in IdSSLOpenSSLHeaders.pas for 
the dh_st record.  I have checked in a fix (rev 5158).

--
Remy Lebeau (TeamB)

Vote for best answer.
Score: 0  # Vote:  0
Date Posted: 14-Jul-2014, at 1:13 PM EST
From: Remy Lebeau (TeamB)