Commit Graph

772 Commits

Author SHA1 Message Date
Jianhui Zhao b6cbf55760 fix: Fix the device heartbeat detection mechanism
Abnormal logs appear in some environments.
```
Inactive device in long time
```

Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-06-05 14:47:45 +08:00
Jianhui Zhao d76b400fe7 feat: bump version 4.4.4
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-05-28 14:36:19 +08:00
Jianhui Zhao 16e0e4ed76 perf: replace ioutil.ReadAll with io.ReadAll
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-05-28 14:34:42 +08:00
Jianhui Zhao bfefcdb0bd perf: replace interface{} with any
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-05-28 14:25:18 +08:00
Jianhui Zhao fb953b665e perf: optimize JSON message construction using fmt.Appendf
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-05-28 14:16:59 +08:00
Jianhui Zhao bb112787d0 fix: prevent concurrent map access with sync.Map
```
fatal error: concurrent map read and map write
```

Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-05-28 14:08:37 +08:00
Jianhui Zhao 181815046c chore: update FUNDING.yml
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-05-22 23:42:00 +08:00
Jianhui Zhao f47120a41f feat: bump version 4.4.3
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-05-12 11:37:20 +08:00
Jianhui Zhao 819dcbd00f fix: Fix potential panic issue 9dfc856
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-05-12 11:35:10 +08:00
Jianhui Zhao 385a7bbc00 feat: bump version 4.4.2
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-04-25 16:22:21 +08:00
Jianhui Zhao 35a306dfd9 ci: use ubuntu-24.04
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-04-25 16:21:15 +08:00
Jianhui Zhao 9dfc856b74 fix: Fix potential panic issue
```
2025-04-24T06:59:56Z |INFO| New session: 81ee1ed4d12c3048620fbb2168c08257
2025-04-24T07:00:10Z |INFO| Delete session: 81ee1ed4d12c3048620fbb2168c08257
2025-04-24T07:00:17Z |INFO| New session: 427ce01b7f47a7ee8192cefdfa291c8f
2025-04-24T07:00:57Z |INFO| Delete session: 427ce01b7f47a7ee8192cefdfa291c8f
2025-04-24T07:01:55Z |INFO| New session: ffbfd5c596195c2bd43b8c0b6dc3d135
2025-04-24T07:01:57Z |ERRO| websocket: close sent
panic: send on closed channel

goroutine 33 [running]:
main.(*user).WriteMsg(0xc00037e680, 0x2, {0xc000188d10, 0xc, 0xc})
        /home/runner/work/rttys/rttys/user.go:52 +0x8b
main.(*broker).run(0xc00035a000)
        /home/runner/work/rttys/rttys/broker.go:227 +0xf34
created by main.runRttys in goroutine 1
        /home/runner/work/rttys/rttys/main.go:86 +0x595
```

Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-04-25 16:03:56 +08:00
Dien Nguyen 3840811605 fix: use the WebUI cert and key file for web proxy service
We should use the WebUI cert and key file for web proxy service.

Signed-off-by: Dien Nguyen <nguyentienhoangdien@gmail.com>
2025-01-31 21:44:49 +08:00
Jianhui Zhao 13bc09c2c1 feat: bump version 4.4.1
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-23 12:27:52 +08:00
Jianhui Zhao 837cb8b188 fix: Fix panic due to send on closed channel
```
2025-01-23T12:19:46+08:00 |INFO| New session: bf1be06db4b7c04cb951e5cb90e60f3b
panic: send on closed channel

goroutine 8 [running]:
main.(*user).WriteMsg(0xc000342140, 0x1, {0xc000124050, 0x41, 0x50})
        /mnt/wsl/work/rttys/user.go:52 +0x8b
main.userLoginAck(0x0, {0xf83100, 0xc000342140})
        /mnt/wsl/work/rttys/user.go:75 +0xc9
main.(*broker).run(0xc000270c80)
        /mnt/wsl/work/rttys/broker.go:212 +0xd91
created by main.runRttys in goroutine 1
        /mnt/wsl/work/rttys/main.go:86 +0x595
exit status 2
```

