1. 25 Jan, 2014 1 commit
    • Andrey Borzenkov's avatar
      fix Mingw W64-32 cross compile failure due to printf redefinition in libintl.h · 5ae584c0
      Andrey Borzenkov authored
      In file included from util/misc.c:36:0:
      ./include/grub/emu/misc.h:56:1: error: 'libintl_printf' is an unrecognized format function type [-Werror=format=]
       char * EXPORT_FUNC(xasprintf) (const char *fmt, ...) __attribute__ ((format (printf, 1, 2))) WARN_UNUSED_RESULT;
       ^
      ./include/grub/emu/misc.h:58:1: error: 'libintl_printf' is an unrecognized format function type [-Werror=format=]
      
      The reason is libintl.h which redefines printf as libintl_printf. The problem
      is not present in native MinGW build which avoids redefinition.  Use
      (format (__printf__) instead which is valid replacement in GCC.
      
      v2: add grub-core/lib/libgcrypt/src/g10lib.h
      v3: modify g10lib.h during import
      5ae584c0
  2. 11 May, 2013 1 commit
  3. 12 Jan, 2013 1 commit
  4. 21 Jun, 2012 1 commit
  5. 05 Feb, 2012 1 commit
    • Vladimir 'phcoder' Serbinenko's avatar
      * grub-core/kern/err.c (GRUB_MAX_ERRMSG): Move to ... · aca002f7
      Vladimir 'phcoder' Serbinenko authored
      	* include/grub/err.h (GRUB_MAX_ERRMSG): ... here.
      	* include/grub/err.h (grub_error_saved): New struct.
      	(grub_errmsg): Make array size explicit.
      	* include/grub/misc.h (grub_error_save): New function.
      	(grub_error_load): Likewise.
      	* grub-core/kern/err.c (grub_error_stack_items): Use grub_error_saved.
      	(grub_error_push): Update `errno' member name.
      	(grub_error_pop): Likewise
      	* grub-core/net/tftp.c (tftp_data): New member save_err.
      	(tftp_receive): Save error.
      	(tftp_open): Restore error.
      aca002f7
  6. 14 Oct, 2011 1 commit
  7. 06 Oct, 2011 1 commit
  8. 23 Jul, 2011 1 commit
  9. 10 Jul, 2011 2 commits
  10. 19 Apr, 2011 1 commit
  11. 21 Sep, 2010 1 commit
  12. 20 Sep, 2010 1 commit
    • Vladimir 'phcoder' Serbinenko's avatar
      Pause the execution (10s max) if any errors are displayed so the user · 38c259a7
      Vladimir 'phcoder' Serbinenko authored
      	has a chance to see them.
      
      	* grub-core/kern/err.c (grub_err_printed_errors): New variable.
      	(grub_print_error): Increment grub_err_printed_errors.
      	* grub-core/normal/menu.c (grub_menu_execute_entry): Pause the
      	execution if any errors were displayed.
      	(show_menu): Remove old code for pause.
      	* grub-core/normal/menu_entry.c (run): Likewise.
      	* grub-core/normal/term.c (grub_normal_char_counter): Removed. All
      	users updated.
      	(grub_normal_get_char_counter): Likewise.
      	* include/grub/err.h (grub_err_printed_errors): New external variable.
      	* include/grub/normal.h (grub_normal_get_char_counter): Removed.
      38c259a7
  13. 17 Sep, 2010 1 commit
  14. 05 Sep, 2010 1 commit
  15. 17 Aug, 2010 1 commit
  16. 06 May, 2010 1 commit
  17. 04 Mar, 2010 2 commits
  18. 07 Feb, 2010 1 commit
  19. 25 Aug, 2009 1 commit
    • phcoder's avatar
      2009-08-25 Vladimir Serbinenko <phcoder@gmail.com> · e7e1f93f
      phcoder authored
      	Authentication support.
      
      	* commands/password.c: New file.
      	* conf/common.rmk (pkglib_MODULES): Add password.mod.
      	(password_mod_SOURCES): New variable.
      	(password_mod_CFLAGS): Likewise.
      	(password_mod_LDFLAGS): Likewise.
      	(normal_mod_SOURCES): Add normal/auth.c.
      	* conf/i386-coreboot.rmk (grub_emu_SOURCES): Add commands/password.c and
      	normal/auth.c.
      	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
      	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
      	* conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
      	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
      	* conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
      	* conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
      	* include/grub/auth.h: New file.
      	* include/grub/err.h (grub_err_t): New enum value
      	GRUB_ERR_ACCESS_DENIED.
      	* include/grub/menu.h (grub_menu_entry): New fields 'restricted' and
      	'users'.
      	* include/grub/normal.h (grub_cmdline_get): New argument 'history'.
      	* normal/cmdline.c (grub_cmdline_get): New argument 'history'. All
      	users updated.
      	* normal/auth.c: New file.
      	* normal/main.c (grub_normal_add_menu_entry): Handle --users option.
      	(grub_cmdline_run): Don't allow to go to command line without
      	authentication.
      	* normal/menu.c (grub_menu_execute_entry): Handle restricted entries.
      	* normal/menu_entry.c (grub_menu_entry_run): Don't allow editing
      	menuentry without superuser rights.
      	* normal/menu_viewer.c (grub_menu_viewer_show_menu): Don't exit if
      	user isn't a superuser.
      e7e1f93f
  20. 08 Feb, 2009 1 commit
    • robertmh's avatar
      2009-02-08 Marco Gerards <marco@gnu.org> · d64399b5
      robertmh authored
              * Makefile.in (enable_grub_emu_usb): New variable.
              * conf/i386-pc.rmk (grub_emu_SOURCES): Add `disk/scsi.c'.
              (grub_emu_SOURCES) [grub_emu_SOURCES]: Add `disk/usbms.c',
              `util/usb.c', `bus/usb/usb.c' and `commands/usbtest.c'.
              (grub_emu_LDFLAGS): Add `$(LIBUSB)'.
              (pkglib_MODULES): Add `usb.mod', `uhci.mod', `ohci.mod',
              `usbtest.mod' and `usbms.mod'.
              (usb_mod_SOURCES, usb_mod_CFLAGS, usb_mod_LDFLAGS)
              (usbtest_mod_SOURCES, usbtest_mod_CFLAGS, usbtest_mod_LDFLAGS)
              (uhci_mod_SOURCES, uhci_mod_CFLAGS, uhci_mod_LDFLAGS,
              (ohci_mod_SOURCES, ohci_mod_CFLAGS, ohci_mod_LDFLAGS)
              (usbms_mod_SOURCES, usbms_mod_CFLAGS, usbms_mod_LDFLAGS): New
              variables.
      
              * disk/usbms.c: New file.
      
              * include/grub/usb.h: Likewise.
      
              * include/grub/usbtrans.h: Likewise.
      
              * include/grub/usbdesc.h: Likewise.
      
              * bus/usb/usbtrans.c: Likewise.
      
              * bus/usb/ohci.c: Likewise.
      
              * bus/usb/uhci.c: Likewise.
      
              * bus/usb/usbhub.c: Likewise.
      
              * bus/usb/usb.c: Likewise.
      
              * commands/usbtest.c: Likewise.
      
              * util/usb.c: Likewise.
      
              * include/grub/err.h (grub_err_t): Add `GRUB_ERR_IO'.
      
              * configure.ac: Test for libusb presence.
      
              * util/grub-emu.c (main) [HAVE_LIBUSB_H]: Call `grub_libusb_init'.
      d64399b5
  21. 15 Aug, 2008 1 commit
    • fzielcke's avatar
      2008-08-14 Felix Zielcke <fzielcke@z-51.de> · b86408f8
      fzielcke authored
              * include/grub/err.h (grub_err_printf): New function prototype.
              * util/misc.c (grub_err_printf): New function.
              * kern/misc.c [! GRUB_UTIL] (grub_err_printf): New alias for
              grub_printf.
              * kern/err.c (grub_print_error): Use grub_err_printf.
      b86408f8
  22. 08 Aug, 2008 1 commit
    • marco_g's avatar
      2008-08-08 Marco Gerards <marco@gnu.org> · 7f280db5
      marco_g authored
      	* disk/ata.c (grub_ata_regget): Change return type to
      	`grub_uint8_t'.
      	(grub_ata_regget2): Likewise.
      	(grub_ata_wait_status): New function.
      	(grub_ata_wait_busy): Removed function, updated all users to use
      	`grub_ata_wait_status'.
      	(grub_ata_wait_drq): Likewise.
      	(grub_ata_cmd): New function.
      	(grub_ata_pio_read): Change return type to `grub_uint8_t'.  Add
      	error handling.
      	(grub_ata_pio_write): Add error handling.
      	(grub_atapi_identify): Likewise.
      	(grub_atapi_packet): Use `grub_ata_cmd' and improve error
      	handling.
      	(grub_ata_identify): Use `grub_ata_cmd' and improve error
      	handling.  Actually use the detected registers.  Reorder the
      	detection logic such that it is easier to read.
      	(grub_ata_pciinit): Do not assign the same ID to each controller.
      	(grub_ata_setaddress): Use `grub_ata_cmd' and improve error
      	handling.
      	(grub_atapi_readsector): Check the result of `grub_ata_pio_read'.
      
      	* include/grub/err.h (grub_err_t): Add `GRUB_ERR_TIMEOUT'.
      7f280db5
  23. 22 Jul, 2007 1 commit
    • okuji's avatar
      2007-07-22 Yoshinori K. Okuji <okuji@enbug.org> · 5a79f472
      okuji authored
          Migrate to GNU General Public License Version 3.
      
          * COPYING: Replaced with the plain text version of GPLv3.
      
          * config.guess: Updated from gnulib.
          * config.sub: Likewise.
      
          * geninit.sh: Output a GPLv3 copyright notice.
          * geninitheader.sh: Likewise.
          * genmodsrc.sh: Likewise.
          * gensymlist.sh.in: Likewise.
      
          * boot/i386/pc/boot.S: Upgraded to GPLv3.
          * boot/i386/pc/diskboot.S: Likewise.
          * boot/i386/pc/pxeboot.S: Likewise.
          * commands/blocklist.c: Likewise.
          * commands/boot.c: Likewise.
          * commands/cat.c: Likewise.
          * commands/cmp.c: Likewise.
          * commands/configfile.c: Likewise.
          * commands/echo.c: Likewise.
          * commands/help.c: Likewise.
          * commands/ls.c: Likewise.
          * commands/search.c: Likewise.
          * commands/terminal.c: Likewise.
          * commands/test.c: Likewise.
          * commands/videotest.c: Likewise.
          * commands/i386/cpuid.c: Likewise.
          * commands/i386/pc/halt.c: Likewise.
          * commands/i386/pc/play.c: Likewise.
          * commands/i386/pc/reboot.c: Likewise.
          * commands/i386/pc/vbeinfo.c: Likewise.
          * commands/i386/pc/vbetest.c: Likewise.
          * commands/ieee1275/halt.c: Likewise.
          * commands/ieee1275/reboot.c: Likewise.
          * commands/ieee1275/suspend.c: Likewise.
          * disk/loopback.c: Likewise.
          * disk/lvm.c: Likewise.
          * disk/raid.c: Likewise.
          * disk/efi/efidisk.c: Likewise.
          * disk/i386/pc/biosdisk.c: Likewise.
          * disk/ieee1275/ofdisk.c: Likewise.
          * font/manager.c: Likewise.
          * fs/affs.c: Likewise.
          * fs/ext2.c: Likewise.
          * fs/fat.c: Likewise.
          * fs/fshelp.c: Likewise.
          * fs/hfs.c: Likewise.
          * fs/hfsplus.c: Likewise.
          * fs/iso9660.c: Likewise.
          * fs/jfs.c: Likewise.
          * fs/minix.c: Likewise.
          * fs/sfs.c: Likewise.
          * fs/ufs.c: Likewise.
          * fs/xfs.c: Likewise.
          * hello/hello.c: Likewise.
          * include/grub/acorn_filecore.h: Likewise.
          * include/grub/arg.h: Likewise.
          * include/grub/bitmap.h: Likewise.
          * include/grub/boot.h: Likewise.
          * include/grub/cache.h: Likewise.
          * include/grub/device.h: Likewise.
          * include/grub/disk.h: Likewise.
          * include/grub/dl.h: Likewise.
          * include/grub/elfload.h: Likewise.
          * include/grub/env.h: Likewise.
          * include/grub/err.h: Likewise.
          * include/grub/file.h: Likewise.
          * include/grub/font.h: Likewise.
          * include/grub/fs.h: Likewise.
          * include/grub/fshelp.h: Likewise.
          * include/grub/gzio.h: Likewise.
          * include/grub/hfs.h: Likewise.
          * include/grub/kernel.h: Likewise.
          * include/grub/loader.h: Likewise.
          * include/grub/lvm.h: Likewise.
          * include/grub/misc.h: Likewise.
          * include/grub/mm.h: Likewise.
          * include/grub/net.h: Likewise.
          * include/grub/normal.h: Likewise.
          * include/grub/parser.h: Likewise.
          * include/grub/partition.h: Likewise.
          * include/grub/pc_partition.h: Likewise.
          * include/grub/raid.h: Likewise.
          * include/grub/rescue.h: Likewise.
          * include/grub/script.h: Likewise.
          * include/grub/setjmp.h: Likewise.
          * include/grub/symbol.h: Likewise.
          * include/grub/term.h: Likewise.
          * include/grub/terminfo.h: Likewise.
          * include/grub/tparm.h: Likewise.
          * include/grub/types.h: Likewise.
          * include/grub/video.h: Likewise.
          * include/grub/efi/api.h: Likewise.
          * include/grub/efi/chainloader.h: Likewise.
          * include/grub/efi/console.h: Likewise.
          * include/grub/efi/console_control.h: Likewise.
          * include/grub/efi/disk.h: Likewise.
          * include/grub/efi/efi.h: Likewise.
          * include/grub/efi/pe32.h: Likewise.
          * include/grub/efi/time.h: Likewise.
          * include/grub/i386/linux.h: Likewise.
          * include/grub/i386/setjmp.h: Likewise.
          * include/grub/i386/types.h: Likewise.
          * include/grub/i386/efi/kernel.h: Likewise.
          * include/grub/i386/efi/loader.h: Likewise.
          * include/grub/i386/efi/time.h: Likewise.
          * include/grub/i386/pc/biosdisk.h: Likewise.
          * include/grub/i386/pc/boot.h: Likewise.
          * include/grub/i386/pc/chainloader.h: Likewise.
          * include/grub/i386/pc/console.h: Likewise.
          * include/grub/i386/pc/init.h: Likewise.
          * include/grub/i386/pc/kernel.h: Likewise.
          * include/grub/i386/pc/loader.h: Likewise.
          * include/grub/i386/pc/memory.h: Likewise.
          * include/grub/i386/pc/multiboot.h: Likewise.
          * include/grub/i386/pc/serial.h: Likewise.
          * include/grub/i386/pc/time.h: Likewise.
          * include/grub/i386/pc/vbe.h: Likewise.
          * include/grub/i386/pc/vbeblit.h: Likewise.
          * include/grub/i386/pc/vbefill.h: Likewise.
          * include/grub/i386/pc/vbeutil.h: Likewise.
          * include/grub/i386/pc/vga.h: Likewise.
          * include/grub/ieee1275/ieee1275.h: Likewise.
          * include/grub/ieee1275/ofdisk.h: Likewise.
          * include/grub/powerpc/libgcc.h: Likewise.
          * include/grub/powerpc/setjmp.h: Likewise.
          * include/grub/powerpc/types.h: Likewise.
          * include/grub/powerpc/ieee1275/biosdisk.h: Likewise.
          * include/grub/powerpc/ieee1275/console.h: Likewise.
          * include/grub/powerpc/ieee1275/ieee1275.h: Likewise.
          * include/grub/powerpc/ieee1275/kernel.h: Likewise.
          * include/grub/powerpc/ieee1275/loader.h: Likewise.
          * include/grub/powerpc/ieee1275/multiboot.h: Likewise.
          * include/grub/powerpc/ieee1275/time.h: Likewise.
          * include/grub/powerpc/ieee1275/util/biosdisk.h: Likewise.
          * include/grub/sparc64/libgcc.h: Likewise.
          * include/grub/sparc64/setjmp.h: Likewise.
          * include/grub/sparc64/types.h: Likewise.
          * include/grub/sparc64/ieee1275/console.h: Likewise.
          * include/grub/sparc64/ieee1275/ieee1275.h: Likewise.
          * include/grub/sparc64/ieee1275/kernel.h: Likewise.
          * include/grub/sparc64/ieee1275/time.h: Likewise.
          * include/grub/util/biosdisk.h: Likewise.
          * include/grub/util/getroot.h: Likewise.
          * include/grub/util/lvm.h: Likewise.
          * include/grub/util/misc.h: Likewise.
          * include/grub/util/raid.h: Likewise.
          * include/grub/util/resolve.h: Likewise.
          * io/gzio.c: Likewise.
          * kern/device.c: Likewise.
          * kern/disk.c: Likewise.
          * kern/dl.c: Likewise.
          * kern/elf.c: Likewise.
          * kern/env.c: Likewise.
          * kern/err.c: Likewise.
          * kern/file.c: Likewise.
          * kern/fs.c: Likewise.
          * kern/loader.c: Likewise.
          * kern/main.c: Likewise.
          * kern/misc.c: Likewise.
          * kern/mm.c: Likewise.
          * kern/parser.c: Likewise.
          * kern/partition.c: Likewise.
          * kern/rescue.c: Likewise.
          * kern/term.c: Likewise.
          * kern/efi/efi.c: Likewise.
          * kern/efi/init.c: Likewise.
          * kern/efi/mm.c: Likewise.
          * kern/i386/dl.c: Likewise.
          * kern/i386/efi/init.c: Likewise.
          * kern/i386/efi/startup.S: Likewise.
          * kern/i386/pc/init.c: Likewise.
          * kern/i386/pc/lzo1x.S: Likewise.
          * kern/i386/pc/startup.S: Likewise.
          * kern/ieee1275/ieee1275.c: Likewise.
          * kern/powerpc/cache.S: Likewise.
          * kern/powerpc/dl.c: Likewise.
          * kern/powerpc/ieee1275/cmain.c: Likewise.
          * kern/powerpc/ieee1275/crt0.S: Likewise.
          * kern/powerpc/ieee1275/init.c: Likewise.
          * kern/powerpc/ieee1275/openfw.c: Likewise.
          * kern/sparc64/cache.S: Likewise.
          * kern/sparc64/dl.c: Likewise.
          * kern/sparc64/ieee1275/init.c: Likewise.
          * kern/sparc64/ieee1275/openfw.c: Likewise.
          * loader/efi/chainloader.c: Likewise.
          * loader/efi/chainloader_normal.c: Likewise.
          * loader/i386/efi/linux.c: Likewise.
          * loader/i386/efi/linux_normal.c: Likewise.
          * loader/i386/pc/chainloader.c: Likewise.
          * loader/i386/pc/chainloader_normal.c: Likewise.
          * loader/i386/pc/linux.c: Likewise.
          * loader/i386/pc/linux_normal.c: Likewise.
          * loader/i386/pc/multiboot.c: Likewise.
          * loader/i386/pc/multiboot_normal.c: Likewise.
          * loader/powerpc/ieee1275/linux.c: Likewise.
          * loader/powerpc/ieee1275/linux_normal.c: Likewise.
          * normal/arg.c: Likewise.
          * normal/cmdline.c: Likewise.
          * normal/command.c: Likewise.
          * normal/completion.c: Likewise.
          * normal/execute.c: Likewise.
          * normal/function.c: Likewise.
          * normal/lexer.c: Likewise.
          * normal/main.c: Likewise.
          * normal/menu.c: Likewise.
          * normal/menu_entry.c: Likewise.
          * normal/misc.c: Likewise.
          * normal/parser.y: Likewise.
          * normal/script.c: Likewise.
          * normal/i386/setjmp.S: Likewise.
          * normal/powerpc/setjmp.S: Likewise.
          * normal/sparc64/setjmp.S: Likewise.
          * partmap/acorn.c: Likewise.
          * partmap/amiga.c: Likewise.
          * partmap/apple.c: Likewise.
          * partmap/gpt.c: Likewise.
          * partmap/pc.c: Likewise.
          * partmap/sun.c: Likewise.
          * term/gfxterm.c: Likewise.
          * term/terminfo.c: Likewise.
          * term/efi/console.c: Likewise.
          * term/i386/pc/console.c: Likewise.
          * term/i386/pc/serial.c: Likewise.
          * term/i386/pc/vesafb.c: Likewise.
          * term/i386/pc/vga.c: Likewise.
          * term/ieee1275/ofconsole.c: Likewise.
          * util/biosdisk.c: Likewise.
          * util/console.c: Likewise.
          * util/genmoddep.c: Likewise.
          * util/getroot.c: Likewise.
          * util/grub-emu.c: Likewise.
          * util/grub-mkdevicemap.c: Likewise.
          * util/grub-probe.c: Likewise.
          * util/lvm.c: Likewise.
          * util/misc.c: Likewise.
          * util/raid.c: Likewise.
          * util/resolve.c: Likewise.
          * util/update-grub.in: Likewise.
          * util/update-grub_lib.in: Likewise.
          * util/grub.d/00_header.in: Likewise.
          * util/grub.d/10_hurd.in: Likewise.
          * util/grub.d/10_linux.in: Likewise.
          * util/i386/efi/grub-install.in: Likewise.
          * util/i386/efi/grub-mkimage.c: Likewise.
          * util/i386/pc/grub-install.in: Likewise.
          * util/i386/pc/grub-mkimage.c: Likewise.
          * util/i386/pc/grub-mkrescue.in: Likewise.
          * util/i386/pc/grub-setup.c: Likewise.
          * util/i386/pc/misc.c: Likewise.
          * util/powerpc/ieee1275/grub-install.in: Likewise.
          * util/powerpc/ieee1275/grub-mkimage.c: Likewise.
          * util/powerpc/ieee1275/misc.c: Likewise.
          * video/bitmap.c: Likewise.
          * video/video.c: Likewise.
          * video/i386/pc/vbe.c: Likewise.
          * video/i386/pc/vbeblit.c: Likewise.
          * video/i386/pc/vbefill.c: Likewise.
          * video/i386/pc/vbeutil.c: Likewise.
          * video/readers/tga.c: Likewise.
      5a79f472
  24. 12 Dec, 2006 1 commit
    • marco_g's avatar
      2006-12-12 Marco Gerards <marco@gnu.org> · a8aa5762
      marco_g authored
      	* include/grub/err.h (grub_err_t): Add `GRUB_ERR_MENU'.
      
      	* kern/env.c (grub_env_unset): Don't free the member `value' when
      	the type is GRUB_ENV_VAR_DATA, in this case it's a user defined
      	pointer.
      
      	* normal/main.c (current_menu): Removed.
      	(free_menu): Unset the `menu' environment variable.
      	(grub_normal_menu_addentry): Make use of the environment variable
      	`menu', instead of using the global `current_menu'.  Allocate
      	memory for the sourcecode of this entry.
      	(read_config_file): New argument `nested', changed all callers.
      	Only in the case of a new context, initialize a new menu.  Set the
      	`menu' environment variable.
      	(grub_normal_execute): Don't set and unset the environment
      	variable `menu' here anymore.  Only free the menu when leaving the
      	context.
      
      	* util/i386/pc/biosdisk.c (linux_find_partition): Fixed a memory
      	leak.
      a8aa5762
  25. 24 Dec, 2005 1 commit
    • chaac's avatar
      2005-12-24 Vesa Jaaskelainen <chaac@nic.fi> · 6a124103
      chaac authored
      * kern/err.c (grub_error_push): Added new function to support error
      stacks.
      (grub_error_pop): Likewise.
      (grub_error_stack_items): New local variable to support error stacks.
      (grub_error_stack_pos): Likewise.
      (grub_error_stack_assert): Likewise.
      (GRUB_ERROR_STACK_SIZE): Added new define to configure maximum error
      stack depth.
      (grub_print_error): Added support to print errors from error stack.
      
      * include/grub/err.h (grub_error_push): Added function prototype.
      (grub_error_pop): Likewise.
      6a124103
  26. 07 Nov, 2005 1 commit
    • marco_g's avatar
      2005-11-06 Marco Gerards <mgerards@xs4all.nl> · daac212a
      marco_g authored
      	Add initial scripting support.
      
      	* commands/test.c: New file.
      	* include/grub/script.h: Likewise.
      	* normal/execute.c: Likewise.
      	* normal/function.c: Likewise.
      	* normal/lexer.c: Likewise.
      	* normal/parser.y: Likewise.
      	* normal/script.c: Likewise.
      
      	* configure.ac: Add `AC_PROG_YACC' test.
      
      	* conf/i386-pc.rmk (grub_emu_SOURCES): Add `commands/test.c',
      	`normal/execute.c', `normal/lexer.c', `grub_script.tab.c',
      	`normal/function.c' and `normal/script.c'.
      	(normal_mod_SOURCES): `normal/execute.c', `normal/lexer.c',
      	`grub_script.tab.c', `normal/function.c' and `normal/script.c'.
      	(test_mod_SOURCES, test_mod_CFLAGS, test_mod_LDFLAGS): New variables.
      	(pkgdata_MODULES): Add `test.mod'.
      	(grub_script.tab.c): New rule.
      	(grub_script.tab.h): Likewise.
      
      	* include/grub/err.h (grub_err_t): Add `GRUB_ERR_TEST_FAILURE'.
      
      	* include/grub/normal.h (grub_test_init): New prototype.
      	(grub_test_fini): Likewise.
      
      	* normal/command.c: Include <grub/script.h>.
      	(grub_command_execute): Rewritten.
      
      	* util/grub-emu.c (main): Call `grub_test_init' and
      	`grub_test_fini'.
      daac212a
  27. 22 Aug, 2005 1 commit
    • okuji's avatar
      2005-08-22 Yoshinori K. Okuji <okuji@enbug.org> · d9864ee1
      okuji authored
              * gendistlist.sh (EXTRA_DISTFILES): Added genfslist.sh.
              (DISTDIRS): Added io and video.
              Rewrite the search routine to make an output consistently.
      
              * DISTLIST: Added conf/sparc64-ieee1275.mk,
              conf/sparc64-ieee1275.rmk, include/grub/gzio.h,
              include/grub/ieee1275/ieee1275.h, include/grub/ieee1275/ofdisk.h,
              io/gzio.c, kern/sparc64/cache.c, kern/sparc64/dl.c,
              kern/sparc64/ieee1275/init.c, kern/sparc64/ieee1275/openfw.c and
              util/powerpc/ieee1275/misc.c.
      
              * include/grub/gzio.h: New file.
              * io/gzio.c: Likewise.
      
              * kern/file.c (grub_file_close): Call grub_device_close only if
              FILE->DEVICE is not NULL.
      
              * include/grub/mm.h [!NULL] (NULL): New macro.
      
              * include/grub/err.h (GRUB_ERR_BAD_GZIP_DATA): New constant.
      
              * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Added io/gzip.c.
              (pkgdata_MODULES): Added gzio.mod.
              (gzio_mod_SOURCES): New variable.
              (gzio_mod_CFLAGS): Likewise.
      
              * conf/i386-pc.rmk (grub_emu_SOURCES): Added io/gzip.c.
              (pkgdata_MODULES): Added gzio.mod.
              (gzio_mod_SOURCES): New variable.
              (gzio_mod_CFLAGS): Likewise.
      
              * commands/cat.c: Include grub/gzio.h.
              (grub_cmd_cat): Use grub_gzfile_open instead of
              grub_file_open.
      
              * commands/cmp.c: Include grub/gzio.h.
              (grub_cmd_cmp): Use grub_gzfile_open instead of
              grub_file_open.
      
              * loader/i386/pc/multiboot.c: Include grub/gzio.h.
              (grub_rescue_cmd_multiboot): Use grub_gzfile_open instead of
              grub_file_open.
              (grub_rescue_cmd_module): Likewise.
      d9864ee1
  28. 11 Sep, 2004 1 commit
    • okuji's avatar
      2004-09-10 Yoshinori K. Okuji <okuji@enbug.org> · 3c52136a
      okuji authored
        * normal/menu.c: Include grub/loader.h and grub/machine/time.h.
        (print_message): Add a missing newline.
        (run_menu): Added timeout support.
        (run_menu_entry): New local function.
        (grub_menu_run): Added support for booting.
      
        * kern/loader.c (grub_loader_is_loaded): New function.
      
        * include/grub/powerpc/ieee1275/time.h: Include grub/symbol.h.
        (grub_get_rtc): Exported.
      
        * include/grub/i386/pc/time.h: Include grub/symbol.h.
        (grub_get_rtc): Exported.
      
        * include/grub/normal.h (struct grub_command_list): Remove
        constant from the member `command'.
      
        * include/grub/loader.h (grub_loader_is_loaded): Declared.
      
        * include/grub/err.h (GRUB_ERR_INVALID_COMMAND): New constant.
      
        * conf/i386-pc.rmk (kernel_img_HEADERS): Added machine/time.h.
      3c52136a
  29. 04 Apr, 2004 1 commit
    • okuji's avatar
      2004-04-04 Yoshinori K. Okuji <okuji@enbug.org> · 4b13b216
      okuji authored
      	All symbols prefixed with PUPA_ and pupa_ are renamed to GRUB_
      	and grub_, respectively. Because the conversion is trivial and
      	mechanical, I omit the details here. Please refer to the CVS
      	if you need more information.
      4b13b216
  30. 24 Feb, 2004 1 commit
    • okuji's avatar
      shinori K. Okuji <okuji@enbug.org> · 8367695c
      okuji authored
      	* genkernsyms.sh: Updated copyright information.
      	* genmk.rb: Likewise.
      	* genmodsrc.sh: Likewise.
      	* gensymlist.sh: Likewise.
      	* boot/i386/pc/boot.S: Likewise.
      	* boot/i386/pc/diskboot.S: Likewise.
      	* disk/i386/pc/biosdisk.c: Likewise.
      	* disk/i386/pc/partition.c: Likewise.
      	* font/manager.c: Likewise.
      	* fs/ext2.c: Likewise.
      	* fs/fat.c: Likewise.
      	* include/pupa/boot.h: Likewise.
      	* include/pupa/device.h: Likewise.
      	* include/pupa/disk.h: Likewise.
      	* include/pupa/dl.h: Likewise.
      	* include/pupa/elf.h: Likewise.
      	* include/pupa/err.h: Likewise.
      	* include/pupa/file.h: Likewise.
      	* include/pupa/font.h: Likewise.
      	* include/pupa/fs.h: Likewise.
      	* include/pupa/kernel.h: Likewise.
      	* include/pupa/loader.h: Likewise.
      	* include/pupa/misc.h: Likewise.
      	* include/pupa/mm.h: Likewise.
      	* include/pupa/net.h: Likewise.
      	* include/pupa/normal.h: Likewise.
      	* include/pupa/rescue.h: Likewise.
      	* include/pupa/setjmp.h: Likewise.
      	* include/pupa/symbol.h: Likewise.
      	* include/pupa/term.h: Likewise.
      	* include/pupa/types.h: Likewise.
      	* include/pupa/i386/setjmp.h: Likewise.
      	* include/pupa/i386/types.h: Likewise.
      	* include/pupa/i386/pc/biosdisk.h: Likewise.
      	* include/pupa/i386/pc/boot.h: Likewise.
      	* include/pupa/i386/pc/console.h: Likewise.
      	* include/pupa/i386/pc/init.h: Likewise.
      	* include/pupa/i386/pc/kernel.h: Likewise.
      	* include/pupa/i386/pc/linux.h: Likewise.
      	* include/pupa/i386/pc/loader.h: Likewise.
      	* include/pupa/i386/pc/memory.h: Likewise.
      	* include/pupa/i386/pc/multiboot.h: Likewise.
      	* include/pupa/i386/pc/partition.h: Likewise.
      	* include/pupa/i386/pc/time.h: Likewise.
      	* include/pupa/i386/pc/vga.h: Likewise.
      	* include/pupa/i386/pc/util/biosdisk.h: Likewise.
      	* include/pupa/util/getroot.h: Likewise.
      	* include/pupa/util/misc.h: Likewise.
      	* include/pupa/util/resolve.h: Likewise.
      	* kern/device.c: Likewise.
      	* kern/disk.c: Likewise.
      	* kern/dl.c: Likewise.
      	* kern/err.c: Likewise.
      	* kern/file.c: Likewise.
      	* kern/fs.c: Likewise.
      	* kern/loader.c: Likewise.
      	* kern/main.c: Likewise.
      	* kern/misc.c: Likewise.
      	* kern/mm.c: Likewise.
      	* kern/rescue.c: Likewise.
      	* kern/term.c: Likewise.
      	* kern/i386/dl.c: Likewise.
      	* kern/i386/pc/init.c: Likewise.
      	* kern/i386/pc/lzo1x.S: Likewise.
      	* kern/i386/pc/startup.S: Likewise.
      	* loader/i386/pc/chainloader.c: Likewise.
      	* loader/i386/pc/linux.c: Likewise.
      	* loader/i386/pc/multiboot.c: Likewise.
      	* normal/cmdline.c: Likewise.
      	* normal/command.c: Likewise.
      	* normal/main.c: Likewise.
      	* normal/menu.c: Likewise.
      	* normal/i386/setjmp.S: Likewise.
      	* term/i386/pc/console.c: Likewise.
      	* term/i386/pc/vga.c: Likewise.
      	* util/console.c: Likewise.
      	* util/genmoddep.c: Likewise.
      	* util/misc.c: Likewise.
      	* util/pupa-emu.c: Likewise.
      	* util/resolve.c: Likewise.
      	* util/unifont2pff.rb: Likewise.
      	* util/i386/pc/biosdisk.c: Likewise.
      	* util/i386/pc/getroot.c: Likewise.
      	* util/i386/pc/pupa-mkimage.c: Likewise.
      	* util/i386/pc/pupa-setup.c: Likewise.
      8367695c
  31. 13 Nov, 2003 1 commit
    • marco_g's avatar
      2003-11-12 Marco Gerards <metgerards@student.han.nl> · 8e72a9c0
      marco_g authored
      	* disk/i386/pc/biosdisk.c (pupa_biosdisk_open): Correctly check
      	for available extensions.
      
      	* include/pupa/i386/pc/time.h: New file.
      	* kern/disk.c: Include <pupa/machine/time.h>.
      	(PUPA_CACHE_TIMEOUT): New macro.
      	(pupa_last_time): New variable.
      	(pupa_disk_open): Flush the cache when there was a timeout.
      	(pupa_disk_close): Reset the timer.
      	* kern/i386/pc/startup.S (pupa_get_rtc): Renamed from
      	pupa_currticks.
      	* util/misc.c: Include <sys/times.h>
      	(pupa_get_rtc): New function.
      8e72a9c0
  32. 30 Oct, 2003 1 commit
    • marco_g's avatar
      2003-10-27 Marco Gerards <metgerards@student.han.nl> · a35eed7c
      marco_g authored
      	* README: In the pupa-mkimage example use _chain instead of chain
      	and ext2 instead of fat.
      	* TODO: Replace ext2fs with jfs as an example.  Add an item for
      	adding journal playback for ext2fs.
      	* conf/i386-pc.rmk (pupa_setup_SOURCES): Added fs/ext2.c.
      	(pkgdata_MODULES): Added ext2.mod.
      	(ext2_mod_SOURCES): New variable.
      	(ext2_mod_CFLAGS): Likewise.
      	* include/pupa/err.h (pupa_err_t): Added PUPA_ERR_SYMLINK_LOOP.
      	* include/pupa/misc.h (pupa_strncpy): New prototype.
      	(pupa_strcat): Likewise.
      	(pupa_strncmp): Likewise.
      	* kern/misc.c (pupa_strcat): Enable function.
      	(pupa_strncpy): New function.
      	(pupa_strncmp): Likewise.
      
      	* kern/disk.c (pupa_disk_read): Set pupa_errno to PUPA_ERR_NONE
      	when the read failed before retrying.
      	* util/i386/pc/biosdisk.c (_LARGEFILE_SOURCE): Removed.
      	(_FILE_OFFSET_BITS): Likewise.
      	* configure.ac: Added AC_SYS_LARGEFILE.
      a35eed7c
  33. 26 Sep, 2003 1 commit
    • okuji's avatar
      2003-09-25 Yoshinori K. Okuji <okuji@enbug.org> · 18d9c7cd
      okuji authored
      	I forgot to check in these changes for a long time. This adds
      	incomplete support for VGA console, and this is still very
      	buggy. Also, a lot of consideration is required for I18N,
      	UNICODE, and VGA font issues. Therefore, assume that this is
      	such that "better than nothing".
      
      	* font/manager.c: New file.
      	* include/pupa/font.h: Likewise.
      	* include/pupa/i386/pc/vga.h: Likewise.
      	* term/i386/pc/vga.c: Likewise.
      	* util/unifont2pff.rb: Likewise.
      
      	* conf/i386-pc.rmk (kernel_img_HEADERS): Added machine/vga.h.
      	(pkgdata_MODULES): Added vga.mod and font.mod.
      	(vga_mod_SOURCES): New variables.
      	(vga_mod_CFLAGS): Likewise.
      	(font_mod_SOURCES): Likewise.
      	(font_mod_CFLAGS): Likewise.
      
      	* include/pupa/err.h (PUPA_ERR_BAD_FONT): New constant.
      
      	* include/pupa/term.h: Include pupa/err.h.
      	(struct pupa_term): Added init and fini.
      	Changed the argument of putchar to pupa_uint32_t.
      
      	* include/pupa/i386/pc/console.h: Include pupa/symbol.h.
      	(pupa_console_real_putchar): New prototype.
      	(pupa_console_putchar): Removed.
      	(pupa_console_checkkey): Exported.
      	(pupa_console_getkey): Likewise.
      
      	* kern/misc.c (pupa_vsprintf): Add support for UNICODE
      	characters.
      
      	* kern/term.c (pupa_term_set_current): Rewritten.
      	(pupa_putchar): Likewise.
      	(pupa_putcode): New function.
      
      	* kern/i386/pc/startup.S (pupa_console_putchar): Renamed to ...
      	(pupa_console_real_putchar): ... this.
      	(pupa_vga_set_mode): New function.
      	(pupa_vga_get_font): Likewise.
      
      	* normal/command.c: Include pupa/term.h.
      	(terminal_command): New function.
      	(pupa_command_init): Register the command "terminal".
      
      	* normal/menu.c (DISP_LEFT): Changed to a UNICODE value.
      	(DISP_UP): Likewise.
      	(DISP_RIGHT): Likewise.
      	(DISP_DOWN): Likewise.
      	(DISP_HLINE): Likewise.
      	(DISP_VLINE): Likewise.
      	(DISP_UL): Likewise.
      	(DISP_UR): Likewise.
      	(DISP_LL): Likewise.
      	(DISP_LR): Likewise.
      
      	* term/i386/pc/console.c (pupa_console_putchar): New function.
      18d9c7cd
  34. 20 Jan, 2003 1 commit
    • okuji's avatar
      2003-01-20 Yoshinori K. Okuji <okuji@enbug.org> · ce5bf700
      okuji authored
      	* include/pupa/normal.h: New file.
      	* include/pupa/setjmp.h: Likewise.
      	* include/pupa/i386/setjmp.h: Likewise.
      	* normal/cmdline.c: Likewise.
      	* normal/command.c: Likewise.
      	* normal/main.c: Likewise.
      	* normal/menu.c: Likewise.
      	* normal/i386/setjmp.S: Likewise.
      
      	* loader/i386/pc/linux.c (pupa_rescue_cmd_linux): Made global.
      	(pupa_rescue_cmd_initrd): Likewise.
      
      	* loader/i386/pc/chainloader.c (pupa_rescue_cmd_chainloader):
      	Likewise.
      
      	* kern/i386/pc/startup.S (translation_table): New variable.
      	(translate_keycode): New function.
      	(pupa_console_getkey): Call translate_keycode.
      
      	* kern/rescue.c (attempt_normal_mode): New function.
      	(pupa_enter_rescue_mode): Attempt to execute the normal mode. If
      	it failed, print a message.
      
      	* kern/mm.c (pupa_real_malloc): Print more information when a
      	free magic is broken.
      	(pupa_free): If the first free header is not free actually, set
      	it to P.
      
      	* kern/main.c (pupa_load_normal_mode): Just load the module
      	"normal".
      	(pupa_main): Don't print the message
      	"Entering into rescue mode..." here.
      
      	* include/pupa/i386/pc/loader.h (pupa_rescue_cmd_initrd):
      	Declared.
      	(pupa_rescue_cmd_initrd): Likewise.
      	(pupa_rescue_cmd_initrd): Likewise.
      
      	* include/pupa/symbol.h (FUNCTION): Specify the type.
      	(VARIABLE): Likewise.
      
      	* include/pupa/err.h (pupa_err_t): Added
      	PUPA_ERR_UNKNOWN_COMMAND.
      
      	* include/pupa/dl.h (pupa_dl_set_prefix): Exported.
      	(pupa_dl_get_prefix): Likewise.
      
      	* conf/i386-pc.rmk (pkgdata_MODULES): Added normal.mod.
      	Added _chain.mod and _linux.mod instead of chain.mod and
      	linux.mod.
      	(chain_mod_SOURCES): Renamed to ...
      	(_chain_mod_SOURCES): ... this.
      	(chain_mod_CFLAGS): Renamed to ...
      	(_chain_mod_CFLAGS): ... this.
      	(linux_mod_SOURCES): Renamed to ...
      	(_linux_mod_SOURCES): ... this.
      	(linux_mod_CFLAGS): Renamed to ...
      	(_linux_mod_CFLAGS): ... this.
      	(normal_mod_SOURCES): New variable.
      	(normal_mod_CFLAGS): Likewise.
      	(normal_mod_ASFLAGS): Likewise.
      
      2003-01-18  Yoshinori K. Okuji  <okuji@enbug.org>
      
      	* kern/rescue.c (pupa_rescue_cmd_rmmod): Call pupa_dl_unload, if
      	possible.
      
      	* kern/dl.c (pupa_dl_ref): Refer dependending modules
      	recursively.
      	(pupa_dl_unref): Unrefer depending modules recursively.
      	Don't call pupa_dl_unload implicitly, because PUPA can crash if
      	a module is unloaded before one depending on that module is
      	unloaded.
      	(pupa_dl_unload): Unload depending modules explicitly,
      	if possible.
      ce5bf700
  35. 27 Dec, 2002 1 commit