16
"github.com/cilium/tetragon/pkg/api/ops"
17
api "github.com/cilium/tetragon/pkg/api/testapi"
18
"github.com/cilium/tetragon/pkg/grpc/test"
19
"github.com/cilium/tetragon/pkg/observer"
20
"github.com/cilium/tetragon/pkg/sensors"
21
"github.com/cilium/tetragon/pkg/sensors/program"
41
observer.RegisterEventHandlerAtInit(ops.MSG_OP_TEST, handleTest)
44
func msgToTestUnix(m *api.MsgTestEvent) *test.MsgTestEventUnix {
45
return &test.MsgTestEventUnix{
50
func handleTest(r *bytes.Reader) ([]observer.Event, error) {
51
m := api.MsgTestEvent{}
52
if err := binary.Read(r, binary.LittleEndian, &m); err != nil {
55
msgUnix := msgToTestUnix(&m)
56
return []observer.Event{msgUnix}, nil
60
func GetTestSensor() *sensors.Sensor {
61
sensorName := fmt.Sprintf("test-sensor-%d", atomic.AddUint64(&sensorCounter, 1))
62
progs := []*program.Program{program.Builder(
64
"syscalls/sys_enter_lseek",
65
"tracepoint/sys_enter_lseek",
66
sensors.PathJoin(sensorName, "test_lseek_prog"),
69
maps := []*program.Map{}
70
sensor := &sensors.Sensor{Name: sensorName, Progs: progs, Maps: maps}