forked from iovisor/bcc
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcheck-helpers.sh
executable file
·37 lines (32 loc) · 1.16 KB
/
check-helpers.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#!/bin/bash
ret=0
libbpf=$(grep -oP '(?<={")\w+(?=", "\d\.\d+")' src/cc/libbpf.c | sort)
doc=$(grep -oP "(?<=BPF_FUNC_)\w+" docs/kernel-versions.md | sort)
dif=$(diff <(echo "$doc") <(echo "$libbpf"))
if [ $? -ne 0 ]; then
echo "The lists of helpers in src/cc/libbpf.c and docs/kernel-versions.md differ:"
echo -e "$dif\n"
((ret++))
fi
compat=$(grep -oP "(?<=^\sFN\()\w+" src/cc/compat/linux/bpf.h | tail -n +2 | sort)
dif=$(diff <(echo "$doc") <(echo "$compat"))
if [ $? -ne 0 ]; then
echo "The lists of helpers in docs/kernel-versions.md and src/cc/compat/linux/bpf.h differ:"
echo -e "$dif\n"
((ret++))
fi
virtual=$(grep -oP "(?<=^\sFN\()\w+" src/cc/compat/linux/virtual_bpf.h | tail -n +2 | sort -u)
dif=$(diff <(echo "$compat") <(echo "$virtual"))
if [ $? -ne 0 ]; then
echo "The lists of helpers in src/cc/compat/linux/bpf.h and src/cc/compat/linux/virtual_bpf.h differ:"
echo "$dif"
((ret++))
fi
export=$(grep -oP "(?<=BPF_FUNC_)\w+" src/cc/export/helpers.h | sort -u)
dif=$(diff <(echo "$compat") <(echo "$export"))
if [ $? -ne 0 ]; then
echo "The lists of helpers in src/cc/compat/linux/bpf.h and src/cc/export/helpers.h differ:"
echo "$dif"
((ret++))
fi
exit $ret