mirror of
https://github.com/kubeshark/kubeshark.git
synced 2025-08-09 20:39:14 +00:00
remove main dir (#385)
This commit is contained in:
parent
b6db64d868
commit
e2e69a3dc4
1
tap/main/.gitignore
vendored
1
tap/main/.gitignore
vendored
@ -1 +0,0 @@
|
|||||||
main
|
|
110
tap/main/main.go
110
tap/main/main.go
@ -1,110 +0,0 @@
|
|||||||
package main
|
|
||||||
|
|
||||||
import (
|
|
||||||
"bufio"
|
|
||||||
"fmt"
|
|
||||||
"io/ioutil"
|
|
||||||
"os"
|
|
||||||
"path"
|
|
||||||
"plugin"
|
|
||||||
"sort"
|
|
||||||
"strings"
|
|
||||||
|
|
||||||
"github.com/go-errors/errors"
|
|
||||||
"github.com/up9inc/mizu/tap"
|
|
||||||
tapApi "github.com/up9inc/mizu/tap/api"
|
|
||||||
)
|
|
||||||
|
|
||||||
func loadExtensions() ([]*tapApi.Extension, error) {
|
|
||||||
extensionsDir := "./extensions"
|
|
||||||
files, err := ioutil.ReadDir(extensionsDir)
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
return nil, errors.Wrap(err, 0)
|
|
||||||
}
|
|
||||||
|
|
||||||
extensions := make([]*tapApi.Extension, 0)
|
|
||||||
for _, file := range files {
|
|
||||||
filename := file.Name()
|
|
||||||
|
|
||||||
if !strings.HasSuffix(filename, ".so") {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
fmt.Printf("Loading extension: %s\n", filename)
|
|
||||||
|
|
||||||
extension := &tapApi.Extension{
|
|
||||||
Path: path.Join(extensionsDir, filename),
|
|
||||||
}
|
|
||||||
|
|
||||||
plug, err := plugin.Open(extension.Path)
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
return nil, errors.Wrap(err, 0)
|
|
||||||
}
|
|
||||||
|
|
||||||
extension.Plug = plug
|
|
||||||
symDissector, err := plug.Lookup("Dissector")
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
return nil, errors.Wrap(err, 0)
|
|
||||||
}
|
|
||||||
|
|
||||||
dissector, ok := symDissector.(tapApi.Dissector)
|
|
||||||
|
|
||||||
if !ok {
|
|
||||||
return nil, errors.Errorf("Symbol Dissector type error: %v %T\n", file, symDissector)
|
|
||||||
}
|
|
||||||
|
|
||||||
dissector.Register(extension)
|
|
||||||
extension.Dissector = dissector
|
|
||||||
extensions = append(extensions, extension)
|
|
||||||
}
|
|
||||||
|
|
||||||
sort.Slice(extensions, func(i, j int) bool {
|
|
||||||
return extensions[i].Protocol.Priority < extensions[j].Protocol.Priority
|
|
||||||
})
|
|
||||||
|
|
||||||
for _, extension := range extensions {
|
|
||||||
fmt.Printf("Extension Properties: %+v\n", extension)
|
|
||||||
}
|
|
||||||
|
|
||||||
return extensions, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func internalRun() error {
|
|
||||||
opts := tap.TapOpts{
|
|
||||||
HostMode: false,
|
|
||||||
}
|
|
||||||
|
|
||||||
outputItems := make(chan *tapApi.OutputChannelItem, 1000)
|
|
||||||
extenssions, err := loadExtensions()
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
tapOpts := tapApi.TrafficFilteringOptions{}
|
|
||||||
|
|
||||||
tap.StartPassiveTapper(&opts, outputItems, extenssions, &tapOpts)
|
|
||||||
|
|
||||||
fmt.Printf("Tapping, press enter to exit...\n")
|
|
||||||
reader := bufio.NewReader(os.Stdin)
|
|
||||||
reader.ReadLine()
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func main() {
|
|
||||||
err := internalRun()
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
switch err := err.(type) {
|
|
||||||
case *errors.Error:
|
|
||||||
fmt.Printf("Error: %v\n", err.ErrorStack())
|
|
||||||
default:
|
|
||||||
fmt.Printf("Error: %v\n", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
os.Exit(1)
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,7 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
go build -o main main/main.go
|
|
||||||
|
|
||||||
sudo ./main/main "$@"
|
|
Loading…
Reference in New Issue
Block a user