This repo implements some basic data structure used by BMF processing.
In addition, it also contains a pre-written CGO exporting tool to compile the user-written module into BMF-recognizable library.
The following code shows a module copying input packets to downstreams.
Ref: pass_through
- setup envs
export CGO_FLAGS=xxx export CGO_LDFLAGS=xxx export LD_LIBRARY_PATH=xxx
- build example module
cd example && go build -buildmode c-shared -o go_pass_through.so pass_through.go && cd -
- run unit tests
cd bmf && go test -v .