termfront 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/lib/termfront/network/server.rb +8 -3
- data/lib/termfront/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 64c01550bc002aa40824296474323c7dc6126447fe52bd8acb8cf150514a68af
|
|
4
|
+
data.tar.gz: 07c871ac0a859394d94d98189700195a8a98469c0f319d8748482ff79f617883
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 665f32c4d60b34330ba53c5beafed57826c5b1402a9855c613cd40941dbb4ea8bd29dd93eeb564b90513809d7f26e7f649624d1fe749054ead899884865f74c3
|
|
7
|
+
data.tar.gz: 5d5f99b125210dbf8980cea284f112279178d228499f1caad9880deb99869cced727bfd180d5b1b8db645c10aa6627c7ba79e218b6093fd8e74b37f2bf5bf102
|
data/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,12 @@ The format is based on Keep a Changelog, and this project follows Semantic Versi
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.1.3] - 2026-05-24
|
|
10
|
+
|
|
11
|
+
### Fixed
|
|
12
|
+
|
|
13
|
+
- Fixed TLS server certificate loading to include intermediate certificates from `fullchain.pem`, allowing clients to verify Let's Encrypt chains correctly
|
|
14
|
+
|
|
9
15
|
## [0.1.2] - 2026-05-23
|
|
10
16
|
|
|
11
17
|
### Added
|
|
@@ -43,11 +43,12 @@ module Termfront
|
|
|
43
43
|
end
|
|
44
44
|
|
|
45
45
|
def run
|
|
46
|
-
cert, key = load_or_create_cert
|
|
46
|
+
cert, key, chain = load_or_create_cert
|
|
47
47
|
|
|
48
48
|
ctx = OpenSSL::SSL::SSLContext.new
|
|
49
49
|
ctx.cert = cert
|
|
50
50
|
ctx.key = key
|
|
51
|
+
ctx.extra_chain_cert = chain unless chain.empty?
|
|
51
52
|
|
|
52
53
|
tcp_server = TCPServer.new("0.0.0.0", @port)
|
|
53
54
|
ssl_server = OpenSSL::SSL::SSLServer.new(tcp_server, ctx)
|
|
@@ -593,7 +594,10 @@ module Termfront
|
|
|
593
594
|
key_file = ENV.fetch("TERMFRONT_TLS_KEY_FILE", "termfront_server.key")
|
|
594
595
|
|
|
595
596
|
if File.exist?(cert_file) && File.exist?(key_file)
|
|
596
|
-
|
|
597
|
+
certs = OpenSSL::X509::Certificate.load(File.read(cert_file))
|
|
598
|
+
certs = [certs] unless certs.is_a?(Array)
|
|
599
|
+
cert = certs.first
|
|
600
|
+
chain = certs.drop(1)
|
|
597
601
|
key = OpenSSL::PKey::RSA.new(File.read(key_file))
|
|
598
602
|
puts "Loaded existing certificate."
|
|
599
603
|
else
|
|
@@ -601,8 +605,9 @@ module Termfront
|
|
|
601
605
|
File.write(cert_file, cert.to_pem)
|
|
602
606
|
File.write(key_file, key.to_pem)
|
|
603
607
|
puts "Generated new self-signed certificate."
|
|
608
|
+
chain = []
|
|
604
609
|
end
|
|
605
|
-
[cert, key]
|
|
610
|
+
[cert, key, chain]
|
|
606
611
|
end
|
|
607
612
|
|
|
608
613
|
def pvp_spawns
|
data/lib/termfront/version.rb
CHANGED