Vladimir Serbinenko
94f701a826
crypto: restrict cipher block size to power of 2.
...
All current ciphers have blocks which are power of 2 and it's
unlikely to change. Other block length would be tricky to handle anyway.
This restriction allows avoiding extra divisions.
2015-02-26 22:04:40 +01:00
Vladimir Serbinenko
80310ad07d
Add missing lib/division.c
2015-02-26 18:22:40 +01:00
Vladimir Serbinenko
6a4ecd276e
mips: Fix soft-float handling.
...
Add -msoft-float alongside clang arguments to specify ABI.
Specify ABI in asm files explicitly.
This trigers asm warning due to gcc failing to propagate -msoft-float
but it's tolerable.
2015-02-23 22:33:28 +01:00
Vladimir Serbinenko
e29af836d0
Don't remove initrd= parameter.
...
Based on simplified patch by Lunar.
Reported by: Lunar
2015-02-16 15:56:26 +01:00
Vladimir Serbinenko
b23635fcff
syslinux_parse: Always output comments even if no entries are found.
2015-02-16 10:54:20 +01:00
Andrei Borzenkov
2efab86d5a
syslinux_parse: fix memory leak.
...
Found by: Coverity scan.
2015-01-28 20:09:25 +03:00
Vladimir Serbinenko
9ee5ae1fae
Document intentional fallthroughs.
...
Found by: Coverity scan.
2015-01-27 17:17:58 +01:00
Vladimir Serbinenko
49978c5c4f
lib/syslinux_parse: Add missing error check.
...
Found by: Coverity scan.
2015-01-26 09:42:04 +01:00
Vladimir Serbinenko
ca7c1fd6f3
lib/syslinux_parse: Fix memory leak.
...
Found by: Coveriy scan.
2015-01-26 09:41:43 +01:00
Vladimir Serbinenko
aa64393144
lib/syslinux_parse: Add missing alloc check.
...
Found by: Coverity scan.
2015-01-26 09:40:42 +01:00
Vladimir Serbinenko
065ed900d4
grub-core/lib/pbkdf2.c (grub_crypto_pbkdf2): Check that hash len is not 0.
2015-01-21 17:42:12 +01:00
Vladimir Serbinenko
59d4036594
Replace explicit sizeof divisions by ARRAY_SIZE.
2015-01-21 17:37:31 +01:00
Andrei Borzenkov
dbbac5a04c
grub-core/lib/syslinux_parse.c: do not free array
...
say->msg is inline array in a structure and should not be freed.
CID: 73610
2014-11-30 18:49:14 +03:00
Andrey Borzenkov
954fe77163
cleanup: grub_cpu_to_XXX_compile_time for constants
...
This tries to catch all cases where grub_cpu_to_XXX was used for constant
expressions (including sizeof).
2014-09-22 20:47:10 +04:00
Piotr Krysiuk
5a6db38d62
Allow loading old kernels by placing GDT in conventional memory.
2014-04-20 16:00:55 +02:00
Vladimir Serbinenko
a72fc329eb
* grub-core/lib/syslinux_parse.c: Fix timeout quoting.
2014-04-06 00:44:44 +02:00
Vladimir Serbinenko
8063ce197f
Replace few instances of memcmp/memcpy in the code that should be grub_memcmp/grub_memcpy.
2014-04-04 07:58:42 +02:00
Vladimir Serbinenko
46b74dd3cb
* grub-core/lib/relocator.c: Fix the case when end of leftover is used.
2014-03-26 08:48:30 +01:00
Vladimir Serbinenko
4127206896
Make rijndael.c respect aliasing rules.
...
Trivial backport of dfb4673da8ee52d95e0a62c9f49ca8599943f22e.
2013-12-24 16:57:28 +01:00
Leif Lindholm
c415eaa98f
fdt: additions required for arm64 Linux loader
...
- Add grub_fdt_create_empty_tree() function.
- Add 64-bit setprop.
2013-12-22 18:38:44 +00:00
Vladimir Serbinenko
0d8b81f89a
Fix ARM Linux Loader on non-FDT platforms.
2013-12-22 00:30:19 +01:00
Vladimir Serbinenko
ae558c2ccf
Enable -Wformat=2 if it's supported.
2013-12-21 15:28:28 +01:00
Vladimir Serbinenko
76a2a43011
* grub-core/lib/crypto.c: Don't discard const attribute.
2013-12-21 13:34:03 +01:00
Vladimir Serbinenko
0d26164edd
* grub-core/lib/disk.c: Fix potential overflow.
2013-12-21 13:32:39 +01:00
Vladimir Serbinenko
2622b1e8a8
* grub-core/lib/arg.c: Don't discard const attribute.
2013-12-21 13:28:52 +01:00
Vladimir Serbinenko
1962ed95cc
* grub-core/lib/syslinux_parse.c: Declare timeout unsigned.
2013-12-18 12:29:30 +01:00
Vladimir Serbinenko
a43b3e5d8e
Silence spurious warning.
2013-12-18 06:19:16 +01:00
Vladimir Serbinenko
8f5add13ff
Implement syslinux parser.
2013-12-18 05:28:05 +01:00
Vladimir Serbinenko
25a7863d77
Add Yeeloong 3A reboot and halt.
2013-12-17 22:53:18 +01:00
Vladimir Serbinenko
e14d409b6f
* grub-core/lib/arg.c: Ensure at least a single space between commands.
2013-12-17 14:42:02 +01:00
Vladimir Serbinenko
2c384f1e6e
* grub-core/lib/i386/xen/relocator.S: Fix hypercall ABI violation.
...
GRUB relied on %ebx being preserved across hypercall which isn't true.
2013-12-17 13:40:52 +01:00
Vladimir Serbinenko
d16ff5897f
* grub-core/lib/x86_64/xen/relocator.S: Fix hypercall ABI violation.
...
GRUB relied on %rdi being preserved across hypercall which isn't true.
2013-12-17 13:19:58 +01:00
Vladimir Serbinenko
d87cb3ae3c
* grub-core/lib/posix_wrap/errno.h: Undefine errno before redefining.
2013-12-16 14:36:48 +01:00
Leif Lindholm
3f1423e789
* grub-core/lib/fdt.c: change memcpy => grub_memcpy
2013-12-10 16:51:10 +00:00
Leif Lindholm
bbeee1c4a3
grub-core/lib/fdt.c: correctly update size_dt_struct in add_subnode()
2013-12-05 11:44:41 +00:00
Leif Lindholm
b29b77fee2
New port arm64-efi
2013-11-30 16:50:31 +01:00
Vladimir Serbinenko
35de6d4bac
* grub-core/lib/libgcrypt/mpi/longlong.h: Fix compilation error with
...
-march=armv3.
2013-11-30 11:19:06 +01:00
Vladimir Serbinenko
d6c92cdc34
Merge branch 'master' into leiflindholm/arm64
...
Conflicts:
include/grub/util/install.h
2013-11-25 13:02:27 +01:00
Vladimir Serbinenko
e77c81f6f8
* grub-core/lib/reed_solomon.c: Use section _text, _text rather than
...
.text when compiling for Apple.
2013-11-24 05:14:11 +01:00
Vladimir Serbinenko
a92b5cb8d8
* grub-core/lib/libgcrypt/mpi/longlong.h: Use C version with mips
...
clang.
2013-11-23 00:36:13 +01:00
Vladimir Serbinenko
7dd0a30361
* grub-core/lib/crypto.c (grub_crypto_hash): Remove variable length
...
array.
2013-11-20 20:09:18 +01:00
Vladimir Serbinenko
96fa2d9d02
Merge branch 'master' into leiflindholm/arm64
2013-11-18 17:51:28 +01:00
Vladimir Serbinenko
2df8f43d3e
* grub-core/lib/sparc64/setjmp.S: Force spilling of current window.
2013-11-18 10:01:36 +01:00
Vladimir Serbinenko
04f39f6df8
* grub-core/lib/relocator.c (grub_mm_check_real): Accept const char *
...
as file argument.
2013-11-18 02:45:25 +01:00
Vladimir Serbinenko
59c943ecf6
* grub-core/lib/powerpc/setjmp.S (grub_setjmp): Save r31.
...
(grub_longjmp): Restore r31.
* include/grub/powerpc/setjmp.h (grub_jmp_buf): Reserve space for r31.
2013-11-18 02:35:32 +01:00
Leif Lindholm
15a463d742
ARM 64 port by Leif Lindholm
2013-11-16 20:52:55 +01:00
Vladimir Serbinenko
9ef81064a3
* grub-core/kern/arm/cache.S: Don't switch back to ARM mode when
...
compiling to thumb2.
* grub-core/kern/arm/cache_armv7.S: Likewise.
* grub-core/lib/arm/setjmp.S: Likewise.
2013-11-16 17:37:06 +01:00
Vladimir Serbinenko
ef28ee8bc1
Add missing includes of loader.h.
2013-11-13 00:43:03 +01:00
Vladimir Serbinenko
4b85f1228a
* grub-core/lib/crypto.c (grub_crypto_cbc_decrypt): Remove variable
...
length arrays.
2013-11-12 02:49:17 +01:00
Vladimir Serbinenko
9c6482b8d6
* grub-core/lib/pbkdf2.c: Remove variable length arrays.
2013-11-12 01:52:55 +01:00
Vladimir Serbinenko
2def66169e
* grub-core/lib/xzembed/xz_dec_stream.c: Remove variable length arrays.
2013-11-12 01:26:56 +01:00
Vladimir Serbinenko
8445b0115f
* grub-core/lib/i386/relocator_common.S [__APPLE__ && __x86_64__]: Use
...
rip-relative addressing in prologue.
2013-11-11 23:02:51 +01:00
Vladimir Serbinenko
631187be8c
Add missing includes of loader.h.
2013-11-11 02:30:09 +01:00
Vladimir Serbinenko
3617c59bab
* include/grub/lib/LzmaDec.h: Fix to include LzmaTypes.h and
...
not Types.h.
* grub-core/lib/LzmaDec.c: Fix prologue to make it compileable in GRUB
environment.
(LzmaDec_InitDicAndState): Make static.
2013-11-10 20:37:01 +01:00
Vladimir Serbinenko
33690255c5
Fix grub_machine_fini bitrot.
...
Reported by: Glenn Washburn.
2013-11-10 13:33:26 +01:00
Vladimir Serbinenko
9612ebc00e
Add new ports: i386-xen and x86_64-xen. This allows running GRUB in
...
XEN PV environment and load kernels.
2013-11-09 21:29:11 +01:00
Vladimir Serbinenko
2df1255117
* grub-core/lib/cmdline.c (grub_loader_cmdline_size): Fix empty cmdline
...
handling.
2013-11-09 17:31:21 +01:00
Vladimir Serbinenko
2dc1eb6cbf
* grub-core/lib/libgcrypt/cipher/idea.c (mul_inv): Remove signed
...
divisions.
2013-11-08 18:10:07 +01:00
Vladimir Serbinenko
b9563c9451
* grub-core/lib/libgcrypt/mpi/mpih-div.c (_gcry_mpih_divrem):
...
Use grub_fatal rather than divide by zero.
* grub-core/lib/libgcrypt/mpi/mpi-pow.c (gcry_mpi_powm): Likewise.
2013-11-08 16:33:48 +01:00
Vladimir Serbinenko
e2a6810069
* grub-core/lib/reed_solomon.c (grub_reed_solomon_recover): Add
...
missing attribute.
* grub-core/gdb/cstub.c (grub_gdb_trap): Likewise.
2013-11-08 09:27:56 +01:00
Vladimir Serbinenko
dd07e0c4cf
* grub-core/kern/ieee1275/cmain.c: Add explicit attribute on asm
...
bindings.
* grub-core/lib/reed_solomon.c: Likewise.
* include/grub/i386/gdb.h: Likewise.
* include/grub/i386/pc/int.h: Likewise.
* include/grub/i386/pc/pxe.h: Likewise.
* include/grub/ieee1275/ieee1275.h: Likewise.
2013-11-07 10:30:32 +01:00
Vladimir Serbinenko
d1307d873a
Import libgcrypt 1.5.3.
2013-11-07 06:35:50 +01:00
Vladimir Serbinenko
40a5bfde36
* grub-core/lib/arg.c (grub_arg_parse): Remove nested function.
2013-11-07 02:46:23 +01:00
Vladimir Serbinenko
386571a24b
* grub-core/lib/legacy_parse.c: Fix handling of hercules and add
...
graphics console.
2013-11-05 02:43:27 +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
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
e54b8f536b
* include/grub/misc.h (grub_strcat): Removed. All users changed to
...
more appropriate functions.
2013-11-01 16:27:37 +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
442b86de32
Move grub_disk_write out of kernel into disk.mod.
2013-10-27 15:44:55 +01:00
Vladimir Serbinenko
a8f15bceea
* grub-core/kern/misc.c (grub_abort): Make static
2013-10-27 14:13:39 +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
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
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
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
d3923ab956
* grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Define size_t to
...
grub_size_t. This fixes the case when size_t mismatches grub_size_t.
2013-10-19 02:42:40 +02:00
Vladimir 'phcoder' Serbinenko
1e3e741940
* grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Use define for defining
...
memset rather than inline static function.
2013-10-18 17:18:15 +02:00
Vladimir 'phcoder' Serbinenko
92c88fc896
* grub-core/lib/xzembed/xz_config.h: Enable all bcj filters when
...
not doing embedded decompressor.
2013-10-18 17:13:38 +02:00
Vladimir 'phcoder' Serbinenko
4b4eeb3cc1
Allow compilation with mingw64 albeit with warnings due to lack of
...
%llx/%llu.
* grub-core/gnulib/msvc-inval.c: Use __cdecl rather than cdecl.
* grub-core/lib/posix_wrap/wchar.h: Define wint_t.
* grub-core/lib/posix_wrap/wctype.h: Define wctype_t.
* include/grub/osdep/hostfile_windows.h: Don't define fseeko/ftello
on mingw64.
* include/grub/types.h: Allow sizeof (long) != sizeof (void *).
2013-10-15 18:03:19 +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
4a445f580b
Move password-querying (util-version) routines to grub-core/osdep.
2013-10-08 17:51:39 +02:00
Vladimir 'phcoder' Serbinenko
b2cae20c11
* grub-core/lib/arm/setjmp.S: Add missing license section.
2013-10-03 19:50:08 +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
5dd8205424
* grub-core/lib/posix_wrap/sys/types.h: Use OpenBSD approach: it's
...
less nice but more portable.
* grub-core/lib/posix_wrap/wchar.h: Likewise.
2013-09-23 12:03:56 +02:00
Vladimir 'phcoder' Serbinenko
287faafe8d
* grub-core/lib/posix_wrap/sys/types.h: Use stddef on *BSD.
2013-09-22 03:29:51 +02:00
Vladimir 'phcoder' Serbinenko
64463dfde4
* grub-core/lib/xzembed/xz_dec_lzma2.c: Make -Wattributes not cause
...
error.
2013-08-23 08:58:34 +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
8ed358e0ee
* include/grub/crypto.h: Don't declare gcry_log_bug, gcry_log_printf
...
and gcry_log_bug.
* grub-core/lib/libgcrypt_wrap/mem.c: Include g10lib.h
2013-08-22 16:03:47 +02:00
Vladimir 'phcoder' Serbinenko
54ea2f4401
* grub-core/disk/ahci.c: Add needed explicit cast.
...
* grub-core/lib/backtrace.c: Likewise.
* grub-core/net/ip.c: Likewise.
* grub-core/net/tcp.c: Likewise.
* grub-core/net/udp.c: Likewise.
2013-08-21 21:02:14 +02:00
Vladimir 'phcoder' Serbinenko
3c601f8c81
* grub-core/lib/posix_wrap/wchar.h: Fix typo.
2013-08-21 21:01:11 +02:00
Vladimir 'phcoder' Serbinenko
d5c1eef106
* grub-core/lib/posix_wrap/wchar.h: Fix wchar_t and mbstate_t conflict
...
on NetBSD and OpenBSD.
2013-08-16 14:10:37 +02:00
Vladimir 'phcoder' Serbinenko
2a800dc3f3
Remove libfdt
2013-05-17 13:58:47 +02:00
Francesco Lavra
c6a8472baf
Own fdt parsing implementation
2013-05-17 13:45:22 +02:00
Vladimir 'phcoder' Serbinenko
141430a295
* grub-core/lib/dtc/libfdt-grub.diff: Remove extraneous uintptr_t
...
declaration.
2013-05-16 16:17:05 +02:00
Vladimir 'phcoder' Serbinenko
8e71d87482
merge mainline into arm
2013-05-11 10:24:24 +02:00
Vladimir 'phcoder' Serbinenko
fb2666b560
Simplify few strings.
2013-05-07 11:44:15 +02:00
Vladimir 'phcoder' Serbinenko
1eed0e6ebc
* tests/priority_queue_unit_test.cc: New test.
2013-05-07 11:30:48 +02:00
Leif Lindholm
b385e0723b
Leif's API fixes
2013-05-03 15:07:39 +02:00