Topic: Client implementation


I'm porting the yassl library to FreeBSD. The configure / make process runs more or less smoothly (I might submit FreeBSD-specific patches later on). I'm now trying to compile and run a simple client application, but run into linking errors because the definition of the Client interface is not included in the library:

client.cpp:(.text+0x21): undefined reference to `yaSSL::Client::Client()'
client.cpp:(.text+0x34): undefined reference to `yaSSL::Client::SetCA(char const*)'
client.cpp:(.text+0x111): undefined reference to `yaSSL::Client::~Client()'
client.cpp:(.text+0x1b7): undefined reference to `yaSSL::Client::Connect(int)'
client.cpp:(.text+0x27a): undefined reference to `yaSSL::Client::Write(void const*, int)'
client.cpp:(.text+0x29a): undefined reference to `yaSSL::Client::Read(void*, int)'
client.cpp:(.text+0x318): undefined reference to `yaSSL::Client::~Client()

I see that the implementation is in yassl.cpp, which is not built and thus not included in the library. yassl.cpp is only listed in EXTRA_DIST.

Any idea how one is supposed to use the Client (or Server) API?


Re: Client implementation

Hi Gahr,

Thanks for the question, sorry for the delay.

I'd recommend using CyaSSL if possible, we've had more requests and updates for it lately.

The yaSSL API was an experimental API I tried out, no one really used it to my knowledge so I removed it from the default build.  I'd recommend using the OpenSSL compatibility API like the examples do.  If you'd like to try out the yaSSL API you should be able to compile yassl.cpp into your application (if it's still compatible) to get access to the API.

Thanks again,


Re: Client implementation

Hi Todd, thanks for your answer. I'll switch back to CyaSSL then.