eve.tls

TLS/SSL Support for EVE (Experimental)

This package provides TLS/SSL encryption for EVE network connections.

Status: Experimental. The API may change. Not recommended for production use without thorough testing.

Platform Support:

  • Linux: OpenSSL (experimental)
  • Windows: SChannel (experimental)
  • FreeBSD/BSD: OpenSSL (experimental)
  • macOS: Not yet implemented

The API is defined in eve.tls.api and aims to be consistent across all platforms.

Example:

import eve.tls;

// Create a client TLS context
auto ctx = TlsContext.clientContext()
   .setServerName("example.com")
   .setMinVersion(TlsVersion.TLS_1_2);

// Wrap an existing TCP connection with TLS
auto tlsStream = TlsStream(tcpConnection, ctx);
tlsStream.handshake();

// Now use tlsStream for encrypted I/O
tlsStream.write(cast(const(ubyte)[])"GET / HTTP/1.1\r\n\r\n");

No exported symbols.