Commit graph

1831 commits

Author SHA1 Message Date
Vladimir Serbinenko
cb72aa1809 Rewrite blocklist functions in order to get progress when
reading large extents and decrease amount of blocklist hook calls.
2013-11-01 23:28:03 +01:00
Vladimir Serbinenko
9a021c5580 * util/grub-mkrescue.in: Do not use UUID search on EFI. 2013-11-01 16:05:15 +01:00
Vladimir Serbinenko
5177391ebe * include/grub/emu/hostdisk.h: Add proper declaration for grub_host_init
and grub_hostfs_init.
2013-10-28 13:33:12 +01:00
Vladimir Serbinenko
30fd7198fe * util/grub-mkfont.c (main): Show error message when FT_Set_Pixel_Sizes
fails.
2013-10-27 20:38:32 +01:00
Vladimir Serbinenko
cf880639f6 Revert " * util/grub-mkstandalone.in: Remove needless copying since we already"
The copying in question was needed.

This reverts commit 8154884dd4.
2013-10-27 12:22:52 +01:00
Grégoire Sutre
f37bf9c778 * util/grub.d/00_header.in: Don't use LANG if it's not set. 2013-10-26 20:11:55 +02:00
Grégoire Sutre
67811a6fd4 * util/grub-mkconfig.in: Replace $0 with $self.
* util/grub-reboot.in: Likewise.
	* util/grub-set-default.in: Likewise.
2013-10-26 20:05:29 +02:00
Vladimir 'phcoder' Serbinenko
cd78a56fb2 Move stat () and device mode checking into OS-dependent files as
long as performance doesn't suffer.
2013-10-19 16:29:20 +02:00
Vladimir 'phcoder' Serbinenko
663f6eb195 * util/grub-mkimagexx.c (make_reloc_section): Fix memory leak.
(load_image): Likewise.
2013-10-19 02:39:06 +02:00
Vladimir 'phcoder' Serbinenko
6f65237374 * util/grub-render-label.c: Move backend part to ...
* util/render-label.c: ... here.
2013-10-19 02:37:01 +02:00
Vladimir 'phcoder' Serbinenko
44d1c20a13 * util/grub-render-label.c: Move backend part to ...
* util/render-label.c: ... here.
2013-10-19 02:34:18 +02:00
Vladimir 'phcoder' Serbinenko
8154884dd4 * util/grub-mkstandalone.in: Remove needless copying since we already
pass the files to tar.
2013-10-17 01:12:22 +02:00
Hiroyuki YAMAMORI
ceca6ddf26 Handle Japanese special keys.
Reported by: Hiroyuki YAMAMORI.
	Codes supplied by: Hiroyuki YAMAMORI.
2013-10-17 00:49:05 +02:00
Vladimir 'phcoder' Serbinenko
593816780e * util/editenv.c (grub_util_create_envblk_file): Use grub_util_rename. 2013-10-15 21:25:18 +02:00
Vladimir 'phcoder' Serbinenko
bacfefbb0e * util/grub-editenv.c (create_envblk_file): More from here ...
* util/editenv.c (grub_util_create_envblk_file): ... to here.
2013-10-15 21:23:54 +02:00
Vladimir 'phcoder' Serbinenko
df1e64c98e Define grub_util_is_directory/regular/special_file and
use OS-dependent versions rather than to rely on stat().
2013-10-15 20:27:58 +02:00
Vladimir 'phcoder' Serbinenko
ec16e02639 * util/grub-mkimage.c: Move backend part to ...
* util/mkimage.c: ... here.
2013-10-15 19:14:55 +02:00
Vladimir 'phcoder' Serbinenko
f4e0adc0f9 Remove leftover references to some of the system headers. 2013-10-15 17:59:54 +02:00
Vladimir 'phcoder' Serbinenko
5a869940de Split out blocklist retrieving from setup.c to
grub-core/osdep/blocklist.c and add windows implementation since
	generic version doesn't work on NTFS on Windows due to aggressive
	unflushable cache.
