1
// Code generated by bpf2go; DO NOT EDIT.
2
//go:build 386 || amd64 || amd64p32 || arm || arm64 || loong64 || mips64le || mips64p32le || mipsle || ppc64le || riscv64
12
"github.com/cilium/ebpf"
15
type opensnoopEvent struct {
31
type opensnoopPrefixKey struct {
37
// loadOpensnoop returns the embedded CollectionSpec for opensnoop.
38
func loadOpensnoop() (*ebpf.CollectionSpec, error) {
39
reader := bytes.NewReader(_OpensnoopBytes)
40
spec, err := ebpf.LoadCollectionSpecFromReader(reader)
42
return nil, fmt.Errorf("can't load opensnoop: %w", err)
48
// loadOpensnoopObjects loads opensnoop and converts it into a struct.
50
// The following types are suitable as obj argument:
56
// See ebpf.CollectionSpec.LoadAndAssign documentation for details.
57
func loadOpensnoopObjects(obj interface{}, opts *ebpf.CollectionOptions) error {
58
spec, err := loadOpensnoop()
63
return spec.LoadAndAssign(obj, opts)
66
// opensnoopSpecs contains maps and programs before they are loaded into the kernel.
68
// It can be passed ebpf.CollectionSpec.Assign.
69
type opensnoopSpecs struct {
74
// opensnoopSpecs contains programs before they are loaded into the kernel.
76
// It can be passed ebpf.CollectionSpec.Assign.
77
type opensnoopProgramSpecs struct {
78
IgOpenE *ebpf.ProgramSpec `ebpf:"ig_open_e"`
79
IgOpenX *ebpf.ProgramSpec `ebpf:"ig_open_x"`
80
IgOpenatE *ebpf.ProgramSpec `ebpf:"ig_openat_e"`
81
IgOpenatX *ebpf.ProgramSpec `ebpf:"ig_openat_x"`
84
// opensnoopMapSpecs contains maps before they are loaded into the kernel.
86
// It can be passed ebpf.CollectionSpec.Assign.
87
type opensnoopMapSpecs struct {
88
Bufs *ebpf.MapSpec `ebpf:"bufs"`
89
EmptyEvent *ebpf.MapSpec `ebpf:"empty_event"`
90
Events *ebpf.MapSpec `ebpf:"events"`
91
GadgetMntnsFilterMap *ebpf.MapSpec `ebpf:"gadget_mntns_filter_map"`
92
PrefixKeys *ebpf.MapSpec `ebpf:"prefix_keys"`
93
Prefixes *ebpf.MapSpec `ebpf:"prefixes"`
94
Start *ebpf.MapSpec `ebpf:"start"`
97
// opensnoopObjects contains all objects after they have been loaded into the kernel.
99
// It can be passed to loadOpensnoopObjects or ebpf.CollectionSpec.LoadAndAssign.
100
type opensnoopObjects struct {
105
func (o *opensnoopObjects) Close() error {
106
return _OpensnoopClose(
107
&o.opensnoopPrograms,
112
// opensnoopMaps contains all maps after they have been loaded into the kernel.
114
// It can be passed to loadOpensnoopObjects or ebpf.CollectionSpec.LoadAndAssign.
115
type opensnoopMaps struct {
116
Bufs *ebpf.Map `ebpf:"bufs"`
117
EmptyEvent *ebpf.Map `ebpf:"empty_event"`
118
Events *ebpf.Map `ebpf:"events"`
119
GadgetMntnsFilterMap *ebpf.Map `ebpf:"gadget_mntns_filter_map"`
120
PrefixKeys *ebpf.Map `ebpf:"prefix_keys"`
121
Prefixes *ebpf.Map `ebpf:"prefixes"`
122
Start *ebpf.Map `ebpf:"start"`
125
func (m *opensnoopMaps) Close() error {
126
return _OpensnoopClose(
130
m.GadgetMntnsFilterMap,
137
// opensnoopPrograms contains all programs after they have been loaded into the kernel.
139
// It can be passed to loadOpensnoopObjects or ebpf.CollectionSpec.LoadAndAssign.
140
type opensnoopPrograms struct {
141
IgOpenE *ebpf.Program `ebpf:"ig_open_e"`
142
IgOpenX *ebpf.Program `ebpf:"ig_open_x"`
143
IgOpenatE *ebpf.Program `ebpf:"ig_openat_e"`
144
IgOpenatX *ebpf.Program `ebpf:"ig_openat_x"`
147
func (p *opensnoopPrograms) Close() error {
148
return _OpensnoopClose(
156
func _OpensnoopClose(closers ...io.Closer) error {
157
for _, closer := range closers {
158
if err := closer.Close(); err != nil {
165
// Do not access this directly.
167
//go:embed opensnoop_bpfel.o
168
var _OpensnoopBytes []byte