@@ -6,8 +6,11 @@ import (
6
6
"encoding/json"
7
7
"fmt"
8
8
"os"
9
+ "os/signal"
9
10
"strings"
11
+ "syscall"
10
12
13
+ "github.com/dustin/go-humanize"
11
14
"github.com/filecoin-project/boost/cli/node"
12
15
"github.com/filecoin-project/boost/cmd"
13
16
"github.com/filecoin-project/go-address"
@@ -17,6 +20,7 @@ import (
17
20
lcli "github.com/filecoin-project/lotus/cli"
18
21
"github.com/filecoin-project/lotus/lib/tablewriter"
19
22
"github.com/urfave/cli/v2"
23
+ "golang.org/x/term"
20
24
)
21
25
22
26
var walletCmd = & cli.Command {
@@ -203,6 +207,8 @@ var walletList = &cli.Command{
203
207
wallet [dataCapKey ] = dcap
204
208
if ! cctx .Bool ("json" ) && dcap == nil {
205
209
wallet [dataCapKey ] = "X"
210
+ } else if dcap != nil {
211
+ wallet [dataCapKey ] = humanize .IBytes (dcap .Int .Uint64 ())
206
212
}
207
213
} else {
208
214
wallet [dataCapKey ] = "n/a"
@@ -385,13 +391,32 @@ var walletImport = &cli.Command{
385
391
386
392
var inpdata []byte
387
393
if ! cctx .Args ().Present () || cctx .Args ().First () == "-" {
388
- reader := bufio .NewReader (os .Stdin )
389
- fmt .Print ("Enter private key: " )
390
- indata , err := reader .ReadBytes ('\n' )
391
- if err != nil {
392
- return err
394
+ if term .IsTerminal (int (os .Stdin .Fd ())) {
395
+ fmt .Print ("Enter private key(not display in the terminal): " )
396
+
397
+ sigCh := make (chan os.Signal , 1 )
398
+ // Notify the channel when SIGINT is received
399
+ signal .Notify (sigCh , syscall .SIGINT , syscall .SIGTERM )
400
+
401
+ go func () {
402
+ <- sigCh
403
+ fmt .Println ("\n Interrupt signal received. Exiting..." )
404
+ os .Exit (1 )
405
+ }()
406
+
407
+ inpdata , err = term .ReadPassword (int (os .Stdin .Fd ()))
408
+ if err != nil {
409
+ return err
410
+ }
411
+ fmt .Println ()
412
+ } else {
413
+ reader := bufio .NewReader (os .Stdin )
414
+ indata , err := reader .ReadBytes ('\n' )
415
+ if err != nil {
416
+ return err
417
+ }
418
+ inpdata = indata
393
419
}
394
- inpdata = indata
395
420
396
421
} else {
397
422
fdata , err := os .ReadFile (cctx .Args ().First ())
0 commit comments