2013-10-15 17:02:26 +02:00
Vladimir 'phcoder' Serbinenko
c06c75201c Split grub-setup.c into frontend (grub-setup.c) and backend (setup.c)
files.
2013-10-15 16:16:04 +02:00
Vladimir 'phcoder' Serbinenko
588744d0dc * util/grub-probe.c (probe): Separate different drives in hint-str
by spaces and not newlines.
	* util/grub-mkconfig_lib.in: Handle multidevice filesystem.
2013-10-14 18:27:29 +02:00
Vladimir 'phcoder' Serbinenko
66a1b3eeb7 * util/misc.c (grub_util_get_image_size): Use FILE functions rather than
stat.
2013-10-13 23:45:22 +02:00
Vladimir 'phcoder' Serbinenko
e19bec1715 * util/grub-editenv.c: Remove leftover set_program_name and init_nls. 2013-10-13 23:44:07 +02:00
Vladimir 'phcoder' Serbinenko
bb338aaf24 Add a wrapper for fopen. On unix-like systems just pass-through. On
windows use unicode version.
2013-10-13 20:36:28 +02:00
Vladimir 'phcoder' Serbinenko
ae5540d3d4 Move set_program_name and init_nls to host_init. On windows
fix in this fuction console and argument charset as well.
2013-10-13 20:03:42 +02:00
Andrey Borzenkov
4cd3c4fec7 Fix inconsistent use of GRUB_CRYPTODISK_ENABLE and
GRUB_ENABLE_CRYPTODISK.

	* util/grub-install.in: Rename all GRUB_CRYPTODISK_ENABLE to
	GRUB_ENABLE_CRYPTODISK.
	* util/grub-mkconfig_lib.in: Likewise.
2013-10-12 08:17:05 +02:00
Vladimir 'phcoder' Serbinenko
ba9baabecd * util/grub-setup.c (setup): Move copying of partition table as
futher up as possible to avoid possible overwrite by floppy routines.
2013-10-11 16:15:43 +02:00
Vladimir 'phcoder' Serbinenko
3530bc9d90 * util/getroot.c (make_device_name): Remove dos_part and bsd_part as
it's mostly unused. Move vestiges to the callers.
2013-10-10 10:21:07 +02:00
Vladimir 'phcoder' Serbinenko
fb9f59c3ce * util/grub-mkpasswd-pbkdf2.c: Remove temporary buffers for hex
version of salt and hash. Use grub_snprintf rather than snprintf.
2013-10-10 10:16:37 +02:00
Vladimir 'phcoder' Serbinenko
71c1d67a34 Avoid including hostfile.h when not necessarry as it pulls
in OS-specific headers which may redefine generic names
	like "far".
2013-10-10 09:18:06 +02:00
Vladimir 'phcoder' Serbinenko
f7676b7016 * util/grub-mkimage.c (generate_image): Use size_t instead of
grub_size_t.
	* util/grub-mkimagexx.c (locate_sections): Likewise.
	(load_image): Likewise.
2013-10-09 05:36:00 +02:00
Vladimir 'phcoder' Serbinenko
22f98db270 * util/misc.c (grub_util_write_image_at): Don't use PRIxGRUB_SIZE for
size_t.
	(grub_util_write_image): Likewise.
2013-10-09 05:33:09 +02:00
Vladimir 'phcoder' Serbinenko
acbbe5cbad * include/grub/util/lvm.h: Removed. 2013-10-08 21:01:09 +02:00
Vladimir 'phcoder' Serbinenko
9a2c903f28 * util/ieee1275/ofpath.c: Move to ...
* grub-core/osdep/linux/ofpath.c: ..here, split stub into ...
	* grub-core/osdep/basic/ofpath.c: ..here.
2013-10-08 18:25:49 +02:00
Vladimir 'phcoder' Serbinenko
c1ca424476 Move sleep routines to grub-core/osdep. 2013-10-08 17:38:46 +02:00
Vladimir 'phcoder' Serbinenko
672fa55e81 Move OS-dependent files to grub-core/osdep and document it. 2013-10-08 17:30:22 +02:00
Vladimir 'phcoder' Serbinenko
f8772ea7f5 * util/misc.c: Remove leftover inclusion of malloc.h. 2013-10-08 17:02:22 +02:00
Vladimir 'phcoder' Serbinenko
cef86fefda * util/raid.c: Fold into ...
* util/getroot_linux.c: ... here. Make all functions static.
2013-10-08 16:59:50 +02:00
Vladimir 'phcoder' Serbinenko
de300af2ac * util/random_unix.c: Add NetBSD and Mac OS X to verified list. 2013-10-08 16:35:21 +02:00
Samuel Thibault
1db3830418 * util/grub.d/10_hurd.in: Use version_find_latest to sort gnumach
kernels by version order.
2013-10-06 01:52:24 +02:00
Vladimir 'phcoder' Serbinenko
fb295fc070 * util/random_unix.c: Add kFreeBSD to the list of secure RNG. 2013-10-04 02:39:31 +02:00
Vladimir 'phcoder' Serbinenko
47345010a4 Add AROS hostdisk and getroot routines. 2013-10-04 02:35:03 +02:00
Vladimir 'phcoder' Serbinenko
bf25f87931 Make cryptodisk and diskfilter probe data retrievable programmatically
and not just printable.
2013-10-04 01:43:47 +02:00
Vladimir 'phcoder' Serbinenko
24ca45125e Split random retrieving code into separate files. 2013-10-04 01:29:10 +02:00
Jon McCune
0340bdbc22 * grub-core/commands/loadenv.c: Support skipping signature check
and variable names filtering.
2013-09-27 02:08:32 +02:00
Vladimir 'phcoder' Serbinenko
30b7f58f4e * grub-core/kern/emu/hostdisk_unix.c: Declare AROS as non-unix.
* grub-core/kern/emu/hostfs.c: Likewise.
	* util/getroot_unix.c: Likewise.
2013-09-24 19:19:31 +02:00
Vladimir 'phcoder' Serbinenko
bab7b1ebeb * include/grub/emu/hostdisk.h (GRUB_FD_STAT_IS_FUNTIONAL): New define.
Migrate all explicit defines to this new one.
2013-09-24 19:17:24 +02:00
Vladimir 'phcoder' Serbinenko
e8fd80bc3d * util/getroot.c (grub_util_biosdisk_is_present): Don't do stat on
platforms on which it doesn't work.
2013-09-24 18:58:33 +02:00
Vladimir 'phcoder' Serbinenko
5177ba1400 * util/getroot.c (grub_util_check_block_device): Move to ...
* util/getroot_unix.c (grub_util_check_block_device): ... here.
	* util/getroot.c (grub_util_check_char_device): Move to ...
	* util/getroot_unix.c (grub_util_check_char_device): ... here.
2013-09-24 18:55:10 +02:00
Paulo Flabiano Smorigo
39cfdaa9a2 * util/grub-install.in: Add GPT PReP support.
* util/grub-probe.c (probe): Support GPT partition type.
        (main): Support -t gpt_parttype.
2013-09-23 17:42:32 -03:00
Tim Hardeck
9c262ff966 * util/grub.d/10_hurd.in: Filter out character for the class.
* util/grub.d/10_kfreebsd.in: Likewise.
	* util/grub.d/10_linux.in: Likewise.
	* util/grub.d/20_linux_xen.in: Likewise.
