Skip to content

[Feat] TLS support - #14

Merged
ndrean merged 3 commits into
g41797:mainfrom
ndrean:main
Dec 29, 2025
Merged

[Feat] TLS support#14
ndrean merged 3 commits into
g41797:mainfrom
ndrean:main

Conversation

@ndrean

@ndrean ndrean commented Dec 29, 2025

Copy link
Copy Markdown
Collaborator

@g41797

Solves #13

Heavily inspired by: https://github.com/karlseguin/websocket.zig/blob/master/src/client/client.zig and https://github.com/karlseguin/smtp_client.zig/blob/master/src/stream.zig

So the TLS is heavily inspired by Karl Seguin work:

  • use arena for a static pre-shaped buffer for the 4 reads/Writes, wrapped in a Box{} (Tls.zig) with the init() using the new std.Io.Writer|Reader. TBH, how this works is not clear with this .stream.reader|writer.interface(buffer).
  • Client.zig is where the Client.upgradeTLS() and Client.connect() are declared, and used in _Conn._connect()
  • Added TLS test check to CI. The .pem files are built in-situ with openSSL so that it is independent from the ones I created for local testing.

The local act -W .github/workflows/ci.yml --container-architecture linux/arm64 -j test passes.
The push to my forked also passes.

Solves #16 : Added docs step to publish on push. Also works on my fork (you must enable github pages in settings/pages/)

A bit of additional housekeeping (removed forgotten dead struct and renaming to be consistent) on the structs in the protocol.zig.

@g41797

g41797 commented Dec 29, 2025

Copy link
Copy Markdown
Owner

@ndrean
check your collaborator rights - merge pr
and thank you for hard work

@ndrean
ndrean merged commit 350785a into g41797:main Dec 29, 2025
4 checks passed
@ndrean

ndrean commented Dec 29, 2025

Copy link
Copy Markdown
Collaborator Author

@g41797
I thought you were going to run your reviewer tool. CodeRabbit AI?

@g41797

g41797 commented Dec 29, 2025

Copy link
Copy Markdown
Owner

I'll run Claude Code later in order to add several new commands using generic request function
Just becuase it's completely mechanic work and used already "manually" developed code. I did not use AI for code generation, rather fixing docs, css, htmls, js - mostly for docs site

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants