Vladimir 'phcoder' Serbinenko
033d0b4b0b
* grub-core/fs/ntfs.c: Eliminate useless divisions in favor of shifts.
...
* grub-core/fs/ntfscomp.c: Likewise.
* include/grub/ntfs.h (grub_ntfs_data): Replace spc with log_spc.
(grub_ntfs_comp): Likewise.
2013-01-05 17:36:04 +01:00
Vladimir 'phcoder' Serbinenko
21d1b9a029
* grub-core/fs/nilfs2.c (-grub_nilfs2_palloc_groups_per_desc_block):
...
Rename to ...
(grub_nilfs2_palloc_log_groups_per_desc_block): ... this. Return log
of groups_per_block. All users updated.
2013-01-05 16:53:04 +01:00
Vladimir 'phcoder' Serbinenko
10ca8645cc
* grub-core/disk/diskfilter.c (grub_diskfilter_write): Call
...
grub_error properly.
* grub-core/disk/ieee1275/nand.c (grub_nand_write): Likewise.
* grub-core/disk/loopback.c (grub_loopback_write): Likewise.
2013-01-05 15:10:46 +01:00
Vladimir 'phcoder' Serbinenko
dadddb7665
* grub-core/fs/iso9660.c (grub_iso9660_susp_iterate): Avoid hang if
...
entry->len = 0.
2013-01-03 21:27:00 +01:00
Colin Watson
c3fc8394a0
* grub-core/tests/lib/test.c (grub_test_run): Return non-zero on
...
test failures, so that a failing unit test correctly causes 'make
check' to fail.
2013-01-02 16:42:48 +00:00
Colin Watson
45d26abb40
Fix failing printf test.
...
* grub-core/kern/misc.c (grub_vsnprintf_real): Parse '-', '.', and
'$' in the correct order when collecting type information.
2013-01-02 12:48:31 +00:00
Colin Watson
5c67ea6cd9
Remove several trivially-unnecessary uses of nested functions.
...
* grub-core/commands/i386/pc/sendkey.c
(grub_cmd_sendkey: find_key_code, find_ascii_code): Make static
instead of nested.
* grub-core/commands/legacycfg.c (legacy_file: getline): Likewise.
Rename to ...
(legacy_file_getline): ... this.
* grub-core/commands/loadenv.c (grub_cmd_load_env: set_var):
Likewise.
* grub-core/kern/corecmd.c (grub_core_cmd_set: print_env): Likewise.
* grub-core/kern/fs.c (grub_fs_probe: dummy_func): Likewise. Rename
to ...
(probe_dummy_iter): ... this.
* grub-core/kern/i386/coreboot/mmap.c
(grub_linuxbios_table_iterate: check_signature): Likewise.
* grub-core/kern/parser.c (grub_parser_split_cmdline:
check_varstate): Likewise. Mark inline.
* grub-core/lib/arg.c (find_short: fnd_short): Likewise. Pass
an additional parameter.
(find_long: fnd_long): Likewise. Pass two additional parameters.
* grub-core/lib/crc.c (init_crc32c_table: reflect): Likewise.
* grub-core/lib/crc64.c (init_crc64_table: reflect): Likewise.
* grub-core/lib/ieee1275/cmos.c (grub_cmos_find_port: hook):
Likewise. Rename to ...
(grub_cmos_find_port_iter): ... this.
* grub-core/lib/ieee1275/datetime.c (find_rtc: hook): Likewise.
Rename to ...
(find_rtc_iter): ... this.
* grub-core/normal/menu_entry.c (run): Fold nested editor_getsource
function directly into the function body, since it is only called
once.
2012-12-31 17:31:38 +00:00
Colin Watson
33a68ac643
* grub-core/bus/usb/ehci.c (grub_ehci_pci_iter): Remove incorrect
...
__attribute__ ((unused)).
* grub-core/video/bochs.c (find_card): Likewise.
* grub-core/video/cirrus.c (find_card): Likewise.
* grub-core/video/radeon_fuloong2e.c (find_card): Likewise.
* grub-core/video/sis315pro.c (find_card): Likewise.
* grub-core/video/sm712.c (find_card): Likewise.
2012-12-30 09:57:58 +00:00
Colin Watson
7024b3c0c2
Backport gnulib fixes for C11. Fixes Savannah bug #37738 .
...
* grub-core/gnulib/stdio.in.h (gets): Warn on use only if
HAVE_RAW_DECL_GETS.
* m4/stdio_h.m4 (gl_STDIO_H): Check for gets.
2012-12-28 06:43:35 +00:00
Vladimir 'phcoder' Serbinenko
ce96d01c93
* grub-core/disk/cryptodisk.c (grub_cmd_cryptomount): Strip brackets
...
around device name if necessarry.
2012-12-10 19:15:51 +01:00
Paulo Flabiano Smorigo
64ebd2f4b9
* grub-core/kern/ieee1275/init.c (grub_machine_get_bootlocation): Use
...
dynamic allocation for the bootpath buffer.
2012-12-10 16:23:16 +01:00
Dr. Tilmann Bubeck
74b2fe3e4f
* grub-core/gfxmenu/view.c (init_terminal): Avoid making terminal
...
window too small.
2012-12-10 16:14:12 +01:00
Vladimir 'phcoder' Serbinenko
969b804f2a
* grub-core/term/gfxterm.c (grub_virtual_screen_setup): Get font as
...
argument rather than font name. All users updated.
(grub_gfxterm_set_window): Likewise.
2012-12-10 16:07:33 +01:00
Vladimir 'phcoder' Serbinenko
cc1ce5f9b4
* grub-core/fs/ufs.c (grub_ufs_dir): Stop if direntlen is 0 to avoid
...
infinite loop on corrupted FS.
2012-12-10 09:22:40 +01:00
Vladimir 'phcoder' Serbinenko
e77a16ca02
Fix big-endian mtime.
...
* grub-core/fs/ufs.c (grub_ufs_inode): Split improperly attached
together sec and usec.
(grub_ufs_dir): Use correct byteswapping for UFS time.
2012-12-08 21:14:08 +01:00
Vladimir 'phcoder' Serbinenko
d9c48c7b7c
Support big-endian UFS1.
...
* Makefile.util.def (libgrubmods): Add ufs_be.c
* grub-core/Makefile.core.def (ufs1_be): New module.
* grub-core/fs/ufs_be.c: New file.
* grub-core/fs/ufs.c: Declare grub_ufs_to_le* and use them throughout
the file.
2012-12-08 20:56:58 +01:00
Paulo Flabiano Smorigo
48ff08895d
* grub-core/net/bootp.c (parse_dhcp_vendor): Fix double increment.
2012-11-28 14:14:20 +01:00
Christoph Junghans
a31b11bd96
* grub-core/Makefile.am (moddep.lst): Use $(AWK) rather than awk.
...
Fixes Savannah bug #37558 .
2012-10-12 15:37:49 +01:00
Colin Watson
e8a5d5d4da
* grub-core/commands/configfile.c (GRUB_MOD_INIT): Correct
...
description of extract_entries_configfile.
2012-10-12 15:34:33 +01:00
Christoph Junghans
9e0bee42cd
* grub-core/Makefile.am (moddep.lst): Use $(AWK) instead of awk
2012-10-12 15:04:02 +02:00
Colin Watson
39525c22be
* grub-core/loader/i386/linux.c (allocate_pages): Fix spelling of
...
preferred_address.
(grub_cmd_linux): Likewise.
* grub-core/net/icmp6.c (struct prefix_option): Fix spelling of
preferred_lifetime. Update all users.
2012-10-05 13:09:19 +01:00
Vladimir 'phcoder' Serbinenko
b78c312722
* grub-core/fs/affs.c (grub_affs_mount): Support AFFS bootblock in
...
sector 1.
2012-09-26 09:33:41 +02:00
Colin Watson
794c8c3375
Fix grub-emu build on FreeBSD.
...
* Makefile.util.def (grub-mount): Add LIBGEOM to ldadd.
* grub-core/net/drivers/emu/emunet.c: Only include Linux-specific
headers on Linux.
(GRUB_MOD_INIT): Return immediately on non-Linux platforms; this
implementation is currently Linux-specific.
* util/getroot.c (exec_pipe): Define only on Linux or when either
libzfs or libnvpair is unavailable.
(find_root_devices_from_poolname): Remove unused path variable.
2012-09-22 21:19:58 +01:00
Colin Watson
86d08fdb18
* grub-core/partmap/msdos.c (pc_partition_map_embed): Revert
...
incorrect off-by-one fix from 2011-02-12. A 62-sector core image
should fit before end == 63.
2012-09-19 02:44:54 +01:00
Vladimir 'phcoder' Serbinenko
7ddffdadea
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
...
GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN on mac.
* grub-core/term/ieee1275/console.c (grub_console_init_lately): Use
ieee1275-nocursor if GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN is set.
* grub-core/term/terminfo.c (grub_terminfo_set_current): Add new type
ieee1275-nocursor.
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New value
GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN.
2012-09-18 11:52:19 +02:00
Vladimir 'phcoder' Serbinenko
4e09245441
* grub-core/loader/i386/linux.c (grub_cmd_linux): Fix incorrect
...
le-conversion.
Reported by: BURETTE, Bernard.
2012-09-18 11:44:29 +02:00
Colin Watson
dfd39dbdea
* grub-core/term/terminfo.c: Only fix up powerpc key repeat on
...
IEEE1275 machines. Fixes powerpc-emu compilation.
* include/grub/terminfo.h: Likewise.
2012-09-14 11:23:36 +01:00
Vladimir 'phcoder' Serbinenko
3bfa763c48
* include/grub/efi/api.h (grub_efi_runtime_services): Make vendor_guid
...
a const pointer.
* grub-core/efiemu/runtime/efiemu.c (efiemu_memcpy): Make from a
const pointer.
(efiemu_set_variable): Make vendor_guid a const pointer.
2012-09-12 08:31:05 +02:00
Vladimir 'phcoder' Serbinenko
592fd0e4d6
* grub-core/disk/diskfilter.c (free_array) [GRUB_UTIL]: Fix memory leak.
...
* util/getroot.c (grub_find_device): Likewise.
(get_mdadm_uuid): Likewise.
(grub_util_is_imsm): Likewise.
(grub_util_pull_device): Likewise.
* util/grub-probe.c (probe): Likewise.
2012-09-11 07:53:26 +02:00
Benoit Gschwind
801a3027be
* grub-core/loader/efi/appleloader.c (devpath_8): New var.
...
(devs): Add devpath_8.
2012-09-10 09:34:29 +02:00
Peter Jones
c5052c81ab
* grub-core/Makefile.core.def (efifwsetup): New module.
...
* grub-core/commands/efi/efifwsetup.c: New file.
* grub-core/kern/efi/efi.c (grub_efi_set_variable): New function
* include/grub/efi/api.h (GRUB_EFI_OS_INDICATIONS_BOOT_TO_FW_UI):
New define.
* include/grub/efi/efi.h (grub_efi_set_variable): New proto.
2012-09-08 09:40:24 +02:00
Vladimir 'phcoder' Serbinenko
64498f2538
* grub-core/disk/ieee1275/ofdisk.c (scan): Check function return value.
...
* grub-core/lib/ieee1275/datetime.c (grub_get_datetime): Likewise.
(grub_set_datetime): Likewise.
2012-09-05 08:56:08 +02:00
Vladimir 'phcoder' Serbinenko
9cc836a27b
* grub-core/script/yylex.l: Ignore unused-function and sign-compare
...
warnings.
2012-09-05 08:51:31 +02:00
Vladimir 'phcoder' Serbinenko
bcfcea0174
* grub-core/partmap/dvh.c (grub_dvh_is_valid): Add missing byteswap.
2012-09-05 08:47:39 +02:00
Vladimir 'phcoder' Serbinenko
a40994852d
* grub-core/fs/xfs.c (grub_xfs_read_block): Make keys a const pointer.
2012-09-05 08:45:07 +02:00
starous
39b27f1eaf
EHCI and OHCI PCI bus master
2012-07-22 21:09:30 +02:00
Vladimir 'phcoder' Serbinenko
7bd29c01f0
New command `lsefi'.
...
* grub-core/Makefile.core.def (lsefi): New module.
* grub-core/commands/efi/lsefi.c: New file.
* include/grub/efi/api.h: Add more GUIDs.
2012-07-22 19:59:06 +02:00
Vladimir 'phcoder' Serbinenko
ac625d8f79
* grub-core/loader/i386/bsd.c (grub_bsd_elf32_size_hook): Fix mask.
...
(grub_bsd_elf32_hook): Likewise.
(grub_bsd_elf64_size_hook): Likewise.
(grub_bsd_elf64_hook): Likewise.
(grub_bsd_load_elf): Likewise.
2012-07-22 16:30:48 +02:00
Vladimir 'phcoder' Serbinenko
e73bb80170
* grub-core/lib/xzembed/xz_dec_stream.c (hash_validate): Fix behaviour
...
if hash function is unavailable.
(dec_stream_header): Likewise.
2012-07-22 16:27:03 +02:00
Vladimir 'phcoder' Serbinenko
e81db8b5fd
* grub-core/normal/autofs.c (autoload_fs_module): Save and restore
...
filter state.
2012-07-22 16:23:46 +02:00
Vladimir 'phcoder' Serbinenko
d187a1c3d7
Fix coreboot compilation.
...
* grub-core/term/i386/pc/vga_text.c (grub_vga_text_init): Rename to ...
(grub_vga_text_init_real): ... this.
(grub_vga_text_fini): Rename to ...
(grub_vga_text_fini_real): ... this.
2012-07-22 16:21:24 +02:00
Vladimir 'phcoder' Serbinenko
91a05f64e6
* grub-core/Makefile.am: Fix path to boot/i386/pc/startup_raw.S.
2012-07-07 14:29:01 +02:00
Vladimir 'phcoder' Serbinenko
6af96df768
* grub-core/lib/legacy_parse.c: Support clear and testload.
2012-07-02 11:31:31 +02:00
Vladimir 'phcoder' Serbinenko
4d569e12e3
* grub-core/term/efi/serial.c: Support 1.5 stop bits.
2012-07-02 11:30:04 +02:00
Vladimir 'phcoder' Serbinenko
073b57bb8e
* grub-core/fs/ext2.c: Experimental support for 64-bit.
2012-07-02 11:28:42 +02:00
Vladimir 'phcoder' Serbinenko
a706f4cc6b
* grub-core/net/tftp.c (ack): Fix endianness problem.
...
(tftp_receive): Likewise.
Reported by: Michael Davidsaver.
2012-07-02 11:22:50 +02:00
Vladimir 'phcoder' Serbinenko
a18f3b98c6
* include/grub/list.h (FOR_LIST_ELEMENTS_SAFE): New macro.
...
* include/grub/command.h (FOR_COMMANDS_SAFE): Likewise.
* grub-core/commands/help.c (grub_cmd_help): Use FOR_COMMANDS_SAFE.
2012-07-02 11:19:22 +02:00
Vladimir 'phcoder' Serbinenko
3569288126
* grub-core/loader/i386/linux.c (find_efi_mmap_size): Don't decrease
...
efi_mmap_size.
Reported by: Stuart Hayes.
2012-07-02 11:14:37 +02:00
Vladimir 'phcoder' Serbinenko
e80fdf7d2e
missing file from last commit
2012-06-28 15:36:48 +02:00
Vladimir 'phcoder' Serbinenko
c35fc5bd15
Add monochrome text support (mda_text, aka `hercules' in grub-legacy).
...
* grub-core/Makefile.core.def (mda_text): New module.
* grub-core/lib/legacy_parse.c (grub_legacy_parse): Support `hercules'.
* grub-core/term/i386/vga_common.c (grub_console_cur_color): Moved to ..
* grub-core/term/i386/pc/vga_text.c (cur_color): ... here
* grub-core/term/i386/pc/console.c (grub_console_cur_color): ... and
here.
* grub-core/term/i386/vga_common.c (grub_console_getwh): Moved to ..
* grub-core/term/i386/pc/vga_text.c (grub_console_getwh): ... here
* grub-core/term/i386/pc/console.c (grub_console_getwh): ... and
here.
* grub-core/term/i386/vga_common.c (grub_console_setcolorstate): Moved
to ..
* grub-core/term/i386/pc/vga_text.c (grub_console_setcolorstate):
... here
* grub-core/term/i386/pc/console.c (grub_console_setcolorstate): ... and
here.
* grub-core/term/i386/vga_common.c: Removed.
* include/grub/i386/vga_common.h: Likewise.
* include/grub/vga.h (grub_vga_cr_bw_write): New function.
(grub_vga_cr_bw_read): Likewise.
* include/grub/vgaregs.h (GRUB_VGA_IO_CR_BW_INDEX): New enum value.
(GRUB_VGA_IO_CR_BW_DATA): Likewise.
* grub-core/term/i386/pc/vga_text.c [MODE_MDA]: Call
grub_vga_cr_bw_read/grub_vga_cr_bw_write instead of
grub_vga_cr_read/grub_vga_cr_write.
(grub_vga_text_setcolorstate) [MODE_MDA]: Ignore color.
2012-06-28 15:27:54 +02:00
Vladimir 'phcoder' Serbinenko
5f91f70146
* configure.ac: Bump version to 2.00.
...
* grub-core/normal/main.c (features): Add feature_200_final.
2012-06-28 02:06:36 +02:00
Vladimir 'phcoder' Serbinenko
f923ad22ce
* grub-core/loader/i386/linux.c (find_efi_mmap_size): Increase
...
additional size to 3 pages.
Reported by: Stuart Hayes.
2012-06-27 22:55:09 +02:00
Vladimir 'phcoder' Serbinenko
58eee08fff
* grub-core/commands/wildcard.c (check_file): Fix bad logic.
...
put explicit "/" for empty path.
(wildcard_expand): Improve dprintf.
2012-06-27 21:13:06 +02:00
Vladimir 'phcoder' Serbinenko
c59bdff709
* grub-core/fs/fshelp.c (grub_fshelp_find_file): Don't free oldnode if
...
it's equal to currnode. This can happen with "" symlink.
2012-06-27 19:37:40 +02:00
Vladimir 'phcoder' Serbinenko
73a68bcb3a
* grub-core/term/arc/console.c (grub_console_init_output): Add one since
...
the value returned by firmware is the maximal position, not diumension.
(grub_terminfo_output_state): Use a more sane fallback.
2012-06-26 23:34:32 +02:00
Vladimir 'phcoder' Serbinenko
392a603b67
* grub-core/term/terminfo.c (print_terminfo): Print terminal dimensions.
2012-06-26 23:32:00 +02:00
Vladimir 'phcoder' Serbinenko
42d0867ff7
* grub-core/kern/mips/arc/init.c (grub_machine_init): Set clock
...
frequency to 150 MHz.
2012-06-26 23:28:23 +02:00
Vladimir 'phcoder' Serbinenko
489509f40e
Apple fixes.
...
* grub-core/lib/i386/relocator16.S: Use correct __APPLE__ and not
__APPLE_
* grub-core/lib/i386/relocator_common.S [__APPLE__]: Fix gdtdesc
definition.
* grub-core/lib/i386/relocator64.S [__APPLE__]: Assemble jmp manually.
2012-06-26 14:56:28 +02:00
Vladimir 'phcoder' Serbinenko
9f3fc8835f
Handle slash in HFS label.
...
* grub-core/fs/hfs.c (macroman_to_utf8): New argument slash_translate.
(grub_hfs_dir): Tanslate slash.
(grub_hfs_label): Don't translate slash.
2012-06-26 14:53:35 +02:00
Vladimir 'phcoder' Serbinenko
54853fd72e
* grub-core/commands/ls.c (grub_ls_list_devices): Disable
...
network protocol listing since it introduces problematic dependency on
net module.
2012-06-26 03:45:46 +02:00
Vladimir 'phcoder' Serbinenko
c50c867da3
Init video early on yeeloong to avoid being rebooted by watchdog.
...
* grub-core/Makefile.am (gensm712): New target.
(sm712_start.S): Likewise.
(boot/mips/loongson/fwstart.S): Depend on sm712_start.S
* grub-core/boot/mips/loongson/fwstart.S [!FULOONG2F]: Init SM712.
* grub-core/video/sm712.c [GENINIT]: Generate compact init procedure
description.
* include/grub/vga.h: Move registry definitions to...
* include/grub/vgaregs.h: ... here.
2012-06-26 03:36:14 +02:00
Vladimir 'phcoder' Serbinenko
5f92c8a110
* grub-core/boot/decompressor/minilib.c (grub_memcmp): Fix the compare
...
signedness.
2012-06-26 03:31:41 +02:00
Vladimir 'phcoder' Serbinenko
754ad9ebbe
* grub-core/disk/diskfilter.c (scan_disk) [GRUB_UTIL]: Put more
...
informative verbose message.
(read_lv): Handle 64-bit segment size.
2012-06-25 17:54:46 +02:00
Vladimir 'phcoder' Serbinenko
315654c269
* grub-core/disk/lvm.c (grub_lvm_getvalue): Handle 64-bit values.
2012-06-25 17:52:20 +02:00
Vladimir 'phcoder' Serbinenko
fb022c79ef
* grub-core/fs/fat.c (grub_fat_iterate_dir_next): Don't stop on a space
...
character but still remove trainling spaces.
(grub_fat_label): Ignore archive flag.
2012-06-25 17:47:52 +02:00
Vladimir 'phcoder' Serbinenko
8645f72c72
* grub-core/loader/i386/linux.c (grub_cmd_initrd): Avoid unnecessarry
...
cast between linux_kernel_header and linux_kernel_params.
2012-06-25 17:44:36 +02:00
Vladimir 'phcoder' Serbinenko
36498496a0
* include/grub/diskfilter.h (grub_raid5_recover_func_t): Use proper
...
type for size.
(grub_raid6_recover_func_t): Likewise.
* grub-core/disk/raid5_recover.c (grub_raid5_recover): Likewise.
* grub-core/disk/raid6_recover.c (grub_raid6_recover): Likewise.
2012-06-25 17:36:50 +02:00
Grégoire Sutre
650cfcfea2
Fix overflow in grub_util_get_fd_size for NetBSD.
2012-06-25 10:09:57 +02:00
Vladimir 'phcoder' Serbinenko
2fb97ed37a
* grub-core/boot/mips/loongson/fwstart.S: Add missing setting of high
...
half of $a0.
2012-06-23 11:27:27 +02:00
Vladimir 'phcoder' Serbinenko
0f92dca7ef
* grub-core/kern/mm.c (grub_free): Fix agglomerating of free regions.
2012-06-23 00:39:10 +02:00
Vladimir 'phcoder' Serbinenko
3988c4a09f
* grub-core/kern/mm.c (get_header_from_pointer): Put a more informative
...
message on double free. Put the value of magic in case of mismatch.
2012-06-22 23:54:43 +02:00
Vladimir 'phcoder' Serbinenko
9e86d4c59a
Speed-up video on yeeloong.
...
* grub-core/video/sm712.c (framebuffer): Remove render_target and
add cached_ptr.
(grub_video_sm712_video_fini): Unmap cached_ptr.
(grub_video_sm712_setup): Use cache address and grub_video_fb_setup.
(grub_video_sm712_set_active_render_target): Removed.
(grub_video_adapter): Use grub_video_fb_set_active_render_target.
(grub_video_sm712_swap_buffers): Call grub_video_fb_swap_buffers and
sync caches.
2012-06-22 23:47:34 +02:00
Vladimir 'phcoder' Serbinenko
ed24c31201
Avoid flushing the same line multiple times on loongson.
...
* grub-core/kern/mips/cache.S [GRUB_MACHINE_MIPS_LOONGSON]:
Step in 32 bytes and not 1 byte.
* grub-core/kern/mips/cache_flush.S [GRUB_MACHINE_MIPS_LOONGSON]:
Likewise.
2012-06-22 23:36:33 +02:00
Vladimir 'phcoder' Serbinenko
982f1909cf
Implement flow control for http.
...
* grub-core/net/http.c (parse_line): Handle response 206.
(http_receive): Stall if too many packets are in the queue.
(http_establish): Fix range header.
(http_seek): Fix double free.
(http_close): Likewise.
(http_packets_pulled): New function.
(grub_http_protocol): Set http_seek
* grub-core/net/tcp.c (grub_net_tcp_socket): New field `i_stall'.
(ack_real): Set window depending on i_stall.
(grub_net_send_tcp_packet): Likewise.
(grub_net_tcp_stall): New function.
(grub_net_tcp_unstall): Likewise.
* include/grub/net/tcp.h (grub_net_tcp_stall): New proto.
(grub_net_tcp_unstall): Likewise.
2012-06-22 22:09:31 +02:00
Vladimir 'phcoder' Serbinenko
bd407d6e5e
* grub-core/net/tftp.c: Decrease stall to 50 packets.
2012-06-22 22:04:16 +02:00
Vladimir 'phcoder' Serbinenko
c7564b8e13
* grub-core/net/net.c (grub_net_fs_open): Free resources on failed open.
2012-06-22 22:02:47 +02:00
Vladimir 'phcoder' Serbinenko
b27069e06d
Implement flow control for tftp.
...
* grub-core/net/net.c (receive_packets): Decrease the stop to 10
packets but stop only if stop condition is satisfied.
(grub_net_fs_read_real): Call packets_pulled after real read. Use
`stall' instead of `eof' as stop condition.
* grub-core/net/http.c (parse_line): Set `stall' on EOF.
(http_err): Likewise.
* grub-core/net/tftp.c (ack): Replace the first argument with data
instead of socket.
(tftp_receive): Stall if too many packets are in wait queue.
(tftp_packets_pulled): New function.
(grub_tftp_protocol): Set packets_pulled.
* include/grub/net.h (grub_net_packets): New field count.
(grub_net_put_packet): Increment count.
(grub_net_remove_packet): Likewise.
(grub_net_app_protocol): New field `packets_pulled'.
(grub_net): New field `stall'.
2012-06-22 14:17:46 +02:00
Vladimir 'phcoder' Serbinenko
6b9cfac683
* grub-core/net/net.c (receive_packets): Stop after 100 packets to let
...
sync part to handle them.
2012-06-22 12:42:31 +02:00
Vladimir 'phcoder' Serbinenko
f35abd8190
* grub-core/kern/main.c (grub_set_prefix_and_root): Fix memory leak.
...
* grub-core/net/drivers/ieee1275/ofnet.c
(grub_ieee1275_net_config_real): Likewise.
2012-06-22 11:51:48 +02:00
Vladimir 'phcoder' Serbinenko
0e7ec82034
* grub-core/net/bootp.c (grub_net_configure_by_dhcp_ack): Don't create
...
the direct route for server/gateway.
2012-06-21 22:20:57 +02:00
Vladimir 'phcoder' Serbinenko
9d611a318d
* grub-core/net/bootp.c (grub_net_configure_by_dhcp_ack): Prefer
...
IP address to server name since we may not hame the DNS.
2012-06-21 22:15:10 +02:00
Vladimir 'phcoder' Serbinenko
418f45abd1
* grub-core/net/dns.c (grub_cmd_nslookup): Init addresses to 0 to avoid
...
freeing random buffer on failure.
* grub-core/net/net.c (grub_net_resolve_address): Likewise.
2012-06-21 22:11:47 +02:00
Vladimir 'phcoder' Serbinenko
44a0efc180
* grub-core/net/bootp.c (grub_cmd_bootp): Fix packet allocation size.
2012-06-21 22:08:33 +02:00
Vladimir 'phcoder' Serbinenko
531e2241a6
* grub-core/net/drivers/emu/emunet.c (get_card_packet): Allocate the
...
reserved bytes.
* grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Likewise.
* grub-core/net/drivers/ieee1275/ofnet.c (get_card_packet): Likewise.
Handle malloc error correctly.
2012-06-21 22:05:41 +02:00
Vladimir 'phcoder' Serbinenko
cde393c9a3
* grub-core/script/execute.c (grub_script_arglist_to_argv): Escape
...
blocks.
2012-06-21 22:02:09 +02:00
Vladimir 'phcoder' Serbinenko
538478d082
* grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Fix double
...
increment.
2012-06-21 21:59:52 +02:00
Vladimir 'phcoder' Serbinenko
9b55efe09a
* grub-core/net/dns.c (grub_cmd_nslookup): Use configured DNS servers if
...
none is explicitly specified.
2012-06-21 00:14:51 +02:00
Vladimir 'phcoder' Serbinenko
9eb832c365
* grub-core/net/dns.c (grub_net_add_dns_server): Don't erase old servers
...
while reallocating.
2012-06-20 23:51:56 +02:00
Vladimir 'phcoder' Serbinenko
d6b7c7c986
Respect netmask from bootp/dhcp.
...
* grub-core/net/bootp.c (parse_dhcp_vendor): Parse mask.
(grub_net_configure_by_dhcp_ack): Use mask and grub_net_add_ipv4_local.
* grub-core/net/net.c (grub_net_add_addr): Split creating local route
into ...
(grub_net_add_ipv4_local): ... this.
(grub_cmd_addaddr): Use grub_net_add_ipv4_local.
* include/grub/net.h (GRUB_NET_BOOTP_NETMASK): New enum value.
(grub_net_add_ipv4_local): New proto.
2012-06-20 23:46:50 +02:00
Vladimir 'phcoder' Serbinenko
67caf9eb06
* grub-core/loader/i386/linux.c (grub_linux_boot): Setup video before
...
determining EFI memory map size.
2012-06-20 23:39:33 +02:00
Vladimir 'phcoder' Serbinenko
436575581e
* grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Escape commas.
2012-06-20 23:37:24 +02:00
Vladimir 'phcoder' Serbinenko
eb6d0dd3a1
* grub-core/kern/main.c (grub_set_prefix_and_root): Skip escaped commas
...
when looking for partition separator.
2012-06-20 23:33:34 +02:00
Vladimir 'phcoder' Serbinenko
3123054474
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname):
...
Escape commas.
2012-06-20 23:31:59 +02:00
Vladimir 'phcoder' Serbinenko
918a25179c
Restructure FAT driver to avoid hook in label reading as it hits a
...
GCC bug.
* include/grub/err.h (grub_err_t): New enum value GRUB_ERR_EOF.
* grub-core/fs/fat.c (grub_fat_iterate_context): New struct.
(grub_fat_iterate_dir): Split into ...
(grub_fat_iterate_init): ... this, ...
(grub_fat_iterate_fini): ... this, ...
(grub_fat_iterate_dir_next): ... and this. All users updated.
2012-06-20 23:29:28 +02:00
Vladimir 'phcoder' Serbinenko
9f1d654e67
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value
...
GRUB_IEEE1275_FLAG_BROKEN_REPEAT.
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
GRUB_IEEE1275_FLAG_BROKEN_REPEAT on PowerBook3,3.
* include/grub/terminfo.h (grub_terminfo_input_state) [__powerpc__]:
New fields last_key and last_key_time.
* grub-core/term/terminfo.c (grub_terminfo_getkey): Transform
extended key-esc into extended key-extended key.
2012-06-20 22:19:26 +02:00
Vladimir 'phcoder' Serbinenko
52f0f64384
Avoid unnecessary memcpy of whole video buffer.
...
* grub-core/video/fb/video_fb.c (dirty): New struct.
(framebuffer): Add members current_dirty and previous_dirty.
(dirty): New function.
(grub_video_fb_fill_rect): Update dirty.
(common_blitter): Likewise.
(grub_video_fb_scroll): Likewise.
(doublebuf_blit_update_screen): Copy only dirty part.
(doublebuf_pageflipping_update_screen): Likewise.
(grub_video_fb_doublebuf_blit_init): Init dirty.
(doublebuf_pageflipping_init): Likewise.
(grub_video_fb_setup): Likewise.
2012-06-19 19:34:51 +02:00
Vladimir 'phcoder' Serbinenko
e169a1805f
* grub-core/net/drivers/ieee1275/ofnet.c (search_net_devices): Decrease
...
poll rate.
2012-06-19 15:44:51 +02:00
Vladimir 'phcoder' Serbinenko
485568790c
Fix wildcard regexp dot and other special characters handling.
...
Reported by: Robert Mabee.
* grub-core/commands/wildcard.c (isregexop): Add "|+{}[]?".
(make_regex): Escape "|+{}[]". Transform '?' to '.?'.
(split_path): Trigger expansion on '?'.
(unescape): New function.
(wildcard_expand): Unescape parts copied without globbing.
* grub-core/script/execute.c (wildcard_escape): Escape '?'.
(grub_script_arglist_to_argv): Don't unescape expansions.
2012-06-19 14:13:19 +02:00
Vladimir 'phcoder' Serbinenko
0494408e7e
* include/grub/net.h (grub_net_card): New member txbufsize.
...
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum values
GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX and
GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN.
* grub-core/net/drivers/efi/efinet.c (grub_efinet_findcards): Use
txbufsize.
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Use
compatible property to check for macs. Set
GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX and
GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN on macs.
* grub-core/net/drivers/ieee1275/ofnet.c (card_open): Don't add suffix
if GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX is set.
(send_card_buffer): Use txbuf.
(grub_ofnet_findcards): Allocate txbuf. Simplify code flow and move
nested function out of the parent while on it.
2012-06-19 11:34:52 +02:00
Vladimir 'phcoder' Serbinenko
cc35fe8f31
* grub-core/net/drivers/ieee1275/ofnet.c (get_card_packet): Fix packet
...
presence check.
(grub_ieee1275_net_config_real): Fix config pointer.
2012-06-19 11:25:37 +02:00