Skip to main content

marshal_exec_args

Function marshal_exec_args 

Source
pub fn marshal_exec_args(chunks: Vec<Vec<u8>>)
Expand description

Exerce la chaîne « octets bruts → CStringCStrArray » et la parcourt jusqu’au terminateur NULL, garantissant l’absence de panic / UB pour toute entrée (Principe 3 — frontière) :

  • rejet propre des NUL embarqués : CString::new rend Err (jamais panic) dès qu’un morceau contient un octet NUL ; ces morceaux sont simplement écartés ;
  • totalité : la construction du tableau ne panique jamais (liste vide, ou très longue) ;
  • terminaison NULL & validité : le parcours s’arrête sur le NULL final et relit chaque chaîne C (tout pointeur invalide ou toute terminaison manquante ferait crasher sous sanitizer/libFuzzer).

L’oracle structurel exact (ordre, exactitude des pointeurs) est vérifié par les tests unitaires cstr_array_*.