Run this script to reproduce:
```

local websocket = require 'eco.websocket'

local ws, err = websocket.connect('ws://127.0.0.1:5913/connect/test')
if not ws then
    print('failed to connect: ' .. err)
    return
end

os.exit()
```

Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-23 12:18:41 +08:00
Jianhui Zhao 2540677ce5 feat: bump version 4.4.0
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-16 17:08:19 +08:00
Jianhui Zhao 0e4c8acbe0 chore: add more debug log
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-16 17:07:08 +08:00
Jianhui Zhao 391096e7ae feat: Update all golang dependencies.
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-16 12:25:49 +08:00
Jianhui Zhao 5e8bb12c6d feat: add support set http-proxy-redir-domain in nginx proxy.
```
location /web/ {
    proxy_set_header HttpProxyRedir http://web.your-server.com;
    proxy_set_header HttpProxyRedirDomain .your-server.com
    proxy_pass http://127.0.0.1:5913;
}
```

Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-16 11:21:16 +08:00
Jianhui Zhao 282f4452a9 docs: fix README
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-16 11:17:41 +08:00
Jianhui Zhao 9b923492e0 chore: pretty code style
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-16 10:40:36 +08:00
Jianhui Zhao bd0138743f chore: add more debug log
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-16 10:02:20 +08:00
Jianhui Zhao 5b24011243 fix(ui): Fix copy text from term.
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-15 18:14:48 +08:00
Jianhui Zhao 8847ff6c3c feat: bump version 4.3.0
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-14 19:38:12 +08:00
Jianhui Zhao 58ac74caf2 feat: default listen tcp4 for http proxy
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-14 19:34:53 +08:00
Jianhui Zhao 7c915d80aa chore: use golang.org/x/term
`golang.org/x/crypto/ssh/terminal` is deprecated,
this package moved to `golang.org/x/term`.

Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-14 19:34:27 +08:00
Jianhui Zhao 9d157eb954 feat: add support set log level
```
rttys run --log-level debug
```

Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-14 19:34:27 +08:00
Jianhui Zhao c76c5335cb chore: add more log
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-14 19:34:01 +08:00
Jianhui Zhao a749bd3e8a feat: add support set http-proxy-redir-url in nginx proxy.
```
location /web/ {
    proxy_set_header HttpProxyRedir http://$server_name;
    proxy_pass http://127.0.0.1:5913;
}
```

Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-14 16:07:31 +08:00
Jianhui Zhao 626ee13729 docs: fix proxy via nginx
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2025-01-14 16:07:24 +08:00
Jianhui Zhao e0880d4a4e feat: bump version 4.2.0
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-12-17 11:59:37 +08:00
Jianhui Zhao b448c00831 doc: update
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-12-17 11:55:31 +08:00
Jianhui Zhao 90d51a5ec4 perf: Improve configuration parsing logic
* Do not set default configuration file
* Command line flag priority

Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-12-17 11:03:00 +08:00
Jianhui Zhao b326fb917b perf: improve code
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-12-17 09:13:44 +08:00
Jianhui Zhao 91f6e74116 feat(ui): add an error page to show error message.
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-12-16 15:26:17 +08:00
Jianhui Zhao fec71e8374 doc: update
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-12-16 11:20:57 +08:00
Jianhui Zhao a272ad4e80 feat: add support set http-proxy-redir-domain
Used for set cookie via nginx proxy.

Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-12-16 11:15:40 +08:00
Jianhui Zhao 47d3fa43cb doc: update
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-12-14 17:27:08 +08:00
Jianhui Zhao 0e1fdf10a6 fix: Fix local-auth for api /connect/:devid
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-12-13 15:16:53 +08:00
Jianhui Zhao 41d902dd67 perf: Set the default value of local-auth to true
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-12-13 15:16:47 +08:00
Jianhui Zhao 3c640ccf72 fix(ui): Fix term window size for white-list device
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-12-13 12:20:51 +08:00
Jianhui Zhao 7c760bd057 feat: Add support use own device authentication server
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-12-13 11:29:41 +08:00
Jianhui Zhao fcf7a2b5b3 style: fix code style
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-12-13 11:27:16 +08:00
Jianhui Zhao d17caa758e doc: perfect docker usage.
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-11-30 11:20:24 +08:00
Jianhui Zhao b37a4776e8 feat: bump version 4.1.5
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-11-28 22:32:18 +08:00
Jianhui Zhao 01aeef110a refactor(ui): Rewrite with latest element-plus
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-11-28 22:32:05 +08:00
Jianhui Zhao b2cd7ab5a8 feat: bump version 4.1.4
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-11-23 22:04:49 +08:00
Jianhui Zhao dee7677e1e fix: Fix access permission
Fix an issue that users can access unbound devices by
entering the url directly.

Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-11-23 21:42:54 +08:00
Jianhui Zhao 7dd174d096 fix: Fix panic: send on closed channel
```
device                           broker
------------------------------------------------------
dev.br.register <- dev

dev.br.unregister <- dev
                                 handle unregister
                                       c.Close()

                                 handle register
                                       c.WriteMsg(msgTypeRegister, append([]byte{err}, msg...))
                                            dev.send <- append(b, data...)

```

Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-11-23 20:14:15 +08:00
Jianhui Zhao 26328a681f feat: bump version 4.1.3
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2024-11-22 16:01:34 +08:00