Commit graph

2747 commits

Author SHA1 Message Date
Andrey Borzenkov
e7d09ac4f7 enable emuusb and emupci on emu platform only
Also explicitly disable them in configure unless built for emu platform.

Signed-off-by: Andrey Borzenkov <arvidjaar@gmail.com>
2013-11-04 16:53:39 +04:00
Peter Lustig
9b5d4eed31 * grub-core/commands/i386/nthibr.c: New command. 2013-11-04 01:47:37 +01:00
Vladimir Serbinenko
79054c1d1e * grub-core/tests/video_checksum.c: Add 2560x1440 mode to testing. 2013-11-04 00:40:14 +01:00
Vladimir Serbinenko
1106c3f072 * grub-core/commands/verify.c: Add RSA support. 2013-11-03 18:50:01 +01:00
Vladimir Serbinenko
bed78ef4e6 Revert "Attempts at ZFS options"
It was accidently committed to wrong branch

This reverts commit 0ee5cdfe9f.
2013-11-03 16:52:33 +01:00
Vladimir Serbinenko
0ee5cdfe9f Attempts at ZFS options 2013-11-03 16:40:32 +01:00
Vladimir Serbinenko
a1dcc2cb98 * grub-core/disk/ahci.c (grub_ahci_pciinit): Detect ATAPI devices.
* grub-core/disk/ata.c (grub_ata_identify): Use atapi_identify if
	device is known to be ATAPI.
2013-11-03 13:52:36 +01:00
Vladimir Serbinenko
5ade4a4248 * grub-core/commands/loadenv.c (grub_cmd_save_env): Remove unset
variables.
2013-11-03 06:17:31 +01:00
Vladimir Serbinenko
6cd660435e * grub-core/gettext/gettext.c (grub_gettext_init_ext): Ignore errors
if language is English.
2013-11-03 05:42:02 +01:00
Vladimir Serbinenko
090d7c81cf * grub-core/osdep/linux/getroot.c: Fix cast-align problems. 2013-11-03 00:43:49 +01:00
neil
a86865891a * grub-core/osdep/linux/blocklist.c: Include linux/types.h for some
broken linux headers.
2013-11-02 22:19:34 +01:00
Vladimir Serbinenko
e25f8e1f37 * grub-core/lib/reed_solomon.c (grub_reed_solomon_recover): Don't do
Reed-Solomon recovery if more than half of redundancy info is 0.
2013-11-02 21:28:03 +01:00
Vladimir Serbinenko
1397f0b520 * grub-core/fs/fshelp.c (find_file): Save ctx->next when calling
find_file recursively for symlink.
2013-11-02 20:29:02 +01:00
Vladimir Serbinenko
e7b66a28de * grub-core/loader/sparc64/ieee1275/linux.c (get_physbase): Fix
signature.
2013-11-02 18:57:35 +01:00
Vladimir Serbinenko
203f53fbbe * grub-core/disk/efi/efidisk.c (grub_efidisk_readwrite): Remove unused
variable.
2013-11-02 18:50:39 +01:00
Vladimir Serbinenko
f169f65e75 * grub-core/fs/hfspluscomp.c (hfsplus_read_compressed_real): Call
file_progress_read_hook.
	* grub-core/fs/ntfscomp.c (hfsplus_read_compressed_real): Likewise.
2013-11-02 16:30:53 +01:00
Vladimir Serbinenko
bf0f3a8c3e * grub-core/fs/tar.c (grub_cpio_read): Add read_hook. 2013-11-01 23:33:59 +01:00
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
896f913571 * grub-core/term/serial.c (options), (grub_cmd_serial): Fix handling
of SI suffixes.
2013-11-01 19:46:30 +01:00
Vladimir Serbinenko
89295a0628 Support --base-clock for serial command to handle weird cards with
non-standard base clock.
2013-11-01 19:33:22 +01:00
Vladimir Serbinenko
eb03ede014 * grub-core/fs/ext2.c (grub_ext2_read_symlink): Use memcpy rather
strncpy.
	* grub-core/fs/jfs.c (grub_jfs_lookup_symlink): Likewise.
	* grub-core/kern/misc.c (grub_strncpy): Move from here ...
	* include/grub/misc.h (grub_strncpy): ... to here. Make inline.
	* grub-core/net/net.c (grub_net_addr_to_str): Use COMPILE_TIME_ASSERT
	+ strcpy rather than strncpy.
2013-11-01 18:44:46 +01:00
Vladimir Serbinenko
8fbe5c7df7 * grub-core/fs/zfs/zfs.c (nvpair_name): Use correct type for size.
(check_pool_label): Likewise. Fixes overflow.
	(nvlist_find_value): Fix comparison.
2013-11-01 18:41:52 +01:00
Vladimir Serbinenko
e54b8f536b * include/grub/misc.h (grub_strcat): Removed. All users changed to
more appropriate functions.
2013-11-01 16:27:37 +01:00
Vladimir Serbinenko
fa9b3dcae2 * grub-core/kern/efi/efi.c (grub_efi_get_filename): Avoid inefficient
realloc.
2013-11-01 16:06:51 +01:00
Vladimir Serbinenko
80e8b13ac4 * grub-core/kern/dl.c: Unify section-finding algorithm. Saves 30 bytes
on core size.
2013-11-01 15:20:14 +01:00
Vladimir Serbinenko
b61599aca4 * grub-core/kern/mm.c (grub_realloc): Don't copy more data than we have. 2013-11-01 14:39:33 +01:00
Vladimir Serbinenko
a602dc5425 * grub-core/io/gzio.c (huft_build): Use zalloc for safety.
(initialize_tables): reset tl and td to NULL after freeing.
2013-10-30 11:58:00 +01:00
Vladimir Serbinenko
93c120754a * grub-core/loader/multiboot_mbi2.c: Implement network tag. 2013-10-28 15:53:39 +01:00
Vladimir Serbinenko
1ca4b75ec2 * grub-core/loader/multiboot_mbi2.c: Add EFI memory map to the list
of supported tags.
2013-10-28 15:40:34 +01:00
Vladimir Serbinenko
329550c4a9 * grub-core/loader/multiboot_mbi2.c: Implement EFI memory map. 2013-10-28 15:37:00 +01:00
Vladimir Serbinenko
00bfa988fc * grub-core/loader/multiboot.c: Add support for multiboot kernels
quirks.
2013-10-28 15:23:46 +01:00
Vladimir Serbinenko
81afc5cce6 * grub-core/loader/i386/linux.c (allocate_pages): Allocate at least
a page in protected space.
2013-10-28 14:30:29 +01:00
Vladimir Serbinenko
cb3c4a4722 * grub-core/loader/multiboot.c (grub_cmd_module): Don't attempt to
allocate space for zero-sized modules.
2013-10-28 14:27:19 +01:00
Vladimir Serbinenko
954f7bf5ec * grub-core/loader/xnu_resume.c (grub_xnu_resume): Reject empty images. 2013-10-28 14:25:22 +01:00
Francesco Lavra
526d3d25e2 * grub-core/lib/fdt.c: Fix miscellaneous bugs. 2013-10-28 13:52:32 +01:00
Vladimir Serbinenko
74124c344c * grub-core/lib/progress.c (grub_file_progress_hook_real): Add missing
safeguards. Fixes a crash with i386/pc/console.c.
2013-10-28 13:37:40 +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
64db14b0cb * grub-core/kern/emu/hostdisk.c (grub_util_check_file_presence): Use
windows method on other platforms without good stat as well.
2013-10-28 02:17:56 +01:00
Vladimir Serbinenko
effe203677 * grub-core/osdep/linux/getroot.c: Add new btrfs defines. 2013-10-28 01:45:06 +01:00
Vladimir Serbinenko
82591fa6e7 Make / in btrfs refer to real root, not the default volume.
Modify mkrelpath to work even if device is mounted with subvolid option.
2013-10-28 01:37:19 +01:00
Andrey Borzenkov
e11cb7268e Add grub-core/kern/disk_common.c to extra_dist 2013-10-27 22:55:11 +04:00
Vladimir Serbinenko
c430e00b80 * grub-core/net/tftp.c: Retransmit ack when rereceiving old packet.
Try to handle more than 0xFFFF packets.
	Reported by: Bernhard Übelacker <bernhardu>.
	He also spotted few overflows in first version of this patch.
