Contact Graph Routing for time-varying satellite networks
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix(lint): resolve E718 fuzz helper naming, E616 failf, and monopam cleanup

Update E718 rule and cram tests. Fix remaining E616 fail+Fmt.str
instances. Add gen_corpus.ml helpers for fuzz directories. Clean up
monopam import module.

+31
+5
fuzz/dune
··· 8 8 (modules fuzz_cgr) 9 9 (libraries cgr crowbar)) 10 10 11 + (executable 12 + (name gen_corpus) 13 + (modules gen_corpus) 14 + (libraries unix)) 15 + 11 16 (rule 12 17 (alias runtest) 13 18 (deps fuzz_cgr.exe)
+26
fuzz/gen_corpus.ml
··· 1 + (** Generate seed corpus for Contact Graph Routing fuzz testing. *) 2 + 3 + let () = 4 + (try Unix.mkdir "corpus" 0o755 5 + with Unix.Unix_error (Unix.EEXIST, _, _) -> ()); 6 + let write name data = 7 + let oc = open_out_bin (Filename.concat "corpus" name) in 8 + output_string oc data; close_out oc 9 + in 10 + (* Empty input *) 11 + write "seed_000" ""; 12 + (* Minimal 4-byte pattern *) 13 + write "seed_001" "\x00\x00\x00\x00"; 14 + (* Small graph-like binary: node IDs and timestamps *) 15 + write "seed_002" "\x01\x00\x00\x00\x02\x00\x00\x00"; 16 + (* Edge with source, dest, start, end, rate *) 17 + write "seed_003" "\x01\x02\x00\x00\x00\x0a\x00\x00\x00\x14\x00\x00\x00\x64"; 18 + (* Multiple small contacts *) 19 + write "seed_004" "\x03\x01\x02\x05\x0a\x64\x02\x03\x0a\x14\xc8"; 20 + (* All zeros - 16 bytes *) 21 + write "seed_005" "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"; 22 + (* Max values *) 23 + write "seed_006" "\xff\xff\xff\xff\xff\xff\xff\xff"; 24 + (* Single byte *) 25 + write "seed_007" "\x01"; 26 + print_endline "Generated 8 seed files in corpus/"