2013-09-23 17:48:38 +02:00
Vladimir 'phcoder' Serbinenko
3f7d9c8280 * util/getroot.c (grub_util_biosdisk_get_grub_dev): Do not assume
that floppies are unpartitioned.
2013-09-23 12:19:49 +02:00
Vladimir 'phcoder' Serbinenko
bca8873a0c * util/getroot_unix.c [__MINGW32__ || __CYGWIN__]:
Define dummy grub_util_pull_lvm_by_command to decrease number of #if's.
2013-09-23 12:06:00 +02:00
Vladimir 'phcoder' Serbinenko
7e518ca84f Use Winapi on both cygwin and mingw32 to share more code between both. 2013-09-23 11:21:09 +02:00
Andrey Borzenkov
d68d01573b * util/grub-install.in: Add --grub-editenv option.
* util/grub-install_header (grub_compress_file): Explicitly check for
	plain file to avoid cp error.
2013-09-22 21:47:52 +04:00
Andrey Borzenkov
775b284dd6 * docs/grub.texi (Device syntax): Document new LVM UUID based device
names; fix LVM driver name (lvm, not lv).
	* util/grub-probe.c (probe_abstraction): Support lvmid/xxx device
	names.
2013-09-22 21:35:13 +04:00
Vladimir 'phcoder' Serbinenko
3ff4063dd3 * grub-core/kern/emu/hostdisk.c: Disentagle into a series of OS-specific
files rather than one file with loads of #if's.
	* util/getroot.c: Likewise.
2013-09-22 07:36:17 +02:00
Vladimir 'phcoder' Serbinenko
d1983764f4 * util/grub-mkpasswd-pbkdf2.c (grub_get_random): Add windows and
GNU/Hurd to the list of checked PRNG.
2013-09-22 03:28:32 +02:00
Vladimir 'phcoder' Serbinenko
63653cfdae * grub-core/disk/diskfilter.c: Handle non-md UUIDs.
* grub-core/disk/lvm.c: Add LVM UUIDs.
	* util/getroot.c: Use LVM UUIDs whenever possible.
2013-09-20 20:37:03 +02:00
Vladimir 'phcoder' Serbinenko
53c6b7d658 * util/getroot.c (grub_util_open_dm): Check major rather than the name
to determine if device is handled by devmapper.
	(convert_system_partition_to_system_disk): Likewise.
	(get_dm_uuid): Don't check explicitly if device is mapped, it's
	already done in grub_util_open_dm.
2013-09-19 09:46:06 +02:00
Vladimir 'phcoder' Serbinenko
90379808b6 * util/lvm.c: Remove since unused. Remove remaining references. 2013-09-19 09:05:56 +02:00
Vladimir 'phcoder' Serbinenko
386701a8fe Handle the case of partitioned LVM properly.
* grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info):
	Stop on meeting LVM, mpath or DMRAID.
	(grub_hostdisk_os_dev_to_grub_drive): Canonicalize os device.
	(read_device_map): Likewise.
	* util/getroot.c (convert_system_partition_to_system_disk): Assume that
	device is full disk rather than erroring out on LVM and similar cases.
2013-09-19 08:48:54 +02:00
Vladimir 'phcoder' Serbinenko
5307078763 * util/grub-mkconfig_lib.in: Keep supplied pkgdatadir if any. 2013-09-18 20:26:16 +02:00
Douglas Ray
d404d15450 * util/grub-mkpasswd-pbkdf2.c (grub_get_random): Declare OpenBSD PRNG
as secure.
2013-09-18 13:44:00 +02:00
Vladimir 'phcoder' Serbinenko
f163045985 * util/grub-fstest.c: Fix several printf formats.
* util/grub-mkimage.c: Likewise.
	* util/grub-mkimagexx.c: Likewise.
	* util/grub-script-check.c: Likewise.
2013-08-23 09:01:11 +02:00
Vladimir 'phcoder' Serbinenko
5dd5e64b71 * util/getroot.c (grub_find_device): Use cygwin_conv_path ratherthan
removed in current versions cygwin_conv_*.
2013-08-23 08:51:21 +02:00
Vladimir 'phcoder' Serbinenko
8169047804 * util/grub-mkpasswd-pbkdf2.c (grub_password_get): Remove extraneous
error message.
2013-08-22 20:18:16 +02:00
Vladimir 'phcoder' Serbinenko
6b87c10a0b * grub-core/lib/crypto.c (grub_password_get) [GRUB_UTIL]: Add
windows variant.
	* util/grub-mkpasswd-pbkdf2.c: Add windows flavour for retrieving random
	data.
2013-08-22 20:14:07 +02:00
Vladimir 'phcoder' Serbinenko
506b336b82 * util/grub-mkfont.c [!GRUB_BUILD]: Define my_argp_state.
[!GRUB_BUILD]: Remove has_argument.
2013-08-22 18:15:22 +02:00
Vladimir 'phcoder' Serbinenko
8c8c87b7d4 * util/ieee1275/ofpath.c (grub_util_devname_to_ofpath) [_WIN32]:
Replace with a dummy.
2013-08-22 17:29:23 +02:00
Vladimir 'phcoder' Serbinenko
7b780018f5 Handle grub-pe2elf and grub-mkfont for cases when build != host.
* Makefile.am (build-grub-mkfont): Don't include gnulib.
	(build-grub-gen-asciih): Likewise.
	(build-grub-gen-widthspec): Likewise.
	* Makefile.util.def (grub-pe2elf): Remove.
	* config.h.in [GRUB_BUILD]: Use build rather than host constants.
	* configure.ac: Separate tests for build.
	Move ./build-grub-pe2elf to grub-core.
	Fix typo.
	* grub-core/Makefile.am (build-grub-pe2elf): New target.
	* grub-core/kern/emu/misc.c (xasprintf): Don't compile if GRUB_BUILD is
	defined.
	* include/grub/types.h [GRUB_BUILD]: Use build rather than host
	constants.
	* util/grub-mkfont.c [GRUB_BUILD]: Simplify not to rely on argp.
	* util/grub-pe2elf.c: Simplify not to rely on getopt.
	* util/misc.c (program_name) [GRUB_BUILD]: Define to static string.
2013-08-22 17:00:59 +02:00
Vladimir 'phcoder' Serbinenko
984cfd8a79 * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_size): Adapt for
mingw32 as well based on grub_util_get_disk_size.
	* util/misc.c (grub_util_get_disk_size): Removed. all users switched to
	grub_util_get_fd_size.
	(sync): Removed.
	(fsync): Moved to ...
	* grub-core/kern/emu/misc.c (fsync): ... here.
2013-08-22 16:50:12 +02:00
Vladimir 'phcoder' Serbinenko
43ffba7c65 * util/getroot.c: Include sys/wait.h only when we need waitpid. 2013-08-22 16:28:10 +02:00
Vladimir 'phcoder' Serbinenko
fc46e9fca8 * util/grub-fstest.c: Don't check for symlinks on windows. 2013-08-22 16:13:25 +02:00
Ilya Bakulin
0031b22993 * grub-core/kern/emu/hostdisk.c: Add conditionals for OpenBSD.
* util/getroot.c: Likewise.
2013-08-21 21:05:01 +02:00
Vladimir 'phcoder' Serbinenko
1d679ddaa2 * util/import_gcry.py: Add final newline in visibility.h. 2013-08-21 21:00:15 +02:00
Vladimir 'phcoder' Serbinenko
e733cf52f4 * Makefile.am (widthspec.h): Fix typo.
* util/grub-gen-widthspec.c: Likewise.
2013-08-21 20:26:26 +02:00
Vladimir 'phcoder' Serbinenko
c6b066f2e9 Move ascii.h and widthspec.h generation to a separate build-time-only
tool.
2013-08-21 19:53:59 +02:00
Andrey Borzenkov
5e7d94641b * util/getroot.c (grub_util_is_imsm): Fix descriptor and
memory leak.
2013-08-14 20:47:09 +04:00
Andrey Borzenkov
dea55e2a95 * util/getroot.c (pull_lvm_by_command): add --separator option
to vgs call to disable padding of output to 10 characters.
2013-08-14 20:40:39 +04:00
Vladimir 'phcoder' Serbinenko
7c9d0c39af Fix handling of build-time grub-bin2h and grub-mkfont when doing
full Canadian cross. Tested with build=x86_64, host=arm,
	target=ppc-ieee1275.
