new: realtime network stats can now be used in the prompt

This commit is contained in:
evilsocket 2018-01-13 19:19:43 +01:00
commit 75b423ab2d
7 changed files with 31 additions and 4 deletions

View file

@ -1,10 +1,13 @@
package session
import (
"fmt"
"regexp"
"strings"
"github.com/evilsocket/bettercap-ng/core"
"github.com/dustin/go-humanize"
)
const (
@ -33,6 +36,24 @@ var PromptCallbacks = map[string]func(s *Session) string{
"{cidr}": func(s *Session) string {
return s.Interface.CIDR()
},
"{net.sent}": func(s *Session) string {
return fmt.Sprintf("%d", s.Queue.Sent)
},
"{net.sent.human}": func(s *Session) string {
return humanize.Bytes(s.Queue.Sent)
},
"{net.received}": func(s *Session) string {
return fmt.Sprintf("%d", s.Queue.Received)
},
"{net.received.human}": func(s *Session) string {
return humanize.Bytes(s.Queue.Received)
},
"{net.packets}": func(s *Session) string {
return fmt.Sprintf("%d", s.Queue.PktReceived)
},
"{net.errors}": func(s *Session) string {
return fmt.Sprintf("%d", s.Queue.Errors)
},
}
var envRe = regexp.MustCompile("{env\\.(.+)}")