Skip to content

Conversation

ekovacs
Copy link
Contributor

@ekovacs ekovacs commented Aug 29, 2024

TLS certs go stale / expire overtime.

When they do, they need to be renewed.

Originally, when a server (acceptor) starts up, it configures its tls.Config to use for tls connections.
When this tls.Config uses / is set up with Certificates []Certificate, then the cert will be stored / remain in memory, and will be static in nature. Any renewal on the disk would not affect that Certificates slice. The only way to effectuate the new certs is to reboot the server.

This reboot may be undesirable / unnecessary, if the server would be able to load the server cert on demand.

Golang solves this issue, by allowing the tls.Config to load the server cert by a user specified function (GetCertificate).

This PR would allow the developer to specify a tls.Config of their choice, and in turn would allow them to be fully in control of the tls.Config of the acceptor (including the specification of such GetCertificate function to avoid downtime in case of cert renewal)

@ackleymi ackleymi merged commit 5ec1219 into quickfixgo:main Sep 4, 2024
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.

3 participants