2013-08-14 10:56:55 +02:00
Colin Watson
36e87d25e1 * util/getroot.c (grub_util_biosdisk_get_grub_dev): Zero out
grub_errno in the case where we handle GRUB_ERR_UNKNOWN_DEVICE by
falling back to the partition device, otherwise a later call to this
function may fail spuriously.
Reported by Axel Beckert.  Fixes Debian bug #708614.
2013-08-13 17:48:56 +02:00
Colin Watson
c137aea04b * util/grub-mkconfig.in: Fix detection of Emacs autosave files. 2013-08-11 16:03:48 +02:00
Vladimir 'phcoder' Serbinenko
ae27e4d323 Merge mainline into arm 2013-07-16 18:43:43 +02:00
Andrey Borzenkov
f5ae3717e4 * util/grub-mknetdir.in: Remove stray line from help output. 2013-07-13 18:44:27 +04:00
Vladimir 'phcoder' Serbinenko
9c28da2a89 Remove early sm712 init as there is no reason for it (the "watchdog"
effect was due to wrong GPIO map).
2013-07-11 16:24:35 +02:00
Vladimir 'phcoder' Serbinenko
6f80a7b231 * util/grub-mkfont.c (write_font_ascii_bitmap): Fix handling of glyphs
not filling whole 8x16 space.
2013-07-11 13:50:18 +02:00
Paul Wise
eb272d84a4 * util/grub-reboot.in: Document submenu usage.
Also-By: Craig Sanders <savannah@taz.net.au>
2013-07-11 13:18:43 +02:00
Colin Watson
e639c204e0 * util/grub-script-check.c: Fail on scripts containing no
commands, to guard against corrupted grub-mkconfig setups that
produce no useful output.
* tests/grub_script_no_commands.in: New test.
* Makefile.util.def (grub_script_no_commands): Add.
Reported by Hans Putter.  Fixes Debian bug #713886.
2013-06-25 15:08:11 +01:00
Andrey Borzenkov
f25870887b * util/grub.d/30_os-prober.in: Add support for probing EFI
System Partition (as of os-prober 1.58).
2013-05-31 20:29:03 +04:00
Vladimir 'phcoder' Serbinenko
fc4c4fddf6 Detach optional parts of gfxterm and integrate in with coreboot init. 2013-05-31 00:42:33 +02:00
Vladimir 'phcoder' Serbinenko
2a800dc3f3 Remove libfdt 2013-05-17 13:58:47 +02:00
Vladimir 'phcoder' Serbinenko
50268344c0 * util/grub-install.in: Gettextize "Not found" message. 2013-05-11 15:54:22 +02:00
Vladimir 'phcoder' Serbinenko
62b15edfd1 Fix distfiles list.
Reported by: Andrey Borzenkov <arvidjaar@gmail.com>
2013-05-11 15:48:08 +02:00
Leif Lindholm
854f383c28 Move common function to dl_helper.c 2013-05-11 10:42:11 +02:00
Vladimir 'phcoder' Serbinenko
8e71d87482 merge mainline into arm 2013-05-11 10:24:24 +02:00
Vladimir 'phcoder' Serbinenko
30b03dc22e * util/grub-install.in: Handle efibootmgr presence check.
Reported by: Leif Lindholm.
2013-05-10 16:58:25 +02:00
Vladimir 'phcoder' Serbinenko
f8024c3f9a * util/grub-mkrescue.in: Replace STR' with STRING' to avoid adding
yet another string (pun intended) to translate.
2013-05-10 16:23:47 +02:00
Vladimir 'phcoder' Serbinenko
3e912fda81 * conf/Makefile.common: Poison float and double on non-emu. 2013-05-08 11:05:37 +02:00
Vladimir 'phcoder' Serbinenko
d22840ec12 Mark few forgotten strings for translation. 2013-05-07 11:41:47 +02:00