1

(4 replies, posted in wolfSSL)

danielinux wrote:

Hi
The examples don't show how to build TLS protocols for EFI,  only wolfCrypt (cryptography algorithms implementation).

For the purpose described, (https server) you need to connect wolfSSL to a transport layer (typically a TCP/IP stack with its own drivers etc.)

>  I get many errors from file WinUser.h

This sounds windows specific, perhaps your IDE is configuring a windows project which is not compatible with EFI. You will have to create a user_settings.h file specific for EFI, assign a transport via custom I/O callbacks (e.g. a TCP/IP stack) and then compile against gnuefi (not against your OS libraries).

Suggest: make a working HTTP server first, then upgrade to HTTPS by linking wolfSSL once you have your sockets working.

We don't have a port for EFI yet, but if you have drivers for your interrface you may want to try and port wolfIP (https://github.com/wolfssl/wolfip/snake game) to gnu-efi,  There is a simple REST HTTPS server included there

Regards,

--
Daniele  (wolfSSL)

I agree with this advice. One mistake I often see is treating wolfSSL as a complete HTTPS server solution. In reality, wolfSSL handles the TLS layer, but you still need a functioning transport layer underneath it.
Personally, I would follow the suggested approach: get a plain HTTP server working first, verify that your networking stack and socket layer are stable, and only then integrate wolfSSL. Debugging networking and TLS at the same time can become very difficult.

placeyeast wrote:

To me that says the transport, key exchange, cipher negotiation, and bulk encryption are all working correctly. The failure appears isolated to certificate geometry dash lite validation.

I'd also be curious whether a different target (for example a site using a different intermediate/root hierarchy) produces the same result. If every verified connection fails with -155, that points to a systemic verification problem. If only certain chains fail, that could help isolate the exact algorithm or certificate structure triggering it.

To me that says the transport, key exchange, cipher negotiation, and bulk encryption are all working correctly. The failure appears isolated to certificate validation.