2013-10-27 19:15:57 +01:00
Vladimir Serbinenko
cf8d6bbd9e * grub-core/net/tftp.c: Retransmit ack when rereceiving old packet.
Try to handle more than 0xFFFF packets.
2013-10-27 19:15:37 +01:00
Vladimir Serbinenko
8b46b0ea36 * grub-core/loader/i386/bsd.c (grub_cmd_openbsd): Accept "sd", "cd",
"vnd", "rd" and "fd" disks.
2013-10-27 18:59:27 +01:00
Vladimir Serbinenko
442b86de32 Move grub_disk_write out of kernel into disk.mod. 2013-10-27 15:44:55 +01:00
Vladimir Serbinenko
04dea7e6c2 * grub-core/kern/misc.c (grub_vsnprintf_real): Unify int and wchar
handling.
2013-10-27 14:47:04 +01:00
Vladimir Serbinenko
a8f15bceea * grub-core/kern/misc.c (grub_abort): Make static 2013-10-27 14:13:39 +01:00
Vladimir Serbinenko
a60dae7e4e * grub-core/kern/misc.c (grub_vsnprintf_real): Don't attempt to
transform invalid unicode codepoints.
2013-10-27 13:34:46 +01:00
Vladimir Serbinenko
891b713be3 * grub-core/kern/misc.c (grub_vsnprintf_real): Remove needless explicit
\0 checking.
2013-10-27 13:20:50 +01:00
Vladimir Serbinenko
03dcac7f76 * grub-core/lib/legacy_parse.c: Add support for "nd" disk. 2013-10-27 02:50:31 +02:00
Vladimir Serbinenko
c81acb7ff3 Consolidate cpuid code. 2013-10-27 00:02:01 +02:00
Vladimir Serbinenko
c1bee64676 Move cpuid code to cpuid.h and TSC code to tsc.c. 2013-10-26 23:39:10 +02:00
Vladimir Serbinenko
2a8a75855c * grub-core/fs/iso9660.c: Replace strncat with memcpy.
* include/grub/misc.h: Remove strncat.
	* grub-core/lib/posix_wrap/string.h: Likewise.
2013-10-26 12:49:51 +02:00
Vladimir Serbinenko
10bafa1c38 * grub-core/normal/datetime.c (grub_unixtime2datetime): Fix mishandling
of first three years after start of validity of unixtime.
2013-10-26 02:47:40 +02:00
Vladimir Serbinenko
b1c6d03760 * grub-core/normal/menu_entry.c (get_logical_num_lines): Use unsigned
division as the one making more sense.
	(update_screen): Likewise.
	(complete): Likewise.
2013-10-26 01:01:06 +02:00
Vladimir Serbinenko
5f4028d4a5 * grub-core/normal/menu_entry.c (complete): Make sure that width is >0. 2013-10-26 00:07:59 +02:00
Vladimir Serbinenko
a28567364a Make char and string width grub_size_t rather than grub_ssize_t. 2013-10-25 23:58:24 +02:00
Vladimir Serbinenko
0a7e52b2ed * grub-core/normal/cmdline.c (grub_history_get): Make argument into
unsigned.
	(grub_history_replace): Likewise.
2013-10-25 22:58:19 +02:00
Vladimir Serbinenko
428295739e * grub-core/disk/raid6_recover.c: Use unsigned arithmetics when
appropriate.
2013-10-25 22:51:03 +02:00
Vladimir Serbinenko
3523b8d8a7 * grub-core/video/bitmap_scale.c: Use unsigned arithmetics when
appropriate.
2013-10-25 21:39:00 +02:00
Vladimir Serbinenko
d43c64899d * grub-core/video/fb/fbblit.c: Use (255 ^ x) rather than (255 - x).
Use unsigned divisions rather than signed variants.
2013-10-25 21:35:44 +02:00
Vladimir Serbinenko
f690f8b030 * grub-core/video/readers/png.c (grub_png_convert_image): Use
unsigned arithmetics.
	Add missing break.
2013-10-25 20:36:39 +02:00
Vladimir Serbinenko
74ff2c0501 * grub-core/video/readers/jpeg.c: Use unsigned where appropriate. 2013-10-25 20:35:02 +02:00
Vladimir Serbinenko
fb56391ee3 * grub-core/fs/zfs/zfs.c (xor_out): Use unsigned modular arithmetics
rather than signed one.
	(recovery): Likewise.
2013-10-25 20:31:04 +02:00
Vladimir Serbinenko
40f290606d * grub-core/net/dns.c (hash): Use unsigned arithmetic. 2013-10-25 20:26:27 +02:00
Vladimir Serbinenko
c64577a554 * grub-core/io/gzio.c (test_zlib_header): Use undigned modulo rather
than signed.
2013-10-25 20:18:30 +02:00
Vladimir Serbinenko
6673d8e7b6 * grub-core/fs/ext2.c (EXT2_BLOCK_SIZE): Make unsigned. 2013-10-25 18:03:36 +02:00
Vladimir Serbinenko
a105d3755b * grub-core/commands/gptsync.c (lba_to_chs): Use proper types rather
than int.
2013-10-25 18:02:40 +02:00
Vladimir Serbinenko
af81ed880d * conf/Makefile.common (CPPFLAGS_KERNEL): Add -DGRUB_KERNEL=1.
* include/grub/dl.h (GRUB_MOD_INIT), (GRUB_MOD_FINI): Define
	functions when compiling for kernel.
