@@ -54,17 +54,17 @@ module MockProbeBTF = struct
54
54
let mock_kernel_functions = [
55
55
{
56
56
name = " sys_read" ;
57
- parameters = [(" fd" , " u32" ); (" buf" , " *u8" ); (" count" , " usize " )];
57
+ parameters = [(" fd" , " u32" ); (" buf" , " *u8" ); (" count" , " size_t " )];
58
58
return_type = " isize" ;
59
59
};
60
60
{
61
61
name = " vfs_write" ;
62
- parameters = [(" file" , " *file" ); (" buf" , " *u8" ); (" count" , " usize " ); (" pos" , " *i64" )];
62
+ parameters = [(" file" , " *file" ); (" buf" , " *u8" ); (" count" , " size_t " ); (" pos" , " *i64" )];
63
63
return_type = " isize" ;
64
64
};
65
65
{
66
66
name = " tcp_sendmsg" ;
67
- parameters = [(" sk" , " *sock" ); (" msg" , " *msghdr" ); (" size" , " usize " )];
67
+ parameters = [(" sk" , " *sock" ); (" msg" , " *msghdr" ); (" size" , " size_t " )];
68
68
return_type = " i32" ;
69
69
};
70
70
]
75
75
(* 1. Parser Tests *)
76
76
let test_probe_attribute_parsing _ =
77
77
let source = " @probe(\" sys_read\" )
78
- fn sys_read_handler(fd: u32, buf: *u8, count: usize ) -> i32 {
78
+ fn sys_read_handler(fd: u32, buf: *u8, count: size_t ) -> i32 {
79
79
return 0
80
80
}" in
81
81
let ast = parse_string source in
@@ -92,7 +92,7 @@ fn sys_read_handler(fd: u32, buf: *u8, count: usize) -> i32 {
92
92
93
93
let test_probe_multiple_parameters _ =
94
94
let source = " @probe(\" vfs_write\" )
95
- fn vfs_write_handler(file: *file, buf: *u8, count: usize , pos: *i64) -> i32 {
95
+ fn vfs_write_handler(file: *file, buf: *u8, count: size_t , pos: *i64) -> i32 {
96
96
return 0
97
97
}" in
98
98
let ast = parse_string source in
@@ -138,7 +138,7 @@ fn empty_target_handler(fd: u32) -> i32 {
138
138
(* 2. Type Checking Tests *)
139
139
let test_probe_type_checking _ =
140
140
let source = " @probe(\" sys_read\" )
141
- fn sys_read_handler(fd: u32, buf: *u8, count: usize ) -> i32 {
141
+ fn sys_read_handler(fd: u32, buf: *u8, count: size_t ) -> i32 {
142
142
return 0
143
143
}" in
144
144
let ast = parse_string source in
@@ -147,7 +147,7 @@ fn sys_read_handler(fd: u32, buf: *u8, count: usize) -> i32 {
147
147
148
148
let test_probe_parameter_validation _ =
149
149
let source = " @probe(\" sys_read\" )
150
- fn sys_read_handler(fd: u32, buf: *u8, count: usize ) -> i32 {
150
+ fn sys_read_handler(fd: u32, buf: *u8, count: size_t ) -> i32 {
151
151
return 0
152
152
}" in
153
153
let ast = parse_string source in
@@ -166,8 +166,8 @@ fn sys_read_handler(fd: u32, buf: *u8, count: usize) -> i32 {
166
166
(match fd_type with U32 -> true | _ -> false );
167
167
check bool " Second parameter type should be Pointer" true
168
168
(match buf_type with Pointer _ -> true | _ -> false );
169
- check bool " Third parameter type should be UserType usize " true
170
- (match count_type with UserType "usize " -> true | _ -> false )
169
+ check bool " Third parameter type should be UserType size_t " true
170
+ (match count_type with UserType "size_t " -> true | _ -> false )
171
171
| _ -> fail " Expected exactly three parameters" )
172
172
| _ -> fail " Expected AttributedFunction"
173
173
@@ -232,7 +232,7 @@ fn invalid_handler(ctx: *pt_regs) -> i32 {
232
232
(* 3. IR Generation Tests *)
233
233
let test_probe_ir_generation _ =
234
234
let source = " @probe(\" sys_read\" )
235
- fn sys_read_handler(fd: u32, buf: *u8, count: usize ) -> i32 {
235
+ fn sys_read_handler(fd: u32, buf: *u8, count: size_t ) -> i32 {
236
236
return 0
237
237
}" in
238
238
let ast = parse_string source in
@@ -247,7 +247,7 @@ fn sys_read_handler(fd: u32, buf: *u8, count: usize) -> i32 {
247
247
248
248
let test_probe_complex_parameters _ =
249
249
let source = " @probe(\" tcp_sendmsg\" )
250
- fn tcp_sendmsg_handler(sk: *sock, msg: *msghdr, size: usize ) -> i32 {
250
+ fn tcp_sendmsg_handler(sk: *sock, msg: *msghdr, size: size_t ) -> i32 {
251
251
return 0
252
252
}" in
253
253
let ast = parse_string source in
@@ -262,7 +262,7 @@ fn tcp_sendmsg_handler(sk: *sock, msg: *msghdr, size: usize) -> i32 {
262
262
263
263
let test_probe_function_signature_validation _ =
264
264
let source = " @probe(\" vfs_write\" )
265
- fn vfs_write_handler(file: *file, buf: *u8, count: usize , pos: *i64) -> i32 {
265
+ fn vfs_write_handler(file: *file, buf: *u8, count: size_t , pos: *i64) -> i32 {
266
266
return 0
267
267
}" in
268
268
let ast = parse_string source in
@@ -279,7 +279,7 @@ fn vfs_write_handler(file: *file, buf: *u8, count: usize, pos: *i64) -> i32 {
279
279
(* 4. Code Generation Tests *)
280
280
let test_fprobe_section_name_generation _ =
281
281
let source = " @probe(\" sys_read\" )
282
- fn sys_read_handler(fd: u32, buf: *u8, count: usize ) -> i32 {
282
+ fn sys_read_handler(fd: u32, buf: *u8, count: size_t ) -> i32 {
283
283
return 0
284
284
}" in
285
285
let ast = parse_string source in
@@ -315,7 +315,7 @@ fn vfs_read_handler(ctx: *pt_regs) -> i32 {
315
315
316
316
let test_fprobe_complex_section_generation _ =
317
317
let source = " @probe(\" tcp_sendmsg\" )
318
- fn tcp_sendmsg_handler(sk: *sock, msg: *msghdr, size: usize ) -> i32 {
318
+ fn tcp_sendmsg_handler(sk: *sock, msg: *msghdr, size: size_t ) -> i32 {
319
319
return 0
320
320
}" in
321
321
let ast = parse_string source in
@@ -338,7 +338,7 @@ fn tcp_sendmsg_handler(sk: *sock, msg: *msghdr, size: usize) -> i32 {
338
338
339
339
let test_fprobe_ebpf_codegen _ =
340
340
let source = " @probe(\" sys_read\" )
341
- fn sys_read_handler(fd: u32, buf: *u8, count: usize ) -> i32 {
341
+ fn sys_read_handler(fd: u32, buf: *u8, count: size_t ) -> i32 {
342
342
return 0
343
343
}" in
344
344
let ast = parse_string source in
@@ -379,7 +379,7 @@ fn vfs_read_handler(ctx: *pt_regs) -> i32 {
379
379
380
380
let test_fprobe_includes_generation _ =
381
381
let source = " @probe(\" sys_read\" )
382
- fn sys_read_handler(fd: u32, buf: *u8, count: usize ) -> i32 {
382
+ fn sys_read_handler(fd: u32, buf: *u8, count: size_t ) -> i32 {
383
383
return 0
384
384
}" in
385
385
let ast = parse_string source in
@@ -541,7 +541,7 @@ fn sys_open_handler(ctx: *pt_regs) -> i32 {
541
541
542
542
let test_fprobe_network_function _ =
543
543
let source = " @probe(\" tcp_sendmsg\" )
544
- fn tcp_sendmsg_handler(sk: *sock, msg: *msghdr, size: usize ) -> i32 {
544
+ fn tcp_sendmsg_handler(sk: *sock, msg: *msghdr, size: size_t ) -> i32 {
545
545
return 0
546
546
}" in
547
547
let ast = parse_string source in
@@ -559,7 +559,7 @@ fn tcp_sendmsg_handler(sk: *sock, msg: *msghdr, size: usize) -> i32 {
559
559
560
560
let test_probe_multiple_functions _ =
561
561
let source = " @probe(\" sys_read\" )
562
- fn sys_read_handler(fd: u32, buf: *u8, count: usize ) -> i32 {
562
+ fn sys_read_handler(fd: u32, buf: *u8, count: size_t ) -> i32 {
563
563
return 0
564
564
}
565
565
0 commit comments