fn generate_unsafe(&mut self, bananaq: &Weak<FuzzyQ>, mem: &mut [u8], _: &[u8], _: &[u8]) {
        match rand::thread_rng().gen_range(0u8..=7) {
            0 => mem.clone_from_slice(&Fd::dummy(self.size()).data()),
            1 => mem.clone_from_slice(&Fd::invalid(self.size()).data()),
            _ => {
                mem.clone_from_slice(&Fd::dummy(self.size()).data());

                let fd = match bananaq::get_rnd_fd(bananaq, self.id.clone()) {
                    Ok(fd) => fd,
                    Err(_) => return,
                };
                if fd.data().is_empty() {
                    return;
                }
                if fd.data().len() != mem.len() {
                    //unsafe { asm!("int3") }
                    panic!("Random argument selection failed on size mismatch of : {:?} where : {} vs {}", self.id, fd.data().len(), mem.len())
                }
                //mem[..fd.len()].clone_from_slice(&fd);
                mem.clone_from_slice(fd.data());
            }
        };
    }
/// 4:6 we share valid object / state
///
/// other time we provide NULL or invalid one
6 we share valid object / state
other time we provide NULL or invalid one
6 we share valid object / state other time we provide NULL or invalid one
fn generate_unsafe(&mut self, bananaq: &Weak<FuzzyQ>, mem: &mut [u8], _: &[u8], _: &[u8]) {
        match rand::thread_rng().gen_range(0u8..=7) {
            0 => mem.clone_from_slice(&Fd::dummy(self.size()).data()),
            1 => mem.clone_from_slice(&Fd::invalid(self.size()).data()),
            _ => {
                mem.clone_from_slice(&Fd::dummy(self.size()).data());
                let fd = match bananaq::get_rnd_fd(bananaq, self.id.clone()) {
                    Ok(fd) => fd,
                    Err(_) => return,
                };
                if fd.data().is_empty() {
                    return;
                }
                if fd.data().len() != mem.len() {
                    //unsafe { asm!("int3") }
                    panic!("Random argument selection failed on size mismatch of : {:?} where : {} vs {}", self.id, fd.data().len(), mem.len())
                }
                //mem[..fd.len()].clone_from_slice(&fd);
                mem.clone_from_slice(fd.data());
            }
        };
    }
fn generate_unsafe ( & mut self , bananaq : & Weak < FuzzyQ > , mem : & mut [ u8 ] , _ : & [ u8 ] , _ : & [ u8 ] ) { match rand :: thread_rng ( ) . gen_range ( 0u8 ..= 7 ) { 0 => mem . clone_from_slice ( & Fd :: dummy ( self . size ( ) ) . data ( ) ) , 1 => mem . clone_from_slice ( & Fd :: invalid ( self . size ( ) ) . data ( ) ) , _ => { mem . clone_from_slice ( & Fd :: dummy ( self . size ( ) ) . data ( ) ) ; let fd = match bananaq :: get_rnd_fd ( bananaq , self . id . clone ( ) ) { Ok ( fd ) => fd , Err ( _ ) => return , } ; if fd . data ( ) . is_empty ( ) { return ; } if fd . data ( ) . len ( ) != mem . len ( ) { //unsafe { asm!("int3") } panic ! ( " " self id fd data ( ) len ( ) mem len ( ) ) } //mem[..fd.len()].clone_from_slice(&fd); mem . clone_from_slice ( fd . data ( ) ) ; } } ; }
4:6 we share valid object / state
other time we provide NULL or invalid one
4 : 6 we share valid object / state other time we provide NULL or invalid one
&mut self
bananaq
&Weak<FuzzyQ>
mem
&[u8]
&mut self
bananaq
&Weak<FuzzyQ>
mem
&[u8]