github.com/google/syzkaller@v0.0.0-20251211124644-a066d2bc4b02/sys/test/exec.txt (about) 1 # Copyright 2018 syzkaller project authors. All rights reserved. 2 # Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. 3 4 syz_mmap(addr vma, len len[addr]) 5 syz_errno(v int32) 6 syz_exit(status int32) 7 syz_sleep_ms(ms intptr) 8 syz_compare(want ptr[in, string], want_len bytesize[want], got ptr[in, compare_data], got_len bytesize[got]) 9 syz_compare_int$2(n const[2], v0 intptr, v1 intptr) 10 syz_compare_int$3(n const[3], v0 intptr, v1 intptr, v2 intptr) 11 syz_compare_int$4(n const[4], v0 intptr, v1 intptr, v2 intptr, v3 intptr) 12 syz_compare_zlib(data ptr[in, array[int8]], size bytesize[data], zdata ptr[in, compressed_image], zsize bytesize[zdata]) (timeout[4000], no_generate, no_minimize) 13 14 # Copies the data into KCOV buffer verbatim. 15 syz_inject_cover(ptr ptr[in, array[int8]], size bytesize[ptr]) 16 syz_inject_remote_cover(ptr ptr[in, array[int8]], size bytesize[ptr]) (prog_timeout[1000], remote_cover) 17 18 compare_data [ 19 align0 align0 20 align3 align3 21 bf0 syz_bf_struct0 22 bf1 syz_bf_struct1 23 bf2 syz_bf_struct2 24 bf3 syz_bf_struct3 25 bf4 syz_bf_align[syz_bf_struct4] 26 bf5 syz_bf_align[syz_bf_struct5] 27 bf6 syz_bf_align[syz_bf_struct6] 28 bf7 syz_bf_align[syz_bf_struct7] 29 bf8 syz_bf_align[syz_bf_struct8] 30 bf9 syz_bf_align[syz_bf_struct9] 31 bf10 syz_bf_align[syz_bf_struct10] 32 bf11 syz_bf_align[syz_bf_struct11] 33 bf12 syz_bf_align[syz_bf_struct12] 34 bf13 syz_bf_align[syz_bf_struct13] 35 bf14 syz_bf_align[syz_bf_struct14] 36 bf15 syz_bf_align[syz_bf_struct15] 37 bf16 syz_bf_align[syz_bf_struct16] 38 bf17 syz_bf_align[syz_bf_struct17] 39 bf18 syz_bf_align[syz_bf_struct18] 40 bf19 syz_bf_align[syz_bf_struct19] 41 bf20 syz_bf_align[syz_bf_struct20] 42 bf21 syz_bf_align[syz_bf_struct21] 43 bf22 syz_bf_align[syz_bf_struct22] 44 bf23 syz_bf_align[syz_bf_struct23] 45 bf24 syz_bf_align[syz_bf_struct24] 46 bf25 syz_bf_align[syz_bf_struct25] 47 str string 48 blob array[int8] 49 arr16be array[int16be] 50 nla array[compare_nla] 51 fmt0 fmt[oct, int32] 52 fmt1 fmt[dec, int32] 53 fmt2 fmt[hex, int32] 54 fmt3 fmt[dec, flags[flags_with_one_value]] 55 overlayres overlayres 56 overlay0 overlay0 57 overlay1 overlay1 58 overlay2 overlay2 59 conditional conditional_struct 60 conditional2 condition_and_align 61 conditional3 condition_parent_align 62 ] [varlen] 63 64 flags_with_one_value = 0 65 66 compare_nla [ 67 a0 nlattr[0xaa, int8] 68 a1 nlattr[0xbb, int16] 69 a2 nlattr[0xcc, int32] 70 a3 nlattr[0xdd, int64] 71 a4 nlattr[0xee, stringnoz] 72 a5 nlnest[0xaa, int8] 73 a6 nlnest[0xaa, int32] 74 a7 nlnetw[0xaa, int8] 75 a8 nlnetw[0xaa, int32] 76 ] [varlen] 77 78 type nlattr_t[TYPE, PAYLOAD] { 79 nla_len offsetof[size, int16] 80 nla_type TYPE 81 payload PAYLOAD 82 size void 83 } [packed, align[4]] 84 85 type nlattr_tt[TYPE, NETORDER, NESTED, PAYLOAD] { 86 nla_len offsetof[size, int16] 87 nla_type TYPE 88 NLA_F_NET_BYTEORDER const[NETORDER, int16:1] 89 NLA_F_NESTED const[NESTED, int16:1] 90 payload PAYLOAD 91 size void 92 } [packed, align[4]] 93 94 type nlattr[TYPE, PAYLOAD] nlattr_t[const[TYPE, int16], PAYLOAD] 95 type nlnest[TYPE, PAYLOAD] nlattr_tt[const[TYPE, int16:14], 0, 1, PAYLOAD] 96 type nlnetw[TYPE, PAYLOAD] nlattr_tt[const[TYPE, int16:14], 1, 0, PAYLOAD] 97 98 align0 { 99 f0 int16 100 f1 int32 101 f2 int8 102 f3 int16 103 f4 int64 104 } 105 106 align1 { 107 f0 align2 108 } 109 110 align2 { 111 f0 ptr[in, align1, opt] 112 } 113 114 align3 { 115 f0 align2 116 f1 int8 117 f2 align1 118 f3 int8 119 f4 array[align1, 2] 120 } 121 122 syz_bf_struct4 { 123 f0 int8 124 f1 int32:4 125 f2 int8 126 } 127 128 syz_bf_struct5 { 129 f0 int8 130 f1 int32:4 131 } 132 133 syz_bf_struct6 { 134 f0 int8 135 f1 int16:4 136 f2 int8 137 } 138 139 syz_bf_struct7 { 140 f0 int8 141 f1 int16:4 142 } 143 144 syz_bf_struct8 { 145 f0 int8 146 f1 int32:4 147 f2 int16:4 148 } 149 150 syz_bf_struct9 { 151 f0 int8 152 f1 int16:4 153 f2 int16:4 154 } 155 156 syz_bf_struct10 { 157 f0 int32:4 158 f1 int32:4 159 f2 int32:4 160 f3 int64:12 161 f4 int64:12 162 f5 int64:12 163 f6 int64:12 164 f7 int64:12 165 f8 int8 166 } 167 168 syz_bf_struct11 { 169 f0 int8 170 f1 int8 171 f2 int8 172 f3 int32:4 173 f4 int32:4 174 } 175 176 syz_bf_struct12 { 177 f0 int8 178 f1 int8 179 f2 int8 180 f3 int32:4 181 f4 int32:4 182 f5 int32:4 183 f6 int8 184 } 185 186 syz_bf_struct13 { 187 f0 int16 188 f1 int32:12 189 f2 int32:12 190 } 191 192 syz_bf_struct14 { 193 f0 int8 194 f1 int8 195 f2 int32:12 196 } 197 198 syz_bf_struct15 { 199 f0 int8 200 f1 int32:12 201 f2 int16:4 202 } 203 204 syz_bf_struct16 { 205 f0 int8 206 f1 int32:4 207 f2 int16:4 208 } 209 210 syz_bf_struct17 { 211 f0 int8 212 f1 int32:6 213 f2 int16:4 214 } 215 216 syz_bf_struct18 { 217 f0 int8 218 f1 int32:4 219 f2 int16:6 220 } 221 222 syz_bf_struct19 { 223 f0 int8 224 f1 int16:12 225 } 226 227 syz_bf_struct20 { 228 f0 int8 229 f1 int8 230 f2 int64:4 231 f3 int32:4 232 f4 int16:4 233 f5 int8:4 234 } 235 236 syz_bf_struct21 { 237 f0 int32 238 f1 int8 239 f2 int16:8 240 f3 int16 241 } 242 243 syz_bf_struct22 { 244 f0 int8 245 f1 int64:4 246 f2 int16:4 247 } [packed] 248 249 syz_bf_struct23 { 250 f0 int8 251 f1 int32:4 252 f2 int16:6 253 } [packed] 254 255 syz_bf_struct24 { 256 f0 int8 257 f1 int64:4 258 } [packed] 259 260 syz_bf_struct25 { 261 f0 int16 262 f1 int16:14 263 f2 int16:1 264 f3 int16:1 265 f4 int16 266 f5 void 267 } [packed, align[4]] 268 269 type syz_bf_align[T] { 270 f0 int8 271 f1 T 272 } 273 274 resource overlayres8[int8] 275 resource overlayres16[int16] 276 resource overlayres32[int32] 277 resource overlayres64[int64] 278 279 overlay_ctor(a ptr[out, overlayres8], b ptr[out, overlayres16], c ptr[out, overlayres32], d ptr[out, overlayres64]) 280 overlay_uses(a overlayres8, b overlayres16, c overlayres32, d overlayres64) 281 overlay_any(a ptr[in, compare_data]) 282 283 overlayres [ 284 res8 overlayres8 285 res16 overlayres16 286 res32 overlayres32 287 res64 overlayres64 288 ] [varlen] 289 290 overlay0 { 291 i0 int32 292 i1 int32 293 o0 overlayres32 (out_overlay) 294 o1 overlayres32 295 } 296 297 overlay1 { 298 i0 int32 299 i1 int8 300 o0 overlayres8 (out_overlay) 301 o1 overlayres16 302 } 303 304 overlay2 { 305 i0 int32 306 i1 int32 307 o0 overlayres64 (out_overlay) 308 o1 overlayres64 309 }