2013-10-25 16:07:01 +02:00
Vladimir Serbinenko
ea899a5760 * grub-core/lib/progress.c (grub_file_progress_hook_real): Cast to
unsigned long long when using %llu.
2013-10-25 15:22:30 +02:00
Vladimir Serbinenko
c6dc6fa175 * grub-core/lib/progress.c (grub_file_progress_hook_real): Refresh
terminal after updating progress.
2013-10-25 11:57:36 +02:00
Vladimir Serbinenko
ad2dc00309 * grub-core/boot/i386/pc/startup_raw.S (grub_gate_a20): Remove
argument. We don't disable Gate A20 in this code.
2013-10-25 11:03:39 +02:00
Vladimir Serbinenko
b46684ae53 * grub-core/boot/i386/qemu/boot.S: Ensure that A20 is enabled.
Conceptually based on change in branch "vbe-on-coreboot".
2013-10-25 10:51:58 +02:00
Robert Millan
f70d5c0701 * grub-core/video/i386/pc/vbe.c (grub_video_vbe_setup): Replace
numeric constants with their symbolic equivalent.
	Taken from branch "vbe-on-coreboot".
2013-10-24 08:53:04 +02:00
Vladimir Serbinenko
238f048987 * grub-core/lib/progress.c (grub_file_progress_hook_real): Use
divmod64 for offset division.
2013-10-23 17:34:49 +02:00
Paulo Flabiano Smorigo
84a0e9699f Add progress module to display load progress of files.
* grub-core/lib/progress.c: New file.
	* grub-core/Makefile.core.def (progress): New module.
	* grub-core/kern/file.c (grub_file_open): File name added.
	* (grub_file_read): Progress hook added.
	* grub-core/fs/cbfs.c (grub_cbfs_read): Likewise.
	* grub-core/fs/cpio_common.c (grub_cpio_read): Likewise.
	* grub-core/net/net.c (grub_net_fs_read_real): Likewise.
	* include/grub/file.h (struct grub_file): Add progress module
	* members.
	* include/grub/term.h (struct grub_term_output): Likewise.
	* grub-core/osdep/unix/emuconsole.c (grub_console_term_output):
	Terminal velocity added.
	* grub-core/osdep/windows/emuconsole.c (grub_console_term_output):
	* Likewise.
	* grub-core/term/arc/console.c (grub_console_term_output): Likewise.
	* grub-core/term/efi/console.c (grub_console_term_output): Likewise.
	* grub-core/term/gfxterm.c (grub_video_term): Likewise.
	* grub-core/term/i386/coreboot/cbmemc.c (grub_cbmemc_term_output):
	* Likewise.
	* grub-core/term/i386/pc/console.c (grub_console_term_output):
	* Likewise.
	* grub-core/term/i386/pc/vga_text.c (grub_vga_text_term): Likewise.
	* grub-core/term/ieee1275/console.c (grub_console_term_output):
	* Likewise.
	* grub-core/term/morse.c (grub_audio_term_output): Likewise.
	* grub-core/term/serial.c (grub_serial_term_output): Likewise.
	* grub-core/term/spkmodem.c (grub_spkmodem_term_output): Likewise.
	* grub-core/term/uboot/console.c (uboot_console_term_output):
	* Likewise.
2013-10-22 16:42:20 -02:00
Vladimir 'phcoder' Serbinenko
0d711431c7 Verify signatures of signatures unless --skip-sig is specified. 2013-10-22 00:24:19 +02:00
Vladimir 'phcoder' Serbinenko
f8401f760c * grub-core/kern/misc.c (grub_vsnprintf_real): Remove needless explicit
\0 checking.

	Saves 70 bytes on compressed image.
2013-10-21 14:02:24 +02:00
Vladimir 'phcoder' Serbinenko
ac1feb61d2 * grub-core/kern/misc.c (grub_strtoull): Remove needless *ptr != 0
check.

	Saves 10 bytes on compressed image.
2013-10-21 13:40:05 +02:00
Vladimir 'phcoder' Serbinenko
00f72e890b * grub-core/kern/misc.c (grub_isprint): Move to ...
* include/grub/misc.h (grub_isprint): ... here. Make inline.

	Saves 20 bytes on compressed image due to remving exporting.
2013-10-21 13:25:56 +02:00
Vladimir 'phcoder' Serbinenko
067e6ae74d * grub-core/fs/ntfs.c (grub_ntfs_mount): Remove redundant check.
Saves 5 bytes on compressed image.
2013-10-21 13:14:38 +02:00
Vladimir 'phcoder' Serbinenko
64a6c791e1 * grub-core/fs/ntfs.c: Move common UTF-16 handling to a separate
function get_utf8.

	Saves 379 bytes on compressed image.
2013-10-21 13:04:41 +02:00
Vladimir 'phcoder' Serbinenko
979d9f521d * grub-core/fs/ntfs.c: Handle 48-bit MFT no. 2013-10-21 12:58:38 +02:00
Vladimir 'phcoder' Serbinenko
1437da5440 * grub-core/fs/ntfs.c (read_run_data): Rewrite using bitfields.
Saves 40 bytes on compressed image.
2013-10-21 04:05:23 +02:00
Vladimir 'phcoder' Serbinenko
d9ee2269c8 * grub-core/fs/ntfs.c (grub_ntfs_iterate_dir): Use grub_uint8_t for
mask rather than 64-bit type.

	Saves 20 bytes on compressed image.
2013-10-21 03:23:57 +02:00
Vladimir 'phcoder' Serbinenko
63efa602ff * grub-core/fs/ntfs.c (read_data): Move code for compressed data to ...
* grub-core/fs/ntfscomp.c (ntfscomp): ... here.
2013-10-21 02:48:19 +02:00
Vladimir 'phcoder' Serbinenko
2cc679adae * grub-core/kern/disk.c (grub_disk_write): Use malloc/free instead of
variable length arrays.

	Saves 50 bytes on compressed image.
2013-10-21 00:10:34 +02:00
Vladimir 'phcoder' Serbinenko
2e4659b810 * grub-core/loader/i386/bsd.c: Remove variable length arrays. 2013-10-20 23:45:43 +02:00
Vladimir 'phcoder' Serbinenko
2a40badf82 * grub-core/fs/ufs.c: Remove variable length arrays. 2013-10-20 23:07:50 +02:00
Vladimir 'phcoder' Serbinenko
1ba6b9b96f * grub-core/fs/ntfs.c: Add comment about fixed allocation size. 2013-10-20 18:48:06 +02:00
Vladimir 'phcoder' Serbinenko
f3e393411b * grub-core/fs/zfs.c: Remove variable length arrays.
Reduces zfs.mod by 160 bytes (208 compressed).
2013-10-20 18:42:40 +02:00
Vladimir 'phcoder' Serbinenko
7152393503 * grub-core/fs/zfs/zfs.c (check_pool_label): Fix memory leak. 2013-10-20 17:57:28 +02:00
Vladimir 'phcoder' Serbinenko
28153eb87a * grub-core/net/arp.c: Remove variable length arrays.
* grub-core/net/bootp.c: Likewise.
	* grub-core/net/dns.c: Likewise.
	* grub-core/net/icmp6.c: Likewise.
	* grub-core/net/net.c: Likewise.
2013-10-20 17:40:21 +02:00
Vladimir 'phcoder' Serbinenko
88ce4cd7f6 * grub-core/fs/ntfs.c: Remove variable length arrays.
Increases ntfs.mod by 64 bytes (but decreases by 3 when
	compressed).
2013-10-20 17:35:17 +02:00
Vladimir 'phcoder' Serbinenko
66123940c7 * grub-core/fs/hfs.c: Remove variable length arrays.
Reduces hfs.mod by 8 bytes (52 compressed).
2013-10-20 17:24:19 +02:00
Vladimir 'phcoder' Serbinenko
0927e5bdc8 * grub-core/fs/udf.c: Remove variable length arrays.
Increases udf.mod by 128 bytes (but decreases by 13 compressed when
	compressed).
2013-10-20 16:33:12 +02:00
Vladimir 'phcoder' Serbinenko
9c12ac9773 * grub-core/fs/iso9660.c: Remove variable length arrays.
Increases iso9660.mod by 200 bytes (but decreases by 79 compressed when
	compressed).
2013-10-20 16:21:02 +02:00
Vladimir 'phcoder' Serbinenko
97ec2d71d0 * grub-core/fs/nilfs2.c: Remove variable length arrays.
Increases xfs.mod by 24 bytes (but decreases by 115 compressed when
	compressed).
2013-10-20 16:17:41 +02:00
Vladimir 'phcoder' Serbinenko
156e4ea071 * grub-core/fs/xfs.c: Remove variable length arrays.
Reduces xfs.mod by 40 bytes (43 compressed).
2013-10-20 15:52:27 +02:00
Vladimir 'phcoder' Serbinenko
3b502c29a1 * grub-core/fs/fshelp.c: Remove variable length arrays.
Reduces fshelp.mod by 116 bytes (23 compressed).
2013-10-20 15:38:37 +02:00