ginuerzh
4d4690b535
fix(handler/serial,sni): 5 code-review fixes - xnet.Pipe errors, (nil,nil) warning, readTimeout comment, defer deadline, clean close
...
- serial/handler.go: capture xnet.Pipe return value in Handle() and forwardSerial()
- serial/handler.go: log Warnf when chain dial returns (nil,nil) before falling back
- sni/handler.go: use defer for read deadline reset to prevent stale deadline
- sni/handler.go: unrecognized protocol returns nil (clean close) instead of error
- sni/metadata.go: update readTimeout comment to reflect dual usage (deadline + SnifferBuilder)
2026-06-05 21:09:10 +08:00
ginuerzh
066f6813b2
fix(handler/sni): add sniff deadline, log sniff errors, nil Router guard
...
- Set read deadline before/after sniffing.Sniff to prevent goroutine
leak from slow clients (matches redirect/tcp and ss patterns)
- Log sniff errors at Debug level instead of silently discarding them
- Add nil Router check in dial closure to prevent NPE panic
2026-06-05 20:46:00 +08:00
ginuerzh
c7d16962ec
add service option for plugin
2025-08-29 23:36:31 +08:00
ginuerzh
52289bea6c
add network param for sniffing
2025-08-13 21:25:35 +08:00
ginuerzh
b597467858
add context for conn
2025-08-04 19:29:38 +08:00
ginuerzh
f71351f5ef
add interface xnet.SrcAddr/DstAddr
2025-08-03 10:15:53 +08:00
ginuerzh
208d18125c
replace xnet.Transport by xnet.Pipe
2025-07-28 20:52:15 +08:00
ginuerzh
d9a2f44a78
add src field for logger and recorder
2025-07-02 21:35:02 +08:00
ginuerzh
06d993023f
add traffic reset for stats
2024-12-24 20:11:22 +08:00
ginuerzh
6b932e35bf
sniffing websocket frame
2024-10-19 19:36:06 +08:00
ginuerzh
618d042001
add input/ouput fields for log
2024-10-16 22:16:34 +08:00
ginuerzh
24547b4332
add ClientAddr for websocket conn
2024-10-16 20:46:45 +08:00
ginuerzh
0ffed81601
add sniffer for forwarding handler
2024-10-14 21:18:38 +08:00
ginuerzh
27242d0b66
recorder: add input/output traffic stats for handler recorder object
2024-10-11 20:32:56 +08:00
ginuerzh
8f994ab632
add handle options for sniffer
2024-10-10 22:49:56 +08:00
ginuerzh
c42a44abb6
add sniffer utility
2024-10-02 22:51:23 +08:00
ginuerzh
3c8add4b82
add traffic sniffing for handler
2024-09-27 15:55:28 +08:00
ginuerzh
e22aa91571
add route for recorder
2024-09-24 20:20:15 +08:00
ginuerzh
8934cb6b1c
add tls handshake for recorder
2024-09-20 21:26:21 +08:00
ginuerzh
e37213ac01
add http body for handler recorder
2024-09-16 19:44:15 +08:00
ginuerzh
b39aa63f75
add clientIP for handler recorder object
2024-09-15 18:28:24 +08:00
ginuerzh
f681f7aa03
update handler recorder object
2024-09-15 10:51:23 +08:00
ginuerzh
69455ace9d
add handler recorder
2024-09-14 23:21:25 +08:00
ginuerzh
4a4c64cc66
fix host parsing
2024-07-10 22:57:49 +08:00
ginuerzh
c1d0887a9b
add port range support for service
2024-07-08 22:38:21 +08:00
ginuerzh
3d2a7b7d3b
move x/internal/ctx to x/ctx
2024-01-30 18:19:39 +08:00
ginuerzh
e1ae379048
fix tls handshake sniffing
2023-12-27 19:24:31 +08:00
ginuerzh
88cc6ff4d5
add traffic limiter for proxy handler
2023-11-18 18:28:09 +08:00
ginuerzh
28824885ab
add entrypoint for tunnel handler
2023-10-20 19:12:09 +08:00
ginuerzh
836cf6eade
add network for bypass
2023-09-30 17:51:55 +08:00
ginuerzh
46db8480fa
add timeout for sniffing
2023-05-21 15:47:51 +08:00
ginuerzh
32c8188351
add plugin system
2023-04-18 20:52:56 +08:00
ginuerzh
bb106e2d89
fix dtls connection
2022-12-23 18:56:58 +08:00
ginuerzh
c1b2d3b086
add http3 reverse proxy
2022-11-12 17:14:11 +08:00
ginuerzh
a1255e52d8
fix proxy protocol
2022-09-28 11:47:56 +08:00
ginuerzh
1a1c038fd7
update chain route
2022-09-20 11:48:51 +08:00
ginuerzh
01d7dc77c6
update limiter
2022-09-14 20:00:35 +08:00
ginuerzh
f3f3acd4e1
more fine-grained log level
2022-08-18 11:34:57 +08:00
ginuerzh
dca2a79c54
update sni handler
2022-04-14 14:53:13 +08:00
ginuerzh
1444ebc1ee
add metrics
2022-04-05 17:56:36 +08:00
ginuerzh
a3346ad246
add pkgs from core
2022-04-04 12:44:35 +08:00
ginuerzh
36947bcbd9
fix imports
2022-03-16 20:06:34 +08:00
ginuerzh
9397cb5351
initial commit
2022-03-14 20:27:14 +08:00