Skip to content

Commit 6834725

Browse files
committed
merge --pid option, closes jpillora#26, thanks @xtyxtyx
1 parent fe69ee6 commit 6834725

File tree

2 files changed

+22
-22
lines changed

2 files changed

+22
-22
lines changed

main.go

Lines changed: 7 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,8 @@ import (
55
"fmt"
66
"log"
77
"os"
8-
"io/ioutil"
9-
"strconv"
108

9+
chshare "github.com/jpillora/chisel/chshare"
1110
"github.com/jpillora/chisel/client"
1211
"github.com/jpillora/chisel/server"
1312
)
@@ -108,7 +107,7 @@ func server(args []string) {
108107
key := flags.String("key", "", "")
109108
authfile := flags.String("authfile", "", "")
110109
proxy := flags.String("proxy", "", "")
111-
pidfile := flags.Bool("pid", false, "")
110+
pid := flags.Bool("pid", false, "")
112111
verbose := flags.Bool("v", false, "")
113112

114113
flags.Usage = func() {
@@ -131,6 +130,8 @@ func server(args []string) {
131130
*port = "8080"
132131
}
133132

133+
chshare.GeneratePidFile(pid)
134+
134135
s, err := chserver.NewServer(&chserver.Config{
135136
KeySeed: *key,
136137
AuthFile: *authfile,
@@ -143,10 +144,6 @@ func server(args []string) {
143144
s.Info = true
144145
s.Debug = *verbose
145146

146-
if *pidfile == true {
147-
generatePidFile()
148-
}
149-
150147
if err = s.Run(*host, *port); err != nil {
151148
log.Fatal(err)
152149
}
@@ -199,7 +196,7 @@ func client(args []string) {
199196
fingerprint := flags.String("fingerprint", "", "")
200197
auth := flags.String("auth", "", "")
201198
keepalive := flags.Duration("keepalive", 0, "")
202-
pidfile := flags.Bool("pid", false, "")
199+
pid := flags.Bool("pid", false, "")
203200
verbose := flags.Bool("v", false, "")
204201
flags.Usage = func() {
205202
fmt.Fprintf(os.Stderr, clientHelp)
@@ -212,6 +209,8 @@ func client(args []string) {
212209
log.Fatalf("A server and least one remote is required")
213210
}
214211

212+
chshare.GeneratePidFile(pid)
213+
215214
c, err := chclient.NewClient(&chclient.Config{
216215
Fingerprint: *fingerprint,
217216
Auth: *auth,
@@ -225,22 +224,8 @@ func client(args []string) {
225224

226225
c.Info = true
227226
c.Debug = *verbose
228-
229-
if *pidfile == true {
230-
generatePidFile()
231-
}
232227

233228
if err = c.Run(); err != nil {
234229
log.Fatal(err)
235230
}
236231
}
237-
238-
func generatePidFile() {
239-
pid := []byte(strconv.Itoa(os.Getpid()))
240-
241-
err := ioutil.WriteFile("chisel.pid", pid, 0644)
242-
if err != nil {
243-
log.Fatal(err)
244-
}
245-
}
246-

share/pid.go

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package chshare
2+
3+
import (
4+
"io/ioutil"
5+
"log"
6+
"os"
7+
"strconv"
8+
)
9+
10+
func GeneratePidFile(flag *bool) {
11+
pid := []byte(strconv.Itoa(os.Getpid()))
12+
if err := ioutil.WriteFile("chisel.pid", pid, 0644); err != nil {
13+
log.Fatal(err)
14+
}
15+
}

0 commit comments

Comments
 (0)