Go to the source code of this file.
◆ FILE_LICENCE()
FILE_LICENCE |
( |
GPL2_OR_LATER_OR_UBDL |
| ) |
|
◆ fake_e820()
Definition at line 64 of file fakee820.c.
68 "cmpl $0xe820, %%eax\n\t" 70 "cmpl $0x534d4150, %%edx\n\t" 74 "andb $~0x01, 22(%%bp)\n\t" 75 "leaw e820map(%%bx), %%si\n\t" 78 "movl %%edx, %%eax\n\t" 82 "xorl %%ebx,%%ebx\n\t" 88 "ljmp *%%cs:real_int15_vector\n\t" )
89 : :
"i" (
sizeof (
e820map ) ) );
#define real_int15_vector
void hook_bios_interrupt(unsigned int interrupt, unsigned int handler, struct segoff *chain_vector)
Hook INT vector.
void int15_fakee820()
Assembly routine in inline asm.
__asm__ __volatile__("\n1:\n\t" "movb -1(%3,%1), %%al\n\t" "stosb\n\t" "loop 1b\n\t" "xorl %%eax, %%eax\n\t" "mov %4, %1\n\t" "rep stosb\n\t" :"=&D"(discard_D), "=&c"(discard_c), "+m"(*value) :"r"(data), "g"(pad_len), "0"(value0), "1"(len) :"eax")
__asm__(".section \".rodata\", \"a\", " PROGBITS "\n\t" "\nprivate_key_data:\n\t" ".size private_key_data, ( . - private_key_data )\n\t" ".equ private_key_len, ( . - private_key_data )\n\t" ".previous\n\t")
#define TEXT16_CODE(asm_code_str)
References __asm__(), __volatile__(), e820map, hook_bios_interrupt(), int15_fakee820(), real_int15_vector, and TEXT16_CODE.
Referenced by hide_etherboot().
◆ unfake_e820()
void unfake_e820 |
( |
void |
| ) |
|