]> git.ipfire.org Git - thirdparty/pdns.git/blob - pdns/bpf-filter.main.ebpf
Merge pull request #8223 from PowerDNS/omoerbeek-patch-1
[thirdparty/pdns.git] / pdns / bpf-filter.main.ebpf
1 /* generated from the bpf_dns_filter() function in bpf-filter.ebpf.src */
2 BPF_MOV64_REG(BPF_REG_6,BPF_REG_1),
3 BPF_LDX_MEM(BPF_W,BPF_REG_1,BPF_REG_6,16),
4 BPF_JMP_IMM(BPF_JEQ,BPF_REG_1,ntohs(0x86dd),14),
5 BPF_MOV64_IMM(BPF_REG_0,2147483647),
6 BPF_JMP_IMM(BPF_JNE,BPF_REG_1,ntohs(0x0800),160),
7 BPF_LD_ABS(BPF_W,-2097126),
8 BPF_STX_MEM(BPF_W,BPF_REG_10,BPF_REG_0,-4),
9 BPF_LD_MAP_FD(BPF_REG_1,d_v4map.fd),
10 BPF_MOV64_REG(BPF_REG_2,BPF_REG_10),
11 BPF_ALU64_IMM(BPF_ADD,BPF_REG_2,-4),
12 BPF_RAW_INSN(BPF_JMP|BPF_CALL,0,0,0,BPF_FUNC_map_lookup_elem),
13 BPF_JMP_IMM(BPF_JEQ,BPF_REG_0,0,47),
14 BPF_MOV64_IMM(BPF_REG_1,1),
15 BPF_RAW_INSN(BPF_STX|BPF_XADD|BPF_DW,BPF_REG_0,BPF_REG_1,0,0),
16 BPF_MOV64_IMM(BPF_REG_0,0),
17 BPF_JMP_IMM(BPF_JA,BPF_REG_0,0,148),
18 BPF_LD_ABS(BPF_B,-2097130),
19 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-24),
20 BPF_LD_ABS(BPF_B,-2097129),
21 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-23),
22 BPF_LD_ABS(BPF_B,-2097128),
23 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-22),
24 BPF_LD_ABS(BPF_B,-2097127),
25 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-21),
26 BPF_LD_ABS(BPF_B,-2097126),
27 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-20),
28 BPF_LD_ABS(BPF_B,-2097125),
29 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-19),
30 BPF_LD_ABS(BPF_B,-2097124),
31 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-18),
32 BPF_LD_ABS(BPF_B,-2097123),
33 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-17),
34 BPF_LD_ABS(BPF_B,-2097122),
35 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-16),
36 BPF_LD_ABS(BPF_B,-2097121),
37 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-15),
38 BPF_LD_ABS(BPF_B,-2097120),
39 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-14),
40 BPF_LD_ABS(BPF_B,-2097119),
41 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-13),
42 BPF_LD_ABS(BPF_B,-2097118),
43 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-12),
44 BPF_LD_ABS(BPF_B,-2097117),
45 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-11),
46 BPF_LD_ABS(BPF_B,-2097116),
47 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-10),
48 BPF_LD_ABS(BPF_B,-2097115),
49 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_0,-9),
50 BPF_LD_MAP_FD(BPF_REG_1,d_v6map.fd),
51 BPF_MOV64_REG(BPF_REG_2,BPF_REG_10),
52 BPF_ALU64_IMM(BPF_ADD,BPF_REG_2,-24),
53 BPF_RAW_INSN(BPF_JMP|BPF_CALL,0,0,0,BPF_FUNC_map_lookup_elem),
54 BPF_JMP_IMM(BPF_JEQ,BPF_REG_0,0,1),
55 BPF_JMP_IMM(BPF_JA,BPF_REG_0,0,-43),
56 BPF_LD_IMM64_RAW(BPF_REG_7,BPF_REG_0,4292870218),
57 BPF_LD_ABS(BPF_B,-2097132),
58 BPF_JMP_IMM(BPF_JA,BPF_REG_0,0,3),
59 BPF_LD_IMM64_RAW(BPF_REG_7,BPF_REG_0,4292870198),
60 BPF_LD_ABS(BPF_B,-2097129),
61 BPF_MOV64_REG(BPF_REG_1,BPF_REG_0),
62 BPF_ALU64_IMM(BPF_AND,BPF_REG_1,255),
63 BPF_MOV64_IMM(BPF_REG_0,2147483647),
64 BPF_JMP_IMM(BPF_JEQ,BPF_REG_1,6,98),
65 BPF_MOV64_IMM(BPF_REG_1,0),
66 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_1,-26),
67 BPF_STX_MEM(BPF_H,BPF_REG_10,BPF_REG_1,-28),
68 BPF_STX_MEM(BPF_W,BPF_REG_10,BPF_REG_1,-32),
69 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-40),
70 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-48),
71 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-56),
72 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-64),
73 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-72),
74 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-80),
75 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-88),
76 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-96),
77 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-104),
78 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-112),
79 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-120),
80 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-128),
81 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-136),
82 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-144),
83 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-152),
84 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-160),
85 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-168),
86 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-176),
87 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-184),
88 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-192),
89 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-200),
90 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-208),
91 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-216),
92 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-224),
93 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-232),
94 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-240),
95 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-248),
96 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-256),
97 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-264),
98 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-272),
99 BPF_STX_MEM(BPF_DW,BPF_REG_10,BPF_REG_1,-280),
100 BPF_STX_MEM(BPF_W,BPF_REG_6,BPF_REG_7,48),
101 BPF_MOV64_REG(BPF_REG_8,BPF_REG_7),
102 BPF_ALU64_IMM(BPF_LSH,BPF_REG_8,32),
103 BPF_ALU64_IMM(BPF_ARSH,BPF_REG_8,32),
104 BPF_RAW_INSN(BPF_LD|BPF_IND|BPF_B,BPF_REG_0,BPF_REG_8,0,0),
105 BPF_MOV64_REG(BPF_REG_1,BPF_REG_0),
106 BPF_MOV64_REG(BPF_REG_2,BPF_REG_1),
107 BPF_ALU64_IMM(BPF_AND,BPF_REG_2,192),
108 BPF_MOV64_IMM(BPF_REG_0,0),
109 BPF_JMP_IMM(BPF_JGT,BPF_REG_2,63,53),
110 BPF_MOV64_REG(BPF_REG_8,BPF_REG_1),
111 BPF_ALU64_IMM(BPF_AND,BPF_REG_8,255),
112 BPF_JMP_IMM(BPF_JNE,BPF_REG_8,0,22),
113 BPF_ALU64_IMM(BPF_OR,BPF_REG_7,1),
114 BPF_ALU64_IMM(BPF_LSH,BPF_REG_7,32),
115 BPF_ALU64_IMM(BPF_ARSH,BPF_REG_7,32),
116 BPF_RAW_INSN(BPF_LD|BPF_IND|BPF_H,BPF_REG_0,BPF_REG_7,0,0),
117 BPF_MOV64_REG(BPF_REG_6,BPF_REG_0),
118 BPF_LD_MAP_FD(BPF_REG_1,d_qnamemap.fd),
119 BPF_MOV64_REG(BPF_REG_2,BPF_REG_10),
120 BPF_ALU64_IMM(BPF_ADD,BPF_REG_2,-280),
121 BPF_RAW_INSN(BPF_JMP|BPF_CALL,0,0,0,BPF_FUNC_map_lookup_elem),
122 BPF_MOV64_REG(BPF_REG_1,BPF_REG_0),
123 BPF_MOV64_IMM(BPF_REG_0,2147483647),
124 BPF_JMP_IMM(BPF_JEQ,BPF_REG_1,0,37),
125 BPF_LDX_MEM(BPF_H,BPF_REG_2,BPF_REG_1,8),
126 BPF_JMP_IMM(BPF_JEQ,BPF_REG_2,255,3),
127 BPF_ALU64_IMM(BPF_AND,BPF_REG_6,65535),
128 BPF_MOV64_IMM(BPF_REG_0,2147483647),
129 BPF_JMP_REG(BPF_JNE,BPF_REG_6,BPF_REG_2,32),
130 BPF_MOV64_IMM(BPF_REG_2,1),
131 BPF_RAW_INSN(BPF_STX|BPF_XADD|BPF_DW,BPF_REG_1,BPF_REG_2,0,0),
132 BPF_MOV64_IMM(BPF_REG_0,0),
133 BPF_JMP_IMM(BPF_JA,BPF_REG_0,0,28),
134 BPF_STX_MEM(BPF_W,BPF_REG_6,BPF_REG_8,52),
135 BPF_STX_MEM(BPF_B,BPF_REG_10,BPF_REG_1,-280),
136 BPF_ALU64_IMM(BPF_OR,BPF_REG_7,1),
137 BPF_ALU64_IMM(BPF_LSH,BPF_REG_7,32),
138 BPF_ALU64_IMM(BPF_ARSH,BPF_REG_7,32),
139 BPF_RAW_INSN(BPF_LD|BPF_IND|BPF_B,BPF_REG_0,BPF_REG_7,0,0),
140 BPF_MOV64_REG(BPF_REG_1,BPF_REG_0),
141 BPF_ALU64_IMM(BPF_ADD,BPF_REG_1,32),
142 BPF_MOV64_REG(BPF_REG_2,BPF_REG_0),
143 BPF_ALU64_IMM(BPF_AND,BPF_REG_2,255),
144 BPF_MOV64_IMM(BPF_REG_3,91),
145 BPF_JMP_REG(BPF_JGT,BPF_REG_3,BPF_REG_2,1),
146 BPF_MOV64_REG(BPF_REG_1,BPF_REG_0),
147 BPF_MOV64_IMM(BPF_REG_3,64),
148 BPF_JMP_REG(BPF_JGT,BPF_REG_2,BPF_REG_3,1),
149 BPF_MOV64_REG(BPF_REG_1,BPF_REG_0),
150 BPF_LD_IMM64_RAW(BPF_REG_2,BPF_REG_0,4294967295),
151 BPF_ALU64_REG(BPF_ADD,BPF_REG_8,BPF_REG_2),
152 BPF_ALU64_IMM(BPF_AND,BPF_REG_1,255),
153 BPF_STX_MEM(BPF_W,BPF_REG_6,BPF_REG_1,56),
154 BPF_STX_MEM(BPF_W,BPF_REG_6,BPF_REG_8,60),
155 BPF_LD_MAP_FD(BPF_REG_2,d_filtermap.fd),
156 BPF_MOV64_REG(BPF_REG_1,BPF_REG_6),
157 BPF_MOV64_IMM(BPF_REG_3,0),
158 BPF_RAW_INSN(BPF_JMP|BPF_CALL,0,0,0,BPF_FUNC_tail_call),
159 BPF_MOV64_IMM(BPF_REG_0,2147483647),
160 BPF_EXIT_INSN(),