|
@@ -67,7 +67,7 @@ extern void int21_wrapper ( void );
|
67
|
67
|
extern void int22_wrapper ( void );
|
68
|
68
|
|
69
|
69
|
/* setjmp/longjmp context buffer used to return after loading an image */
|
70
|
|
-jmp_buf comboot_return;
|
|
70
|
+rmjmp_buf comboot_return;
|
71
|
71
|
|
72
|
72
|
/* Replacement image when exiting with COMBOOT_EXIT_RUN_KERNEL */
|
73
|
73
|
struct image *comboot_replacement_image;
|
|
@@ -235,7 +235,7 @@ static int comboot_fetch_kernel ( char *kernel_file, char *cmdline ) {
|
235
|
235
|
* Terminate program interrupt handler
|
236
|
236
|
*/
|
237
|
237
|
static __asmcall void int20 ( struct i386_all_regs *ix86 __unused ) {
|
238
|
|
- longjmp ( comboot_return, COMBOOT_EXIT );
|
|
238
|
+ rmlongjmp ( comboot_return, COMBOOT_EXIT );
|
239
|
239
|
}
|
240
|
240
|
|
241
|
241
|
|
|
@@ -248,7 +248,7 @@ static __asmcall void int21 ( struct i386_all_regs *ix86 ) {
|
248
|
248
|
switch ( ix86->regs.ah ) {
|
249
|
249
|
case 0x00:
|
250
|
250
|
case 0x4C: /* Terminate program */
|
251
|
|
- longjmp ( comboot_return, COMBOOT_EXIT );
|
|
251
|
+ rmlongjmp ( comboot_return, COMBOOT_EXIT );
|
252
|
252
|
break;
|
253
|
253
|
|
254
|
254
|
case 0x01: /* Get Key with Echo */
|
|
@@ -347,13 +347,13 @@ static __asmcall void int22 ( struct i386_all_regs *ix86 ) {
|
347
|
347
|
DBG ( "COMBOOT: executing command '%s'\n", cmd );
|
348
|
348
|
system ( cmd );
|
349
|
349
|
DBG ( "COMBOOT: exiting after executing command...\n" );
|
350
|
|
- longjmp ( comboot_return, COMBOOT_EXIT_COMMAND );
|
|
350
|
+ rmlongjmp ( comboot_return, COMBOOT_EXIT_COMMAND );
|
351
|
351
|
}
|
352
|
352
|
break;
|
353
|
353
|
|
354
|
354
|
case 0x0004: /* Run default command */
|
355
|
355
|
/* FIXME: just exit for now */
|
356
|
|
- longjmp ( comboot_return, COMBOOT_EXIT_COMMAND );
|
|
356
|
+ rmlongjmp ( comboot_return, COMBOOT_EXIT_COMMAND );
|
357
|
357
|
break;
|
358
|
358
|
|
359
|
359
|
case 0x0005: /* Force text mode */
|
|
@@ -552,7 +552,7 @@ static __asmcall void int22 ( struct i386_all_regs *ix86 ) {
|
552
|
552
|
* part of the COMBOOT program's memory space.
|
553
|
553
|
*/
|
554
|
554
|
DBG ( "COMBOOT: exiting to run kernel...\n" );
|
555
|
|
- longjmp ( comboot_return, COMBOOT_EXIT_RUN_KERNEL );
|
|
555
|
+ rmlongjmp ( comboot_return, COMBOOT_EXIT_RUN_KERNEL );
|
556
|
556
|
}
|
557
|
557
|
break;
|
558
|
558
|
|