30e84ac3b7
feat: implement get sessions by user
2026-01-02 22:58:54 +07:00
fd6ffc2500
feat(grpc): integrate slug edit handling
2026-01-02 18:27:48 +07:00
e1cd4ed981
WIP: gRPC integration, initial implementation
2026-01-01 21:03:17 +07:00
b115369913
fix: wait for both goroutines before cleanup in HandleConnection
...
renovate / renovate (push) Successful in 1m42s
Docker Build and Push / build-and-push-branches (push) Successful in 4m46s
Docker Build and Push / build-and-push-tags (push) Successful in 4m51s
Only waited for one of two copy goroutines, leaking the second. Now waits
for both to complete before closing connections.
Fixes file descriptor leak causing 'too many open files' under load.
Fixes : #56
2025-12-31 22:22:51 +07:00
9276430fae
refactor(session): add registry to manage SSH sessions
...
renovate / renovate (push) Successful in 36s
Docker Build and Push / build-and-push-branches (push) Successful in 4m41s
Docker Build and Push / build-and-push-tags (push) Successful in 4m38s
- Implement thread-safe session registry with sync.RWMutex
- Add Registry interface for session management operations
- Support Get, Register, Update, and Remove session operations
- Enable dynamic slug updates for existing sessions
- Fix Connection closed by remote because HandleTCPIPForward run on a goroutine
2025-12-31 18:33:47 +07:00
f8a6f0bafe
refactor(session): add registry to manage SSH sessions
...
renovate / renovate (push) Successful in 39s
Docker Build and Push / build-and-push-branches (push) Successful in 4m27s
Docker Build and Push / build-and-push-tags (push) Successful in 4m22s
- Implement thread-safe session registry with sync.RWMutex
- Add Registry interface for session management operations
- Support Get, Register, Update, and Remove session operations
- Enable dynamic slug updates for existing sessions
2025-12-31 17:47:35 +07:00
acd02aadd3
refactor: restructure project architecture
renovate / renovate (push) Successful in 45s
Docker Build and Push / build-and-push-branches (push) Successful in 5m54s
Docker Build and Push / build-and-push-tags (push) Successful in 6m21s
2025-12-31 15:49:37 +07:00
ab34b34765
fix: prevent subdomain change to already-in-use subdomains
renovate / renovate (push) Successful in 35s
Docker Build and Push / build-and-push (push) Successful in 5m42s
2025-12-30 19:41:33 +07:00
d8330c684f
feat: make SSH interaction UI fully responsive
2025-12-30 00:09:18 +07:00
85f21e7698
feat(tui): update interaction layer to Bubble Tea TUI
renovate / renovate (push) Successful in 27s
Docker Build and Push / build-and-push (push) Successful in 3m49s
2025-12-29 21:55:39 +07:00
2644b4521c
refactor: improve encapsulation
renovate / renovate (push) Successful in 20s
Docker Build and Push / build-and-push (push) Successful in 3m25s
2025-12-29 12:37:03 +07:00
1d918ef2aa
feat(port): disable TCP forwarding by default and refactor port manager
renovate / renovate (push) Successful in 28s
Docker Build and Push / build-and-push (push) Successful in 5m27s
2025-12-28 19:03:26 +07:00
76d1202b8e
fix: correct logic when checking tcpip-forward request
Docker Build and Push / build-and-push (push) Successful in 5m34s
2025-12-26 23:17:13 +07:00
6dff735216
fix: prevent OOM by bounding io.Copy buffer usage
Docker Build and Push / build-and-push (push) Successful in 3m47s
2025-12-18 21:09:12 +07:00
7bc5a01ba7
feat: add pprof for debuging
Docker Build and Push / build-and-push (push) Successful in 3m51s
2025-12-18 18:30:49 +07:00
6451304ed7
fix: potential resource leak
Docker Build and Push / build-and-push (push) Successful in 4m17s
2025-12-17 21:38:00 +07:00
2725975d82
fix: add nil check in Forwarder.Close to avoid panic (issue #36 )
Docker Build and Push / build-and-push (push) Successful in 4m8s
2025-12-12 15:36:07 +07:00
c951c41a9b
fix: prevent race condition when channel is used before being set
Docker Build and Push / build-and-push (push) Successful in 6m24s
2025-12-08 22:46:10 +07:00
dd96c8fe75
refactor: remove magic numbers and replace with named constants
Docker Build and Push / build-and-push (push) Successful in 6m20s
2025-12-08 19:46:04 +07:00
ba5f702e36
feat: add droping conn command
Docker Build and Push / build-and-push (push) Successful in 4m38s
2025-12-07 15:26:37 +07:00
03d3c8e4fb
feat: make interaction more interactive
2025-12-06 23:46:09 +07:00
9bd2bead9e
refactor: instantiate new session object once forwarding is approved
Docker Build and Push / build-and-push (push) Successful in 6m6s
2025-12-06 23:14:13 +07:00
69c3e78728
fix: correct read/write handling in CustomWriter
Docker Build and Push / build-and-push (push) Successful in 5m7s
2025-12-06 22:18:43 +07:00
af951b8fa7
fix: discard unused buffers in the ssh channel before disconnecting
2025-12-05 22:26:38 +07:00
990bccbff7
update: handle message deletion properly
2025-12-05 22:24:46 +07:00
659f6c3ee7
refactor: move CreateForwardedTCPIPPayload to forwarder interface
2025-12-05 13:49:33 +07:00
7a31047bb9
refactor: restructure session initialization to avoid circular references
2025-12-04 22:48:15 +07:00
039e979142
refactor: restructure session initialization to avoid circular references
2025-12-04 19:32:00 +07:00
515bc30559
fix: conn reader stuck when header have body
Docker Build and Push / build-and-push (push) Has been cancelled
2025-12-03 21:14:42 +07:00
f59de03a50
fix: panic due to nil pointer when disconnecting a session
Docker Build and Push / build-and-push (push) Has been cancelled
2025-12-02 21:52:23 +07:00
d7d6e24a42
feat: add header factory
Docker Build and Push / build-and-push (push) Has been cancelled
2025-12-02 17:14:17 +07:00
f00b8db729
fix: http forwarding stuck
Docker Build and Push / build-and-push (push) Has been cancelled
2025-11-28 19:35:43 +07:00
342f58ddb9
fix: logic error in port checking
Docker Build and Push / build-and-push (push) Has been cancelled
2025-11-28 17:34:23 +07:00
8442fedef1
refactor: handle error
Docker Build and Push / build-and-push (push) Has been cancelled
2025-11-28 16:57:13 +07:00
d3a5007d68
refactor: separate session responsibilities and inject dependencies
Docker Build and Push / build-and-push (push) Has been cancelled
2025-11-28 13:29:43 +07:00
9c4ac732ee
fix: close connection on TCP/IP request timeout
Docker Build and Push / build-and-push (push) Has been cancelled
2025-11-27 22:51:34 +07:00
96dcea1f2c
feat: add dedicated WebSocket service for subdomain ping
Docker Build and Push / build-and-push (push) Successful in 6m33s
2025-09-06 17:17:43 +07:00
c4dd086fb3
fix: ensure SSH connections close on client disconnect
Docker Build and Push / build-and-push (push) Successful in 4m20s
2025-07-23 12:40:20 +07:00
f6ad5c81e3
fix: resolve resource exhaustion with high connection counts
Docker Build and Push / build-and-push (push) Successful in 3m40s
2025-07-22 13:19:28 +07:00
28f0caced1
fix: resolve resource exhaustion with high connection counts
Docker Build and Push / build-and-push (push) Successful in 3m39s
2025-07-22 12:55:02 +07:00
4b21541668
fix: resolve resource exhaustion with high connection counts
Docker Build and Push / build-and-push (push) Successful in 3m40s
2025-07-22 12:38:52 +07:00
9f18cfa954
fix: remove timeouts from HTTP/HTTPS handlers and improve concurrency
Docker Build and Push / build-and-push (push) Successful in 3m40s
2025-07-21 19:54:17 +07:00
4a25627ab5
fix: using close channel when attempting to close session
Docker Build and Push / build-and-push (push) Successful in 3m35s
2025-07-21 16:36:05 +07:00
0ada07400d
refactor: remove unuse variable and channel
Docker Build and Push / build-and-push (push) Successful in 6m13s
2025-07-21 14:19:58 +07:00
8c15da6131
feat: Support dynamic port allocation for SSH forwarding
Docker Build and Push / build-and-push (push) Failing after 42s
2025-07-21 13:07:42 +07:00
66f1492466
refactor: remove unuse variable and channel
2025-07-21 12:10:08 +07:00
32f9765374
refactor: remove slug channel from session struct
2025-07-21 11:37:57 +07:00
0117931817
fix: reject non tunnel request & reject duplicated port
2025-04-08 23:14:42 +07:00
5350bc13a9
refactor: optimize HTTP header parsing
2025-04-08 12:59:58 +07:00
4912aafe65
update: implement tls server
2025-04-05 23:27:32 +07:00