예제 #1
0
/*
 * Random array
 */
static void set_array_random(void **a, uint32_t n) {
  uint32_t i;

  for (i=0; i<n; i++) {
    a[i] = random_pointer();
  }
}
예제 #2
0
/*
 * Initialize array a with constant pointer
 */
static void set_array_constant(void **a, uint32_t n) {
  void *p;
  uint32_t i;

  p = random_pointer();
  for (i=0; i<n; i++) {
    a[i] = p;
  }
}
예제 #3
0
void fandango() {
	int i = 0;
	struct sysinfo si;
	si_meminfo(&si);
	void* ptr = random_pointer();
	int data = (int)frandom();
	printk(KERN_CRIT,"Fandango: Dancing on pointer %p (virtually %p) with the number %d\n",ptr,phys_to_virt(ptr),data);
	while(i < 1024) {
	  *((int*)phys_to_virt(ptr++)) = (char)data; //the business end of the fandango! Chose a chunk of memory and wipe it out!
	}
}