|
|
@@ -1,9 +1,30 @@
|
|
1
|
1
|
package config
|
|
2
|
2
|
|
|
|
3
|
+import (
|
|
|
4
|
+ "os"
|
|
|
5
|
+)
|
|
|
6
|
+
|
|
3
|
7
|
type Rustdesk struct {
|
|
4
|
8
|
IdServer string `mapstructure:"id-server"`
|
|
5
|
9
|
RelayServer string `mapstructure:"relay-server"`
|
|
6
|
10
|
ApiServer string `mapstructure:"api-server"`
|
|
7
|
11
|
Key string `mapstructure:"key"`
|
|
|
12
|
+ KeyFile string `mapstructure:"key-file"`
|
|
8
|
13
|
Personal int `mapstructure:"personal"`
|
|
9
|
14
|
}
|
|
|
15
|
+
|
|
|
16
|
+func LoadKeyFile(rustdesk *Rustdesk) {
|
|
|
17
|
+ // Load key file
|
|
|
18
|
+ if rustdesk.Key != "" {
|
|
|
19
|
+ return
|
|
|
20
|
+ }
|
|
|
21
|
+ if rustdesk.KeyFile != "" {
|
|
|
22
|
+ // Load key from file
|
|
|
23
|
+ b, err := os.ReadFile(rustdesk.KeyFile)
|
|
|
24
|
+ if err != nil {
|
|
|
25
|
+ return
|
|
|
26
|
+ }
|
|
|
27
|
+ rustdesk.Key = string(b)
|
|
|
28
|
+ return
|
|
|
29
|
+ }
|
|
|
30
|
+}
|