Philipp Kunz
9aa747b5d4
feat(SniHandler): Enhance SNI extraction to support session caching and tab reactivation by adding session cache initialization, cleanup and helper methods. Update processTlsPacket to use cached SNI for session resumption and connection racing scenarios.
2025-03-14 11:34:52 +00:00
Philipp Kunz
e2ee673197
BREAKING CHANGE(core): refactor: reorganize internal module structure to use classes.pp.* modules
...
- Renamed port proxy and SNI handler source files to classes.pp.portproxy.js and classes.pp.snihandler.js respectively
- Updated import paths in index.ts and test files (e.g. in test.ts and test.router.ts) to reference the new file names
- This refactor improves code organization but breaks direct imports from the old paths
2025-03-14 09:53:25 +00:00
Philipp Kunz
4c0105ad09
fix(portproxy): Improve TLS handshake timeout handling and connection piping in PortProxy
2025-03-12 15:49:41 +00:00
Philipp Kunz
7fe455b4df
fix(core): Refactor PortProxy and SniHandler: improve configuration handling, logging, and whitespace consistency
2025-03-12 12:19:36 +00:00
Philipp Kunz
ddfbcdb1f3
fix(SniHandler): Refactor SniHandler: update whitespace, comment formatting, and consistent type definitions
2025-03-12 10:54:24 +00:00
Philipp Kunz
baaee0ad4d
fix(portproxy): Enforce TLS handshake and SNI validation on port 443 by blocking non-TLS connections and terminating session resumption attempts without SNI when allowSessionTicket is disabled.
2025-03-12 10:27:25 +00:00
Philipp Kunz
ab1ec84832
fix(tls/sni): Improve logging for TLS session resumption by extracting and logging SNI values from ClientHello messages.
2025-03-12 10:01:54 +00:00
Philipp Kunz
1a90566622
fix(TLS/SNI): Improve TLS session resumption handling and logging. Now, session resumption attempts are always logged with details, and connections without a proper SNI are rejected when allowSessionTicket is disabled. In addition, empty SNI extensions are explicitly treated as missing, ensuring stricter and more consistent TLS handshake validation.
2025-03-12 09:56:21 +00:00
Philipp Kunz
124f8d48b7
fix(SniHandler): Refactor hasSessionResumption to return detailed session resumption info
2025-03-11 19:41:04 +00:00
Philipp Kunz
62a3e1f4b7
fix(SniHandler): Improve TLS SNI session resumption handling: connections containing a session ticket are now only rejected when no SNI is present and allowSessionTicket is disabled. Updated return values and logging for clearer resumption detection.
2025-03-11 19:38:41 +00:00
Philipp Kunz
9dbf6fdeb5
feat(PortProxy/TLS): Add allowSessionTicket option to control TLS session ticket handling
2025-03-11 19:31:20 +00:00
Philipp Kunz
29d28fba93
feat(SniHandler): Add session cache support and tab reactivation detection to improve SNI extraction in TLS handshakes
2025-03-11 18:05:20 +00:00
Philipp Kunz
6fddafe9fd
feat(PortProxy): Add domain-specific NetworkProxy integration support to PortProxy
2025-03-11 17:50:56 +00:00
Philipp Kunz
21a24fd95b
fix(core): No code changes detected; bumping patch version for consistency.
2025-03-11 17:38:32 +00:00
Philipp Kunz
415b82a84a
fix(PortProxy): Improve SNI extraction handling in PortProxy by passing explicit connection info to extractSNIWithResumptionSupport for better TLS renegotiation and debug logging.
2025-03-11 17:37:43 +00:00
Philipp Kunz
0e12706176
feat(SniHandler): Enhance SNI extraction to support fragmented ClientHello messages, TLS 1.3 early data, and improved PSK parsing
2025-03-11 17:33:31 +00:00
Philipp Kunz
36e4341315
fix(snihandler): Enhance SNI extraction to support TLS 1.3 PSK-based session resumption by adding a dedicated extractSNIFromPSKExtension method and improved logging for session resumption indicators.
2025-03-11 17:23:57 +00:00
Philipp Kunz
43378becd2
fix(PortProxy): Improve buffering and data handling during connection setup in PortProxy to prevent data loss
2025-03-11 17:05:15 +00:00
Philipp Kunz
87d26c86a1
fix(PortProxy/SNI): Refactor SNI extraction in PortProxy to use the dedicated SniHandler class
2025-03-11 17:01:07 +00:00
Philipp Kunz
8d06f1533e
feat(portproxy): Add ACME certificate management options to PortProxy, update ACME settings handling, and bump dependency versions
2025-03-11 12:56:03 +00:00
Philipp Kunz
223be61c8d
3.35.0
2025-03-11 12:45:55 +00:00
Philipp Kunz
e31c84493f
feat(core): Improve wildcard domain matching and enhance NetworkProxy integration in PortProxy. Added support for TLD wildcards and complex wildcard patterns in the router, and refactored TLS renegotiation handling for stricter SNI enforcement.
2025-03-11 11:34:29 +00:00
Philipp Kunz
df7a12041e
feat(portproxy): Add browser-friendly mode and SNI renegotiation configuration options to PortProxy
2025-03-11 09:57:06 +00:00
Philipp Kunz
85cc57ae10
fix(PortProxy): Simplify TLS handshake SNI extraction and update timeout settings in PortProxy for improved maintainability and reliability.
2025-03-11 09:12:40 +00:00
Philipp Kunz
865d21b36a
fix(portproxy): Relax TLS handshake and connection timeout settings for improved stability in chained proxy scenarios; update TLS session cache defaults and add keep-alive flags to connection records.
2025-03-11 04:39:17 +00:00
Philipp Kunz
ccccc5b8c8
feat(PortProxy): Enhance TLS session cache, SNI extraction, and chained proxy support in PortProxy. Improve handling of multiple and fragmented TLS records, and add new configuration options (isChainedProxy, chainPosition, aggressiveTlsRefresh, tlsSessionCache) for robust TLS certificate refresh.
2025-03-11 04:24:29 +00:00
Philipp Kunz
119b643690
fix(PortProxy): Improve SNI renegotiation handling by adding flexible domain configuration matching on rehandshake and session resumption events.
2025-03-11 03:56:09 +00:00
Philipp Kunz
d6022c8f8a
fix(PortProxy): Improve TLS handshake buffering and enhance debug logging for SNI forwarding in PortProxy
2025-03-11 03:48:10 +00:00
Philipp Kunz
55f25f1976
feat(PortProxy): Improve TLS handshake SNI extraction and add session resumption tracking in PortProxy
2025-03-11 03:16:04 +00:00
Philipp Kunz
cb83caeafd
fix(core): No changes in this commit.
2025-03-11 02:50:01 +00:00
Philipp Kunz
788b444fcc
fix(PortProxy): Improve TLS renegotiation SNI handling by first checking if the new SNI is allowed under the existing domain config. If not, attempt to find an alternative domain config and update the locked domain accordingly; otherwise, terminate the connection on SNI mismatch.
2025-03-11 02:25:58 +00:00
Philipp Kunz
74fdb58f84
fix(PortProxy): Improve TLS renegotiation handling in PortProxy by validating the new SNI against allowed domain configurations. If the new SNI is permitted based on existing IP rules, update the locked domain to allow connection reuse; otherwise, terminate the connection to prevent misrouting.
2025-03-11 02:18:56 +00:00
Philipp Kunz
67a4228518
fix(internal): No uncommitted changes detected; project files and tests remain unchanged.
2025-03-10 22:36:28 +00:00
Philipp Kunz
c415a6c361
fix(PortProxy): Fix TLS renegotiation handling and adjust TLS keep-alive timeouts in PortProxy implementation
2025-03-10 22:35:34 +00:00
Philipp Kunz
f9c42975dc
fix(classes.portproxy.ts): Simplify timeout management in PortProxy and fix chained proxy certificate refresh issues
2025-03-10 22:07:12 +00:00
Philipp Kunz
8d3b07b1e6
fix(classes.portproxy.ts): Adjust TLS keep-alive timeout to refresh certificate context.
2025-03-10 14:15:03 +00:00
Philipp Kunz
146fac73cf
fix(PortProxy): Improve TLS keep-alive management and fix whitespace formatting
2025-03-10 14:13:56 +00:00
Philipp Kunz
9d7ed21cba
feat(PortProxy): Add advanced TLS keep-alive handling and system sleep detection
2025-03-08 12:40:55 +00:00
Philipp Kunz
0704853fa2
fix(core): Fix functional errors in the proxy setup and enhance pnpm configuration
2025-03-07 15:50:25 +00:00
Philipp Kunz
f28e68e487
fix(PortProxy): Fix test for PortProxy handling of custom IPs in Docker/CI environments.
2025-03-07 15:46:34 +00:00
Philipp Kunz
618b6fe2d1
fix(readme): Update readme for IPTablesProxy options
2025-03-07 14:34:49 +00:00
Philipp Kunz
bbdea52677
feat(IPTablesProxy): Enhanced IPTablesProxy with multi-port and IPv6 support
2025-03-07 14:30:38 +00:00
Philipp Kunz
98c61cccbb
fix(PortProxy): Adjust default timeout settings and enhance keep-alive connection handling in PortProxy.
2025-03-07 11:16:44 +00:00
Philipp Kunz
b96d7dec98
fix(core): Ensure proper resource cleanup during server shutdown.
2025-03-07 02:55:19 +00:00
Philipp Kunz
9bd87b8437
fix(router): Improve path pattern matching and hostname prioritization in router
2025-03-07 02:54:34 +00:00
Philipp Kunz
a14b7802c4
fix(PortProxy): Ensure timeout values are within Node.js safe limits
2025-03-06 23:08:57 +00:00
Philipp Kunz
cb6c2503e2
fix(portproxy): Adjust safe timeout defaults in PortProxy to prevent overflow issues.
2025-03-06 23:00:24 +00:00
Philipp Kunz
0e605d9a9d
fix(PortProxy): Improved code formatting and readability in PortProxy class by adjusting spacing and comments.
2025-03-06 22:56:18 +00:00
Philipp Kunz
568f77e65b
feat(router): Add detailed routing tests and refactor ProxyRouter for improved path matching
2025-03-06 08:36:19 +00:00
Philipp Kunz
eea8942670
feat(AcmeCertManager): Introduce AcmeCertManager for enhanced ACME certificate management
2025-03-06 08:27:44 +00:00