grub/grub-core/kern
Vladimir Serbinenko a251b71915 LUKS and GELI support.
* Makefile.util.def (libgrubkern.a): Add grub-core/lib/crypto.c,
	grub-core/disk/luks.c, grub-core/disk/geli.c,
	grub-core/disk/cryptodisk.c, grub-core/disk/AFSplitter.c,
	grub-core/lib/pbkdf2.c, grub-core/commands/extcmd.c,
	grub-core/lib/arg.c.
	(libgrubmods.a): Remove gcrypts cflags and cppflags.
	Remove grub-core/commands/extcmd.c, grub-core/lib/arg.c,
	grub-core/lib/crypto.c, grub-core/lib/libgcrypt-grub/cipher/sha512.c,
	grub-core/lib/libgcrypt-grub/cipher/crc.c and grub-core/lib/pbkdf2.c.
	(grub-bin2h): Add libgcry.a.
	(grub-mkimage): Likewise.
	(grub-mkrelpath): Likewise.
	(grub-script-check): Likewise.
	(grub-editenv): Likewise.
	(grub-mkpasswd-pbkdf2): Likewise.
	(grub-pe2elf): Likewise.
	(grub-fstest): Likewise.
	(grub-mkfont): Likewise.
	(grub-mkdevicemap): Likewise.
	(grub-probe): Likewise.
	(grub-ofpath): Likewise.
	(grub-mklayout): Likewise.
	(example_unit_test): Likewise.
	(grub-menulst2cfg): Likewise.
	* autogen.sh (UTIL_DEFS): Add Makefile.utilgcry.def.
	* grub-core/Makefile.core.def (cryptodisk): New module.
	(luks): Likewise.
	(geli): Likewise.
	* grub-core/disk/AFSplitter.c: New file.
	* grub-core/disk/cryptodisk.c: Likewise.
	* grub-core/disk/geli.c: Likewise.
	* grub-core/disk/luks.c: Likewise.
	* grub-core/kern/emu/getroot.c (get_dm_uuid): New function based on
	grub_util_is_lvm.
	(grub_util_get_dm_abstraction): New function.
	(grub_util_follow_gpart_up): Likewise.
	(grub_util_get_geom_abstraction): Likewise.
	(grub_util_get_dev_abstraction): Use new functions.
	(grub_util_pull_device): Pull GELI and LUKS.
	(grub_util_get_grub_dev): Handle LUKS and GELI.
	* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): New function.
	(grub_util_biosdisk_open): Use grub_util_get_fd_sectors.
	(follow_geom_up): Removed.
	(grub_util_fd_seek): New function.
	(open_device): Use grub_util_fd_seek.
	(nread): Rename to ..
	(grub_util_fd_read): ... this. All users updated.
	* grub-core/lib/crypto.c (grub_crypto_ecb_decrypt): A better prototype.
	(grub_crypto_cbc_decrypt): Likewise.
	(grub_crypto_hmac_write): Likewise.
	(grub_crypto_hmac_buffer): Likewise.
	(grub_password_get): Extend to util.
	* include/grub/crypto.h (gcry_cipher_spec) [GRUB_UTIL]:
	New member modname.
	(gcry_md_spec) [GRUB_UTIL]: Likewise.
	* include/grub/cryptodisk.h: New file.
	* include/grub/disk.h (grub_disk_dev_id): Rename LUKS to CRYPTODISK.
	* include/grub/emu/getroot.h (grub_dev_abstraction_types): Add
	LUKS and GELI.
	(grub_util_follow_gpart_up): New proto.
	* include/grub/emu/hostdisk.h (grub_util_fd_seek): Likewise.
	(grub_util_fd_read): Likewise.
	(grub_cryptodisk_cheat_mount): Likewise.
	(grub_util_cryptodisk_print_uuid): Likewise.
	(grub_util_get_fd_sectors): Likewise.
	* util/grub-fstest.c (mount_crypt): New var.
	(fstest): Mount crypto if requested.
	(options): New option -C.
	(argp_parser): Parse -C.
	(main): Init and fini gcry.
	* util/grub-install.in: Support cryptodisk install.
	* util/grub-mkconfig.in: Export GRUB_ENABLE_CRYPTODISK.
	* util/grub-mkconfig_lib.in (is_path_readable_by_grub): Support
	cryptodisk.
	(prepare_grub_to_access_device): Likewise.
	* util/grub-mkpasswd-pbkdf2.c (main): Use grub_password_get.
	* util/grub-probe.c (probe_partmap): Support cryptodisk UUID probe.
	(probe_cryptodisk_uuid): New function.
	(probe_abstraction): Likewise.
	(probe): Use new functions.
	* util/import_gcry.py: Create Makefile.utilgcry.def.
	Add modname member.

	Also-By: Michael Gorven <michael@gorven.za.net>

	Also-By: Clemens Fruhwirth <clemens@endorphin.org>
2011-07-07 23:52:58 +02:00
..
efi Automatically determine prefix when netbooted on EFI 2011-07-02 16:56:35 +02:00
emu LUKS and GELI support. 2011-07-07 23:52:58 +02:00
generic automake commit without merge history 2010-05-06 11:34:04 +05:30
i386 Unify sparc init with other ieee1275. 2011-07-06 20:05:26 +02:00
ia64 unify prefix handling across platforms 2011-07-02 14:09:36 +02:00
ieee1275 Unify sparc init with other ieee1275. 2011-07-06 20:05:26 +02:00
mips merge mainline into net 2011-07-06 01:35:41 +02:00
powerpc Compress grub_prefix. 2010-09-03 14:54:04 +02:00
sparc64 unify prefix handling across platforms 2011-07-02 14:09:36 +02:00
x86_64 efinet support 2011-06-26 22:42:04 +02:00
command.c * include/grub/command.h (GRUB_COMMAND_FLAG_CMDLINE): Removed. All 2010-09-14 23:06:01 +02:00
corecmd.c Rename jail to extractor 2010-09-20 23:01:34 +02:00
device.c Add backward compatibiulity with old (pxe) syntax. Several cleanups 2011-06-26 17:06:18 +02:00
disk.c Simplify disk opening 2011-07-07 21:46:25 +02:00
dl.c Fix a memory leak 2011-07-06 17:40:36 +02:00
elf.c Implement automatic module license checking according to new GNU 2011-04-11 23:01:51 +02:00
env.c * grub-core/fs/i386/pc/pxe.c (set_mac_env): Export variable. 2011-01-11 11:51:05 +01:00
err.c Pause the execution (10s max) if any errors are displayed so the user 2010-09-20 17:46:35 +02:00
file.c Fix broken blksize negotiation, fix broken seek and change a way net device is filled n i386-pc 2011-07-02 17:58:23 +02:00
fs.c Use a net fs struct to handle open, reand and close in file. 2011-05-27 00:22:35 -03:00
list.c merge with mainline 2010-07-13 00:43:28 +05:30
main.c merge mainline into net 2011-07-02 18:52:50 +02:00
misc.c Use full 64-bit division. 2011-05-18 15:35:19 +02:00
mm.c Fix the usage of unsupported %zx 2011-07-06 17:41:19 +02:00
parser.c merge with mainline 2010-07-13 00:43:28 +05:30
partition.c Change to disk->name being raw name. It makes less hidden issues 2010-09-08 21:22:41 +02:00
rescue_parser.c merge with mainline 2010-07-13 00:43:28 +05:30
rescue_reader.c Merge mainline into keylayouts 2010-08-31 14:03:29 +02:00
term.c poll cards when idle 2011-07-06 13:37:33 +02:00
time.c automake commit without merge history 2010-05-06 11:34:04 +05:30
vga_init.c VGA text support in qemu-mips 2011-07-05 23:46:15 +02:00