mirror of
https://github.com/bettercap/bettercap
synced 2025-08-19 13:09:49 -07:00
new: events.stream.filter parameter.
This commit is contained in:
parent
10b05dd0eb
commit
72b80346ad
1 changed files with 23 additions and 7 deletions
|
@ -2,6 +2,7 @@ package modules
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"strings"
|
||||||
|
|
||||||
"github.com/evilsocket/bettercap-ng/core"
|
"github.com/evilsocket/bettercap-ng/core"
|
||||||
"github.com/evilsocket/bettercap-ng/session"
|
"github.com/evilsocket/bettercap-ng/session"
|
||||||
|
@ -18,6 +19,11 @@ func NewEventsStream(s *session.Session) *EventsStream {
|
||||||
quit: make(chan bool),
|
quit: make(chan bool),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
stream.AddParam(session.NewStringParameter("events.stream.filter",
|
||||||
|
"",
|
||||||
|
"",
|
||||||
|
"If filled, filter events by this prefix type."))
|
||||||
|
|
||||||
stream.AddHandler(session.NewModuleHandler("events.stream on", "",
|
stream.AddHandler(session.NewModuleHandler("events.stream on", "",
|
||||||
"Start events stream.",
|
"Start events stream.",
|
||||||
func(args []string) error {
|
func(args []string) error {
|
||||||
|
@ -54,6 +60,14 @@ func (s EventsStream) Author() string {
|
||||||
|
|
||||||
func (s *EventsStream) Start() error {
|
func (s *EventsStream) Start() error {
|
||||||
if s.Running() == false {
|
if s.Running() == false {
|
||||||
|
filter := ""
|
||||||
|
|
||||||
|
if err, v := s.Param("events.stream.filter").Get(s.Session); err != nil {
|
||||||
|
return err
|
||||||
|
} else {
|
||||||
|
filter = v.(string)
|
||||||
|
}
|
||||||
|
|
||||||
s.SetRunning(true)
|
s.SetRunning(true)
|
||||||
|
|
||||||
go func() {
|
go func() {
|
||||||
|
@ -61,15 +75,17 @@ func (s *EventsStream) Start() error {
|
||||||
var e session.Event
|
var e session.Event
|
||||||
select {
|
select {
|
||||||
case e = <-s.Session.Events.NewEvents:
|
case e = <-s.Session.Events.NewEvents:
|
||||||
tm := e.Time.Format("2006-01-02 15:04:05")
|
if filter == "" || strings.Contains(e.Tag, filter) {
|
||||||
|
tm := e.Time.Format("2006-01-02 15:04:05")
|
||||||
|
|
||||||
if e.Tag == "sys.log" {
|
if e.Tag == "sys.log" {
|
||||||
fmt.Printf("[%s] [%s] %s %v\n", tm, core.Green(e.Tag), e.Label(), e.Data.(session.LogMessage).Message)
|
fmt.Printf("[%s] [%s] %s %v\n", tm, core.Green(e.Tag), e.Label(), e.Data.(session.LogMessage).Message)
|
||||||
} else {
|
} else {
|
||||||
fmt.Printf("[%s] [%s] %v\n", tm, core.Green(e.Tag), e.Data)
|
fmt.Printf("[%s] [%s] %v\n", tm, core.Green(e.Tag), e.Data)
|
||||||
|
}
|
||||||
|
|
||||||
|
s.Session.Input.Refresh()
|
||||||
}
|
}
|
||||||
|
|
||||||
s.Session.Input.Refresh()
|
|
||||||
break
|
break
|
||||||
|
|
||||||
case <-s.quit:
|
case <-s.quit:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue