1. 27 Jan, 2015 1 commit
  2. 15 Dec, 2013 1 commit
  3. 20 Oct, 2013 1 commit
  4. 15 Oct, 2013 1 commit
  5. 27 Feb, 2013 1 commit
    • Colin Watson's avatar
      Remove nested functions from disk and file read hooks. · 4eb8b756
      Colin Watson authored
      	* include/grub/disk.h (grub_disk_read_hook_t): New type.
      	(struct grub_disk): Add read_hook_data member.
      	* include/grub/file.h (struct grub_file): Likewise.
      	* include/grub/fshelp.h (grub_fshelp_read_file): Add read_hook_data
      	argument.
      
      	Update all callers.
      4eb8b756
  6. 21 Jan, 2013 1 commit
  7. 13 May, 2012 1 commit
  8. 12 May, 2012 1 commit
    • Vladimir 'phcoder' Serbinenko's avatar
      Fix handling of UDF symlinks. · c1ad82db
      Vladimir 'phcoder' Serbinenko authored
      	* grub-core/fs/udf.c (read_string): New argument outbuf.
      	All users updated.
      	(grub_ufs_read_symlink): Rename to ...
      	(grub_udf_read_symlink): ... this. All users updated.
      	Handle symlinks with more than one component.
      c1ad82db
  9. 09 May, 2012 1 commit
    • Vladimir 'phcoder' Serbinenko's avatar
      Fix wrapped HFS+ handling. · f417ed04
      Vladimir 'phcoder' Serbinenko authored
      	* grub-core/fs/fshelp.c (grub_fshelp_read_file): New argument
      	blocks_start. All users updated.
      	* grub-core/fs/hfsplus.c (grub_hfsplus_read_block): Don't add
      	wrapping offset.
      	(grub_hfsplus_read_file): Pass embedding offset to fshelp_read_file.
      f417ed04
  10. 03 May, 2012 1 commit
    • Vladimir 'phcoder' Serbinenko's avatar
      Support 4K sectors UDF inline files. · a3a0eace
      Vladimir 'phcoder' Serbinenko authored
      	* grub-core/fs/udf.c (grub_udf_file_entry): Don't specify padding size.
      	(grub_udf_extended_file_entry): Likewise.
      	(grub_fshelp_node): Name the anonymous union. Put block at the end.
      	All users updated.
      	(get_fshelp_size): New function.
      	(grub_udf_read_icb): Read whole block.
      	(grub_udf_iterate_dir): Likewise.
      	(grub_udf_dir): Likewise.
      	(grub_udf_open): Likewise.
      a3a0eace
  11. 28 Feb, 2012 1 commit
  12. 13 Dec, 2011 2 commits
  13. 26 Jun, 2011 1 commit
    • Szymon Janc's avatar
      * grub-core/commands/cmp.c (grub_cmd_cmp): Remove unnecessary NULL · cbf597af
      Szymon Janc authored
      	pointer checks before calling grub_free().
      	* grub-core/commands/wildcard.c (match_devices): Likewise.
      	* grub-core/commands/wildcard.c (match_files): Likewise.
      	* grub-core/fs/cpio.c (grub_cpio_dir): Likewise.
      	* grub-core/fs/cpio.c (grub_cpio_open): Likewise.
      	* grub-core/fs/udf.c (grub_udf_read_block): Likewise.
      	* grub-core/fs/xfs.c (grub_xfs_read_block): Likewise.
      	* grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Likewise.
      	* grub-core/normal/cmdline.c (grub_cmdline_get): Likewise.
      	* grub-core/script/yylex.l (grub_lexer_unput): Likewise.
      	* grub-core/video/readers/jpeg.c (grub_video_reader_jpeg): Likewise.
      	* grub-core/video/readers/png.c (grub_png_output_byte): Likewise.
      cbf597af
  14. 12 Apr, 2011 1 commit
  15. 21 Dec, 2010 1 commit
  16. 19 Dec, 2010 2 commits
  17. 11 Dec, 2010 1 commit
  18. 10 Dec, 2010 2 commits
  19. 14 Nov, 2010 4 commits
    • Giuseppe Caizzone's avatar
      Add generic logical block size support for UDF. · 69c4feeb
      Giuseppe Caizzone authored
      	* grub-core/fs/udf.c (GRUB_UDF_LOG2_BLKSIZE): Removed.
      	(GRUB_UDF_BLKSZ): Removed.
      	(struct grub_udf_data): New field "lbshift" to hold the logical	block
      	size of the file system in log2 format. All users updated.
      	(sblocklist): Change type to unsigned.
      	(grub_udf_mount): Change type of "sblklist" to unsigned.
      	Move AVDP search before VRS recognition, because the latter requires
      	knowledge of the logical block size, which is detected during the
      	former.
      	Detect and validate logical block size during AVDP search, adding
      	support for block sizes 512, 1024 and 4096.
      	Make VRS recognition independent of block size.
      69c4feeb
    • Giuseppe Caizzone's avatar
      Add generic logical block size support for UDF. · e5360933
      Giuseppe Caizzone authored
      	* grub-core/fs/udf.c (GRUB_UDF_LOG2_BLKSIZE): Removed.
      	(GRUB_UDF_BLKSZ): Removed.
      	(struct grub_udf_data): New field "lbshift" to hold the logical	block
      	size of the file system in log2 format. All users updated.
      	(sblocklist): Change type to unsigned.
      	(grub_udf_mount): Change type of "sblklist" to unsigned.
      	Move AVDP search before VRS recognition, because the latter requires
      	knowledge of the logical block size, which is detected during the
      	former.
      	Detect and validate logical block size during AVDP search, adding
      	support for block sizes 512, 1024 and 4096.
      	Make VRS recognition independent of block size.
      e5360933
    • Giuseppe Caizzone's avatar
      Properly handle deleted files on UDF. · cb0229c5
      Giuseppe Caizzone authored
      	* grub-core/fs/udf.c (grub_udf_iterate_dir): Skip directory entries
      	whose "characteristics" field has the bit GRUB_UDF_FID_CHAR_DELETED
      	set.
      cb0229c5
    • Giuseppe Caizzone's avatar
      Support reading files larger than 2 GiB. · 406858a8
      Giuseppe Caizzone authored
      	* grub-core/fs/udf.c (grub_udf_iterate_dir): Change type of variable
      	"offset" to grub_off_t.
      	(grub_udf_read_file): Likewise for parameter "pos".
      406858a8
  20. 06 May, 2010 1 commit
  21. 19 Apr, 2010 2 commits
  22. 04 Jan, 2010 1 commit
    • Robert Millan's avatar
      2010-01-03 Robert Millan <rmh.grub@aybabtu.com> · 58bc8bd5
      Robert Millan authored
      	
      	* boot/i386/pc/boot.S: Update copyright year.
      	* boot/i386/pc/cdboot.S: Likewise.
      	* boot/i386/pc/diskboot.S: Likewise.
      	* boot/i386/pc/lnxboot.S: Likewise.
      	* boot/i386/pc/pxeboot.S: Likewise.
      	* bus/pci.c: Likewise.
      	* commands/cmp.c: Likewise.
      	* commands/help.c: Likewise.
      	* commands/hexdump.c: Likewise.
      	* commands/i386/pc/halt.c: Likewise.
      	* commands/i386/pc/play.c: Likewise.
      	* commands/i386/pc/vbeinfo.c: Likewise.
      	* commands/ls.c: Likewise.
      	* commands/test.c: Likewise.
      	* disk/dmraid_nvidia.c: Likewise.
      	* disk/i386/pc/biosdisk.c: Likewise.
      	* disk/ieee1275/nand.c: Likewise.
      	* disk/ieee1275/ofdisk.c: Likewise.
      	* disk/lvm.c: Likewise.
      	* disk/raid.c: Likewise.
      	* disk/raid6_recover.c: Likewise.
      	* disk/scsi.c: Likewise.
      	* fs/affs.c: Likewise.
      	* fs/cpio.c: Likewise.
      	* fs/ext2.c: Likewise.
      	* fs/hfs.c: Likewise.
      	* fs/iso9660.c: Likewise.
      	* fs/ntfs.c: Likewise.
      	* fs/sfs.c: Likewise.
      	* fs/udf.c: Likewise.
      	* fs/ufs.c: Likewise.
      	* fs/xfs.c: Likewise.
      	* gencmdlist.sh: Likewise.
      	* genmk.rb: Likewise.
      	* include/grub/disk.h: Likewise.
      	* include/grub/efi/api.h: Likewise.
      	* include/grub/efi/efi.h: Likewise.
      	* include/grub/efi/pe32.h: Likewise.
      	* include/grub/elf.h: Likewise.
      	* include/grub/fs.h: Likewise.
      	* include/grub/i386/at_keyboard.h: Likewise.
      	* include/grub/i386/pc/memory.h: Likewise.
      	* include/grub/i386/pc/vbe.h: Likewise.
      	* include/grub/i386/pci.h: Likewise.
      	* include/grub/i386/tsc.h: Likewise.
      	* include/grub/ieee1275/ieee1275.h: Likewise.
      	* include/grub/ntfs.h: Likewise.
      	* include/grub/sparc64/ieee1275/ieee1275.h: Likewise.
      	* include/grub/sparc64/libgcc.h: Likewise.
      	* include/grub/symbol.h: Likewise.
      	* include/grub/types.h: Likewise.
      	* include/multiboot2.h: Likewise.
      	* io/gzio.c: Likewise.
      	* kern/device.c: Likewise.
      	* kern/disk.c: Likewise.
      	* kern/efi/efi.c: Likewise.
      	* kern/efi/mm.c: Likewise.
      	* kern/elf.c: Likewise.
      	* kern/file.c: Likewise.
      	* kern/i386/dl.c: Likewise.
      	* kern/i386/pc/init.c: Likewise.
      	* kern/i386/pc/startup.S: Likewise.
      	* kern/ieee1275/ieee1275.c: Likewise.
      	* kern/ieee1275/init.c: Likewise.
      	* kern/main.c: Likewise.
      	* kern/mm.c: Likewise.
      	* kern/powerpc/dl.c: Likewise.
      	* kern/sparc64/dl.c: Likewise.
      	* kern/x86_64/dl.c: Likewise.
      	* lib/hexdump.c: Likewise.
      	* loader/efi/appleloader.c: Likewise.
      	* loader/i386/ieee1275/linux.c: Likewise.
      	* loader/i386/pc/chainloader.c: Likewise.
      	* loader/i386/pc/linux.c: Likewise.
      	* loader/i386/pc/multiboot2.c: Likewise.
      	* loader/ieee1275/multiboot2.c: Likewise.
      	* loader/multiboot2.c: Likewise.
      	* loader/multiboot_loader.c: Likewise.
      	* loader/powerpc/ieee1275/linux.c: Likewise.
      	* normal/completion.c: Likewise.
      	* normal/menu_entry.c: Likewise.
      	* partmap/apple.c: Likewise.
      	* util/grub.d/10_hurd.in: Likewise.
      	* util/hostfs.c: Likewise.
      	* video/readers/png.c: Likewise.
      	
      58bc8bd5
  23. 25 Dec, 2009 1 commit
    • carles's avatar
      2009-12-25 Carles Pina i Estany <carles@pina.cat> · 61ba42be
      carles authored
      	* commands/efi/loadbios.c: Capitalize acronyms, replace `could not' by
      	`couldn't' and `can not' by `cannot'.
      	* commands/i386/pc/drivemap.c: Likewise.
      	* disk/ata.c: Likewise.
      	* disk/ieee1275/nand.c: Likewise.
      	* fs/affs.c: Likewise.
      	* fs/fat.c: Likewise.
      	* fs/hfs.c: Likewise.
      	* fs/hfsplus.c: Likewise.
      	* fs/iso9660.c: Likewise.
      	* fs/jfs.c: Likewise.
      	* fs/minix.c: Likewise.
      	* fs/reiserfs.c: Likewise.
      	* fs/sfs.c: Likewise.
      	* fs/udf.c: Likewise.
      	* fs/ufs.c: Likewise.
      	* fs/xfs.c: Likewise.
      	* loader/powerpc/ieee1275/linux.c: Likewise.
      	* loader/sparc64/ieee1275/linux.c: Likewise.
      	* util/grub-probe.c: Likewise.
      	* util/misc.c: Likewise.
      61ba42be
  24. 12 Jun, 2009 1 commit
  25. 11 Jun, 2009 1 commit
  26. 14 May, 2009 1 commit
    • proski's avatar
      2009-05-13 Pavel Roskin <proski@gnu.org> · 238e871f
      proski authored
      	* kernel/disk.c (grub_disk_read): Use void pointer for the
      	buffer.
      	(grub_disk_write): Use const void pointer for the buffer.
      	Adjust all callers.  Remove unnecessary casts.
      238e871f
  27. 05 May, 2009 2 commits
    • proski's avatar
      2009-05-05 Pavel Roskin <proski@gnu.org> · 119494b5
      proski authored
      	* include/grub/dl.h [GRUB_UTIL]: Provide inline implementations
      	of grub_dl_ref() and grub_dl_unref().
      	* commands/parttool.c: Remove preprocessor conditionals around
      	grub_dl_ref() and grub_dl_unref().
      	* fs/affs.c: Likewise.
      	* fs/afs.c: Likewise.
      	* fs/cpio.c: Likewise.
      	* fs/ext2.c: Likewise.
      	* fs/fat.c: Likewise.
      	* fs/hfs.c: Likewise.
      	* fs/hfsplus.c: Likewise.
      	* fs/iso9660.c: Likewise.
      	* fs/jfs.c: Likewise.
      	* fs/minix.c: Likewise.
      	* fs/ntfs.c: Likewise.
      	* fs/reiserfs.c: Likewise.
      	* fs/sfs.c: Likewise.
      	* fs/udf.c: Likewise.
      	* fs/ufs.c: Likewise.
      	* fs/xfs.c: Likewise.
      	* include/grub/dl.h: Likewise.
      	* loader/xnu.c: Likewise.
      119494b5
    • proski's avatar
      2009-05-04 Pavel Roskin <proski@gnu.org> · 4241d2b1
      proski authored
      	* disk/ata.c: Spelling fixes.
      	* disk/raid.c: Likewise.
      	* disk/usbms.c: Likewise.
      	* disk/dmraid_nvidia.c: Likewise.
      	* kern/ieee1275/openfw.c: Likewise.
      	* kern/ieee1275/init.c: Likewise.
      	* kern/ieee1275/cmain.c: Likewise.
      	* boot/i386/pc/cdboot.S: Likewise.
      	* video/readers/png.c: Likewise.
      	* video/i386/pc/vbe.c: Likewise.
      	* fs/udf.c: Likewise.
      	* fs/hfs.c: Likewise.
      	* fs/reiserfs.c: Likewise.
      	* efiemu/runtime/efiemu.c: Likewise.
      	* efiemu/main.c: Likewise.
      	* efiemu/mm.c: Likewise.
      	* include/grub/elf.h: Likewise.
      	* include/grub/xnu.h: Likewise.
      	* include/grub/usbdesc.h: Likewise.
      	* include/grub/usb.h: Likewise.
      	* include/grub/script_sh.h: Likewise.
      	* include/grub/lib/LzmaEnc.h: Likewise.
      	* include/grub/efiemu/efiemu.h: Likewise.
      	* include/grub/command.h: Likewise.
      	* normal/menu.c: Likewise.
      	* normal/main.c: Likewise.
      	* normal/datetime.c: Likewise.
      	* bus/usb/uhci.c: Likewise.
      	* mmap/i386/uppermem.c: Likewise.
      	* mmap/mmap.c: Likewise.
      	* commands/acpi.c: Likewise.
      	* commands/test.c: Likewise.
      	* partmap/apple.c: Likewise.
      	* font/font.c: Likewise.
      	* loader/sparc64/ieee1275/linux.c: Likewise.
      	* loader/macho.c: Likewise.
      	* loader/i386/bsd_trampoline.S: Likewise.
      	* loader/i386/bsd.c: Likewise.
      	* loader/xnu.c: Likewise.
      	* term/i386/pc/vesafb.c: Likewise.
      	* term/usb_keyboard.c: Likewise.
      	* util/resolve.c: Likewise.
      	* util/getroot.c: Likewise.
      4241d2b1
  28. 06 Apr, 2009 1 commit
    • phcoder's avatar
      2009-04-05 Vladimir Serbinenko <phcoder@gmail.com> · 05aaebfb
      phcoder authored
      	Support for mtime and further expandability of dir command
      
      	* include/grub/lib/datetime.h: moved to ...
      	* include/grub/datetime.h: ... moved here and added 
      	declaration of grub_unixtime2datetime. All users updated
      	* include/grub/fs.h: new syntax for dir and mtime functionin 
      	struct grub_fs 
      	* include/grub/fshelp.h: new declarations of GRUB_FSHELP_TYPE_MASK
      	and GRUB_FSHELP_FLAGS_MASK
      	* commands/ls.c (grub_ls_list_files): Write mtime in long format
      	* fs/ext2.c (grub_ext2_dir): use new dir syntax and supply mtime
      	(grub_ext2_mtime): new function
      	* fs/hfsplus.c (grub_hfsplus_dir): use new dir syntax and supply mtime
      	(grub_hfsplus_mtime): new function
      	* fs/ufs.c (GRUB_UFS_ATTR_TYPE): new definition
      	(GRUB_UFS_ATTR_FILE): likewise
      	(GRUB_UFS_ATTR_LNK): likewise
      	(struct grub_ufs_sblock): new fields mtime
      	(grub_ufs_read_inode): new parameter to read inode to a separate buffer
      	all users updated
      	(grub_ufs_dir): mtime support
      	(grub_ufs_mtime): new function
      	* fs/affs.c (grub_affs_dir): use new dir syntax
      	* fs/afs.c (grub_afs_dir): likewise
      	* fs/cpio.c (grub_cpio_dir): likewise
      	* fs/fat.c (grub_fat_find_dir): likewise
      	* fs/hfs.c (grub_hfs_dir): likewise
      	* fs/iso9660.c (grub_iso9660_dir): likewise
      	* fs/jfs.c (grub_jfs_dir): likewise
      	* fs/minix.c (grub_minix_dir): likewise
      	* fs/ntfs.c (grub_ntfs_dir): likewise
      	* fs/reiserfs.c (grub_reiserfs_dir): likewise
      	* fs/sfs.c (grub_sfs_dir): likewise
      	* fs/xfs.c (grub_xfs_dir): likewise
      	* util/hostfs.c (grub_hostfs_dir): likewise
      	* lib/datetime.c: moved to ...
      	* normal/datetime.c: ... moved here
      	(grub_unixtime2datetime): new function
      	* kern/rescue.c (grub_rescue_print_files): use new dir syntax
      	* normal/completition.c (iterate_dir): use new dir syntax
      	* normal/misc.c (grub_normal_print_device_info): tell the 
      	last modification time of a volume
      	* kern/fs.c (grub_fs_probe): updated dummy function to use new syntax 
      	* conf/common.rmk: added lib/datetime.c to ls.mod
      	* conf/i386-coreboot.rmk (grub_emu_SOURCES): add normal/datetime.c  
      	(normal_mod_SOURCES): likewise
      	(datetime_mod_SOURCES): Removed lib/datetime.c
      	* conf/i386-efi.rmk: likewise
      	* conf/i386-ieee1275.rmk: likewise	
      	* conf/i386-pc.rmk: likewise
      	* conf/powerpc-ieee1275.rmk: likewise
      	* conf/sparc64-ieee1275.rmk: likewise	
      	* conf/x86_64-efi.rmk: likewise	
      05aaebfb
  29. 20 May, 2008 1 commit
    • bean's avatar
      2008-05-20 Bean <bean123ch@gmail.com> · 887d2619
      bean authored
      	* fs/fshelp.c (grub_fshelp_map_block): New function.
      	(grub_fshelp_find_file): Use 64-bit type for pos and block address.
      	Use `>>' and `&' operator to avoid 64-bit divide and modulo.
      
      	* include/grub/fshelp.h (grub_fshelp_journal_type): New enum.
      	(GRUB_FSHELP_JOURNAL_UNUSED_MAPPING): New macro.
      	(grub_fshelp_journal): New structure.
      	(grub_fshelp_map_block): New function prototype.
      	(grub_fshelp_read_file): Use grub_disk_addr_t as block type.
      	(grub_fshelp_map_block): Likewise.
      
      	* fs/ext2.c (EXT3_FEATURE_COMPAT_HAS_JOURNAL): New macro.
      	(EXT3_JOURNAL_MAGIC_NUMBER): Likewise.
      	(EXT3_JOURNAL_DESCRIPTOR_BLOCK): Likewise.
      	(EXT3_JOURNAL_COMMIT_BLOCK): Likewise.
      	(EXT3_JOURNAL_SUPERBLOCK_V1): Likewise.
      	(EXT3_JOURNAL_SUPERBLOCK_V2): Likewise.
      	(EXT3_JOURNAL_REVOKE_BLOCK): Likewise.
      	(EXT3_JOURNAL_FLAG_ESCAPE): Likewise.
      	(EXT3_JOURNAL_FLAG_SAME_UUID): Likewise.
      	(EXT3_JOURNAL_FLAG_DELETED): Likewise.
      	(EXT3_JOURNAL_FLAG_LAST_TAG): Likewise.
      	(grub_ext2_sblock): New members for journal support.
      	(grub_ext3_journal_header): New structure.
      	(grub_ext3_journal_revoke_header): Likewise.
      	(grub_ext3_journal_block_tag): Likewise.
      	(grub_ext3_journal_sblock): Likewise.
      	(grub_fshelp_node): New members logfile and journal.
      	(grub_ext2_read_block): Change block type to grub_disk_addr_t. Use
      	grub_fshelp_map_block to get real block number.
      	(grub_ext2_blockgroup): Use grub_fshelp_map_block to get real block
      	number.
      	(grub_ext2_read_inode): Likewise.
      	(grub_ext3_get_journal): New function.
      	(grub_read_inode): Initialize journal using grub_ext3_get_journal.
      	(grub_ext2_close): Release memory used by journal.
      
      	* fs/reiserfs.c (REISERFS_MAGIC_STRING): Changed to "ReIsEr".
      	(REISERFS_MAGIC_DESC_BLOCK): New macro.
      	(grub_reiserfs_transaction_header): Renamed to
      	grub_reiserfs_description_block, replace field data with real_blocks.
      	(grub_reiserfs_commit_block): New structure.
      	(grub_reiserfs_data): New member journal.
      	(grub_reiserfs_get_item): Use grub_fshelp_map_block to get real block
      	number.
      	(grub_reiserfs_read_symlink): Likewise.
      	(grub_reiserfs_iterate_dir): Likewise.
      	(grub_reiserfs_open): Likewise.
      	(grub_reiserfs_read): Likewise.
      	(grub_reiserfs_get_journal): New function.
      	(grub_reiserfs_mount): Use "ReIsEr" as super block magic, as there are
      	three varieties ReIsErFs, ReIsEr2Fs and ReIsEr3Fs. Initialize journal
      	using grub_reiserfs_get_journal.
      	(grub_reiserfs_close): Release memory used by journal.
      
      	* fs/affs.c (grub_affs_read_block): Change block type to
      	grub_disk_addr_t. Use grub_divmod64 to do 64-bit division.
      
      	* fs/afs.c (grub_afs_read_block): Change block type to grub_disk_addr_t.
      
      	* fs/hfsplus.c (grub_hfsplus_read_block): Likewise.
      
      	* fs/ntfs.c (grub_ntfs_read_block): Likewise.
      
      	* fs/udf.c (grub_udf_read_block): Change block type to
      	grub_disk_addr_t. Use type cast to avoid warning.
      
      	* fs/xfs.c (grub_xfs_read_block): Likewise.
      887d2619
  30. 30 Mar, 2008 1 commit
    • proski's avatar
      2008-03-30 Pavel Roskin <proski@gnu.org> · 8790bb04
      proski authored
      	* fs/udf.c (grub_udf_mount): Fix warning about a shadowing a
      	variable.
      	* include/grub/i386/loader.h: Change declaration of
      	grub_linux_boot() to match what grub_loader_set() expects.
      	* util/getroot.c (grub_guess_root_device): Return const char* to
      	fix a warning.
      	* util/grub-probe.c (probe): Fix a warning about uninitialized
      	abstraction_name variable.
      	* util/i386/get_disk_name.c (grub_util_get_disk_name): Mark
      	second argument as unused to fix a warning.
      8790bb04
  31. 24 Feb, 2008 1 commit
    • bean's avatar
      2008-02-24 Bean <bean123ch@gmail.com> · 0d16e571
      bean authored
      	* fs/iso9660.c (GRUB_ISO9660_VOLDESC_BOOT): New macro.
      	(GRUB_ISO9660_VOLDESC_PRIMARY): Likewise.
      	(GRUB_ISO9660_VOLDESC_SUPP): Likewise.
      	(GRUB_ISO9660_VOLDESC_PART): Likewise.
      	(GRUB_ISO9660_VOLDESC_END): Likewise.
      	(grub_iso9660_primary_voldesc): New member escape.
      	(grub_iso9660_data): New member joliet.
      	(grub_iso9660_convert_string): New function.
      	(grub_iso9660_mount): Detect joliet extension.
      	(grub_iso9660_iterate_dir): Convert filename when joliet is detected.
      	(grub_iso9660_iso9660_label): Likewise.
      
      	* conf/common.rmk (pkgdata_MODULES): Add udf.mod.
      	(grub_setup_SOURCES): Add fs/udf.c.
      	(grub_fstest_SOURCES): Likewise.
      	(udf_mod_SOURCES): New variable.
      	(udf_mod_CFLAGS): Likewise.
      	(udf_mod_LDFLAGS): Likewise.
      
      	* conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/udf.c.
      	(grub_emu_SOURCES): Likewise.
      
      	* conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
      
      	* conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
      
      	* conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise.
      
      	* conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
      
      	* fs/udf.c: New file.
      0d16e571