profile/ivi/syslinux.git
12 years agohdt: Adding nomodule support in cli
Erwan Velu [Sun, 27 May 2012 09:41:39 +0000 (11:41 +0200)]
hdt: Adding nomodule support in cli

Some new commands might need being able to manage the argv directly
instead of the much more oriented scheme we had until now.

This commit add a .nomodule option to cli object to explically tell they
don't have a module as parameter but only arguments.

This will be needed for the 'say' command.

12 years agohdt: Fixing argument mgmt in cli
Erwan Velu [Sun, 27 May 2012 09:20:01 +0000 (11:20 +0200)]
hdt: Fixing argument mgmt in cli

Sizeof(char *) is definetly wrong for getting the length of a string.

12 years agohdt: Adding more debug traces in cli
Erwan Velu [Sun, 27 May 2012 06:27:49 +0000 (08:27 +0200)]
hdt: Adding more debug traces in cli

Adding more debug traces in the cli management to ease debugging &
feature adding.

12 years agohdt: Fixing chain32 target in makefile
Erwan Velu [Fri, 25 May 2012 21:31:42 +0000 (23:31 +0200)]
hdt: Fixing chain32 target in makefile

chain32 moved, let's adjust the "release" target.

12 years agoMerge remote-tracking branch 'hpa/master'
Erwan Velu [Fri, 25 May 2012 21:08:35 +0000 (23:08 +0200)]
Merge remote-tracking branch 'hpa/master'

12 years agoMerge remote-tracking branch 'genec/diag-geodsp-perl-for-hpa'
H. Peter Anvin [Wed, 25 Apr 2012 22:32:34 +0000 (15:32 -0700)]
Merge remote-tracking branch 'genec/diag-geodsp-perl-for-hpa'

12 years agolibinstaller: Avoid using <linux/ext2_fs.h> syslinux-4.06-pre3
H. Peter Anvin [Tue, 27 Mar 2012 05:51:09 +0000 (22:51 -0700)]
libinstaller: Avoid using <linux/ext2_fs.h>

Don't use <linux/ext2_fs.h> if we can avoid it.

The ioctl constants have been globalized and moved to <linux/fs.h>.
Use a private copy of ext2_fs.h from e2fsprogs with the ioctl
constants removed for the data structures.

Do at least attempt backward compatibility for old kernel headers, but
no real hope of proper operation there...

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoversion: Update year to 2012
H. Peter Anvin [Mon, 26 Mar 2012 22:44:15 +0000 (15:44 -0700)]
version: Update year to 2012

It is the year MMXII of the Common Era...

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agoMakefile: Use -Ox option to NASM
H. Peter Anvin [Mon, 26 Mar 2012 21:59:39 +0000 (14:59 -0700)]
Makefile: Use -Ox option to NASM

We already require a new enough version of NASM that the -Ox option is
supported, so just use it.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agoMerge branch 'chaindev'
H. Peter Anvin [Mon, 26 Mar 2012 21:58:42 +0000 (14:58 -0700)]
Merge branch 'chaindev'

12 years agochain.c: Fix misplaced #endif breaking non-DEBUG builds
H. Peter Anvin [Mon, 26 Mar 2012 21:57:54 +0000 (14:57 -0700)]
chain.c: Fix misplaced #endif breaking non-DEBUG builds

Fix misplaced #endif which made it impossible to build without DEBUG.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agoisohybrid: Generate MBR even when in EFI mode
Matthew Garrett [Wed, 15 Feb 2012 17:12:17 +0000 (12:12 -0500)]
isohybrid: Generate MBR even when in EFI mode

Various EFI systems insist that there be no active flag in the pMBR in
order to parse the GPT. The only way around this is to also generate a
valid MBR - the firmware will then pick that up and use the system
partition provided there. In order to deal with other EFI "sanity" checks,
the partition type for the non-EFI partitions is set to 0 to skip the
firmware bailing because of overlapping partitions.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agoaltmbr: actually invoke the correct partition syslinux-4.06-pre2
H. Peter Anvin [Wed, 21 Mar 2012 22:56:02 +0000 (15:56 -0700)]
altmbr: actually invoke the correct partition

We would fail to correctly invoke primary partitions 2-4 because of a
register usage bug.

Reported-by: Maxim Kammerer <mk@dee.su>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agocom32/lib/pci/scan.c: Fix free_pci_domain()
Henri Roosen [Wed, 7 Sep 2011 07:16:11 +0000 (09:16 +0200)]
com32/lib/pci/scan.c: Fix free_pci_domain()

free_pci_domain is releasing the memory too early; should be out
of the for loops, because in the loop the memory is still dereferenced.

12 years agoMerge remote-tracking branch 'hpa/master'
Erwan Velu [Fri, 24 Feb 2012 19:56:32 +0000 (20:56 +0100)]
Merge remote-tracking branch 'hpa/master'

12 years agoNEWS: trivial change
Paulo Alcantara [Sun, 12 Feb 2012 03:05:46 +0000 (00:05 -0300)]
NEWS: trivial change

Change Paulo Cezar to Paulo Alcantara.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: check for index entry which has INDEX_ENTRY_END flag set
Paulo Alcantara [Sun, 12 Feb 2012 02:14:54 +0000 (23:14 -0300)]
ntfs: check for index entry which has INDEX_ENTRY_END flag set

In ntfs_readdir(), if one entry has INDEX_ENTRY_END flag set, it won't
contain indexed_file member, that'd be used afterwards when looking for
the MFT record that is associated with that index entry.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: remove wrong checks
Paulo Alcantara [Sun, 12 Feb 2012 00:24:56 +0000 (21:24 -0300)]
ntfs: remove wrong checks

As an attribute may be stored in a NTFS record rather than the current
record being used, these checks wouldn't work anymore for this case.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: keep looking for attributes with the latest found MFT record
Paulo Alcantara [Mon, 6 Feb 2012 03:43:55 +0000 (00:43 -0300)]
ntfs: keep looking for attributes with the latest found MFT record

Once ntfs_attr_lookup() is called, it may change the MFT record passed
as parameter so that the next calls that need the latest found MFT
record don't have it anymore. So the __ntfs_attr_lookup() variant will
provide support to the ntfs_attr_lookup() function handling both old
and new MFT records.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: MFT record may be changed when invoking ntfs_attr_lookup()
Paulo Alcantara [Sun, 29 Jan 2012 21:14:06 +0000 (18:14 -0300)]
ntfs: MFT record may be changed when invoking ntfs_attr_lookup()

After invoking ntfs_attr_lookup(), the attribute type that we're looking
for may be allocated in a other MFT record, so the parameter which gets
the current MFT record can be changed once to point to the other MFT
record that actually contains the wanted attribute type.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: add missing field in ntfs_attr_list_entry structure
Paulo Alcantara [Tue, 24 Jan 2012 02:38:58 +0000 (23:38 -0300)]
ntfs: add missing field in ntfs_attr_list_entry structure

This missing field just messed up when reading the
ntfs_attr_list_entry's fields to be used in any case. Also add a
check to avoid reading the same MFT record which contains the
attribute list and also the wanted attribute type.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: print function names on debug mode
Paulo Alcantara [Tue, 24 Jan 2012 01:27:37 +0000 (22:27 -0300)]
ntfs: print function names on debug mode

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: handle offsets when walking through attribute list's entries
Paulo Alcantara [Thu, 19 Jan 2012 00:18:25 +0000 (21:18 -0300)]
ntfs: handle offsets when walking through attribute list's entries

Instead of either hanging out or printing a fatal message on the screen
when not finding attributes from attribute list's entries, handle
offsets that will determine if we reached end of a attribute list.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: handle MFT records that contain $ATTRIBUTE_LIST attribute
Paulo Alcantara [Sat, 7 Jan 2012 00:39:28 +0000 (21:39 -0300)]
ntfs: handle MFT records that contain $ATTRIBUTE_LIST attribute

MFT records that contain $ATTRIBUTE_LIST attributes, for example, are
those that there are many hards links, or the file itself is very
fragmented, and so on.

So when attributes of a MFT record that don't fit in a MFT record, those
will be stored in one or more MFT records and can be found through the
attribute list's entries of the MFT record being acessed, which are in
the $ATTRIBUTE_LIST attribute.

ntfs_attr_list_lookup() function will be called once we didn't find the
attribute within the MFT record itself so that the attribute will presumably
be stored in another MFT record, according to the information that has
been retrieved from the attribute list's entry.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agoldlinux: workaround for avoiding EDD error on btrfs probe
Paulo Alcantara [Sun, 25 Dec 2011 19:33:15 +0000 (16:33 -0300)]
ldlinux: workaround for avoiding EDD error on btrfs probe

When installing Syslinux in an NTFS volume and then booting it up,
Syslinux will print on the screen an EDD error ocurred on btrfs probing
because that volume is not actually a btrfs one. Thus, to work around
that issue add ntfs_fs_ops structure just before the btrfs_fs_ops so
that fs_init() function will execute the ntfs_fs_ops->fs_init() function
first, and on success, btrfs_fs_ops->fs_init() won't be executed either.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: fix POSIX vs Win32 filename compares
Paulo Alcantara [Sun, 25 Dec 2011 18:36:19 +0000 (15:36 -0300)]
ntfs: fix POSIX vs Win32 filename compares

When using the COMBOOT32 module "ls" for listining directory entries on
an NTFS volume, for e.g. directories as "/Foobar" (a Win32 filename)
could be only listed as "ls.c32 /foobar" and neither "ls.c32
"/Foobar" nor "ls.c32 /FOOBAR". POSIX filenames must be handled in a
case-sensitivity way, while Win32 filenames are handled in a
non-case-sensitivity way.

Note also that the POSIX/Win32 filename compare is done in the
ntfs_filename_cmp() function.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agontfs: fix license headers
Paulo Alcantara [Sun, 25 Dec 2011 17:54:37 +0000 (14:54 -0300)]
ntfs: fix license headers

Add missing year information in the license headers.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
12 years agoMerge remote-tracking branch 'pcacjr/mingw-ubuntu-prefix-for-hpa'
H. Peter Anvin [Thu, 9 Feb 2012 00:00:14 +0000 (16:00 -0800)]
Merge remote-tracking branch 'pcacjr/mingw-ubuntu-prefix-for-hpa'

12 years agoextlinux: use sysfs to find the device node if need be
H. Peter Anvin [Wed, 8 Feb 2012 18:15:50 +0000 (10:15 -0800)]
extlinux: use sysfs to find the device node if need be

If neither /proc/mounts nor /etc/mtab contains a functional pointer to
the device node for the installer, try to see if we can find the
device node by looking for a symlink in /sys/dev/block.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoextlinux: clean up main.c formatting
H. Peter Anvin [Wed, 8 Feb 2012 17:59:50 +0000 (09:59 -0800)]
extlinux: clean up main.c formatting

Clean up some ugly formatting in main.c.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoextlinux: main.c should not be executable
H. Peter Anvin [Wed, 8 Feb 2012 17:57:27 +0000 (09:57 -0800)]
extlinux: main.c should not be executable

Remove stray x bit.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agobootsect.inc: try to catch obvious .0 problems
H. Peter Anvin [Mon, 6 Feb 2012 20:12:26 +0000 (12:12 -0800)]
bootsect.inc: try to catch obvious .0 problems

A typical Linux kernel will be way, way too big for the low memory
bootstrap area, so throw an error message if we end up in the
bootstrap path with something that cannot possibly fit below 640K.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agostrreplace: additional cleanups
H. Peter Anvin [Mon, 6 Feb 2012 19:14:39 +0000 (11:14 -0800)]
strreplace: additional cleanups

Additional formatting cleanups.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agostrreplace: clean up and simplify
H. Peter Anvin [Mon, 6 Feb 2012 19:08:45 +0000 (11:08 -0800)]
strreplace: clean up and simplify

Clean up and simplify strreplace(); in particular there is no need to
call strlen() repeatedly on the same strings.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agowin32: add new mingw prefix
Paulo Alcantara [Thu, 26 Jan 2012 17:14:50 +0000 (14:14 -0300)]
win32: add new mingw prefix

This prefix is used on at least Ubuntu 12.04 when installing the
mingw-w64 package.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
Reported-by: Gert Hulselmans <hulselmansgert@gmail.com>
12 years agolua: Adding dhcp support
Timm Gleason [Sat, 7 Jan 2012 16:09:18 +0000 (17:09 +0100)]
lua: Adding dhcp support

Adds DHCPINFO functionality to the lua.c32 binary

 gettable() returns a table of the BOOTP message fields returned by
 the DHCP server for use in a Lua pxeboot script
 See http://tools.ietf.org/html/rfc1542

     lua key value           RFC key
 -----------------------------------------------------------------------
      opcode                  op       message opcode
      hardware.type           htype    Hardware address type
      hardware.length         hlen     Hardware address length
      hops                    hops     Used by relay agents
      transaction.id          xid      transaction id
      elapsed.seconds         secs     Secs elapsed since client boot
      flags                   flags    DHCP Flags field
      client.ip.addr          ciaddr   client IP addr
      your.ip.addr            yiaddr   'Your' IP addr. (from server)
      server.ip.addr          siaddr   Boot server IP addr
      gateway.ip.addr         giaddr   Relay agent IP addr
      client.mac              chaddr   Client hardware addr
      server.hostname         sname    Optl. boot server hostname
      boot.file               file     boot file name (ascii path)
      magic.cookie            cookie   Magic cookie

 getoptions() returns a table of the DHCP Options field of the BOOTP
 message returned by the DHCP server for use in a Lua pxeboot script.
 Many of the options are reurned formatted in as strings in a
 standard,
 recognizable format, such as IP addresses.

 1, 2, and 4 byte numerical options are returned as integers.

 Other Options with non-standard formats are returned as strings of
 the
 raw binary number that was returned by the DHCP server and must be
 decoded in a Lua script

 The Options table returns the Option code as the key except where
 there
 are multiple values returned. In those cases, an extra key increment
 number
 is added to allow individual access to each Option value.

      lua key value           value Name
 -----------------------------------------------------------------------
      1                       Subnet Mask
      6.1                     DNS Server [element 1]
      6.2                     DNS Server [element 2]
      6.3                     DNS Server [element 3]
      209                     PXE Configuration File
      21.1                    Policy Filter [element 1]
      21.2                    Policy Filter [element 2]

 Options that can have a list of values, but contain only one (like
 Option 6)
 will not return with .sub key values.

 Usage:
            t = dhcp.gettable()

            for k,v in pairs(t) do
              print(k.." : "..v)
            end

12 years agoifcpu: Adding hypervisor support
Erwan Velu [Sat, 7 Jan 2012 16:08:02 +0000 (17:08 +0100)]
ifcpu: Adding hypervisor support

This simple hack add the ability to detect the hypervisor presence.

12 years agodiag/geodsp: Use perl to make the image; Fix Makefile
Gene Cumm [Sun, 1 Jan 2012 04:32:44 +0000 (23:32 -0500)]
diag/geodsp: Use perl to make the image; Fix Makefile

This reduces the host binary dependence and prevents the need for a
rebuild of the images after a 'make clean'.

This has the unfortunate side effect of going from 0.03s to 0.30s to
build an image.

Also fix Makefile to include (optional) raw targets and use $(GZIPPROG)

Signed-off-by: Gene Cumm <gene.cumm@gmail.com>
12 years agodiag/geodsp: add mk-lba-img.pl
Gene Cumm [Sun, 24 Apr 2011 23:10:19 +0000 (19:10 -0400)]
diag/geodsp: add mk-lba-img.pl

To be used to replace the native C binary

12 years agogpllib/disk: Massive updates of fs labels
Erwan Velu [Thu, 22 Dec 2011 22:23:06 +0000 (23:23 +0100)]
gpllib/disk: Massive updates of fs labels

Inspired by Gerth and updated from both fdisk list & also from
http://www.win.tue.nl/~aeb/partitions/partition_types-1.html

12 years agohdt: Adding postexec= option
Erwan Velu [Sat, 17 Dec 2011 21:27:07 +0000 (22:27 +0100)]
hdt: Adding postexec= option

When HDT is exiting, you might need executing something else.
This could be used in the following scenario :

You start HDT, do an automatic command like 'dump; exit', but then after
you might need to launch something else from syslinux.

The postexec option will allow you to define what label you'd love
running one HDT got terminated.

Syntaxt is like the following:

postexec='menu_label_to_run_once_hdt_got_exited'

Note the quotes (') after the equal sign (=)

This could looks like :
APPEND auto='dump; exit' postexec='memtest'

12 years agohdt: On the road to 0.5.2
Erwan Velu [Sat, 17 Dec 2011 16:02:43 +0000 (17:02 +0100)]
hdt: On the road to 0.5.2

12 years agoMerge remote-tracking branch 'hpa/master'
Erwan Velu [Sat, 17 Dec 2011 15:23:37 +0000 (16:23 +0100)]
Merge remote-tracking branch 'hpa/master'

12 years agoClarify the license for the Syslinux logo syslinux-4.06-pre1
H. Peter Anvin [Wed, 14 Dec 2011 18:46:23 +0000 (10:46 -0800)]
Clarify the license for the Syslinux logo

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoversion: now working on version 4.06
H. Peter Anvin [Wed, 14 Dec 2011 18:39:29 +0000 (10:39 -0800)]
version: now working on version 4.06

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoNEWS: document NTFS support
H. Peter Anvin [Wed, 14 Dec 2011 18:39:10 +0000 (10:39 -0800)]
NEWS: document NTFS support

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agofind-mingw64: yet another set of prefixes to test...
H. Peter Anvin [Tue, 13 Dec 2011 23:52:28 +0000 (15:52 -0800)]
find-mingw64: yet another set of prefixes to test...

This seems to be the current set of prefixes used by the Fedora-cross
project.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
12 years agoMerge remote-tracking branch 'pcacjr/ntfs-for-hpa'
H. Peter Anvin [Tue, 13 Dec 2011 23:34:59 +0000 (15:34 -0800)]
Merge remote-tracking branch 'pcacjr/ntfs-for-hpa'

12 years agoAdd logo by Abi Rasheed syslinux-4.05
H. Peter Anvin [Fri, 9 Dec 2011 18:28:17 +0000 (10:28 -0800)]
Add logo by Abi Rasheed

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoMakefile.private: remove obsolete target syslinux-4.05-pre7
H. Peter Anvin [Wed, 7 Dec 2011 18:03:23 +0000 (10:03 -0800)]
Makefile.private: remove obsolete target

Remove target made obsolete by upstream changes.

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
12 years agoNEWS: document mk-lba-img removal
H. Peter Anvin [Tue, 6 Dec 2011 05:46:34 +0000 (21:46 -0800)]
NEWS: document mk-lba-img removal

12 years agodiag/geodsp: don't distribute mk-lba-img
H. Peter Anvin [Mon, 5 Dec 2011 23:31:46 +0000 (15:31 -0800)]
diag/geodsp: don't distribute mk-lba-img

Do not distribute the mk-lba-img host tool binary.

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
13 years agoMerge remote-tracking branch 'hpa/master'
Erwan Velu [Wed, 2 Nov 2011 19:15:22 +0000 (20:15 +0100)]
Merge remote-tracking branch 'hpa/master'

13 years agohdt: Don't search HDDs when no HDD got detected
Erwan Velu [Thu, 22 Sep 2011 18:52:49 +0000 (20:52 +0200)]
hdt: Don't search HDDs when no HDD got detected

13 years agohdt: Avoid memory corruption on menu summary
Erwan Velu [Thu, 22 Sep 2011 20:44:53 +0000 (22:44 +0200)]
hdt: Avoid memory corruption on menu summary

During CPU's capabilites computation, let's sure the buffer we manage is
big enought....

13 years agohdt: Dumping disk failed when disk are present
Erwan Velu [Wed, 21 Sep 2011 19:44:47 +0000 (21:44 +0200)]
hdt: Dumping disk failed when disk are present

When physical disks were present, the computed items were not flushed
and so not present on the disk file.

Thanks to pscheie for reporting this.

13 years agontfs: keep a state structure for ntfs_readdir() callers
Paulo Alcantara [Tue, 20 Sep 2011 02:45:19 +0000 (02:45 +0000)]
ntfs: keep a state structure for ntfs_readdir() callers

Latetly, we kept a state information within the inode structure, that
was actually a mistake. Now, a ntfs_readdir_state structure is allocated
to keep a state that'll help on listing directory entries from sucessive
ntfs_readdir() calls.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: cleanups
Paulo Alcantara [Wed, 7 Sep 2011 22:02:56 +0000 (22:02 +0000)]
ntfs: cleanups

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: Check for disk read error during FS probing
Shao Miller [Sat, 3 Sep 2011 19:40:45 +0000 (15:40 -0400)]
ntfs: Check for disk read error during FS probing

If reading the NTFS BIOS parameter block fails for any reason,
we will not attempt to continue to work towards finding an
NTFS filesystem on the disk/partition.

Signed-off-by: Shao Miller <shao.miller@yrdsb.edu.on.ca>
Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: Deal with NTFS versions for MFT record lookups
Shao Miller [Thu, 1 Sep 2011 04:44:18 +0000 (04:44 +0000)]
ntfs: Deal with NTFS versions for MFT record lookups

The MFT record lookup strategies are different for NTFS
versions 3.0 and 3.1, so we use a function pointer for
the appropriate function.

We start off using 3.0 by default, then use that to read
the $Volume meta-file and find out the actual version.
Then we adjust the function pointer, as needed.

Signed-off-by: Shao Miller <shao.miller@yrdsb.edu.on.ca>
Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: use a runlist for handling multiple data runs
Paulo Alcantara [Wed, 7 Sep 2011 06:25:03 +0000 (06:25 +0000)]
ntfs: use a runlist for handling multiple data runs

NTFS files can contain multiple data runs, so use a runlist for handling
multiple data runs of a single file, and also modify ntfs_next_extent()
in order to support this new feature.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agowin: Fix an out-of-bounds array access
Shao Miller [Tue, 30 Aug 2011 00:21:09 +0000 (20:21 -0400)]
win: Fix an out-of-bounds array access

We should not attempt to make a map of more LDLINUX.SYS
sectors than we have.  Simply multiplying a cluster count
times the number of sectors per cluster does not account
for unused sectors in the last used cluster.

Signed-off-by: Shao Miller <shao.miller@yrdsb.edu.on.ca>
Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: don't start lookup from the same block in ntfs_mft_record_lookup()
Paulo Alcantara [Mon, 29 Aug 2011 05:49:32 +0000 (05:49 +0000)]
ntfs: don't start lookup from the same block in ntfs_mft_record_lookup()

ntfs_mft_record_lookup() always started its lookup from the same block,
which was though a mistake. So the lookup became very slow. Now
determine its starting block number from the calculated MFT record's LCN
number.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: fix ntfs_read()
Paulo Alcantara [Sun, 28 Aug 2011 21:40:46 +0000 (21:40 +0000)]
ntfs: fix ntfs_read()

lbytes variable wasn't set correctly.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: and more fixes...
Paulo Alcantara [Sat, 27 Aug 2011 04:31:34 +0000 (04:31 +0000)]
ntfs: and more fixes...

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agowin: Add further NTFS support to Windows installers
Shao Miller [Sun, 14 Aug 2011 23:41:24 +0000 (19:41 -0400)]
win: Add further NTFS support to Windows installers

We have a way of building a map of the LDLINUX.SYS sectors
on an NTFS filesystem, now.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
Signed-off-by: Shao Miller <shao.miller@yrdsb.edu.on.ca>
13 years agontfs: fix VCN calculation and the ntfs_readdir() function
Paulo Alcantara [Thu, 11 Aug 2011 03:46:06 +0000 (03:46 +0000)]
ntfs: fix VCN calculation and the ntfs_readdir() function

Now I'd recommend to test it :-)

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: more bugfixes
Paulo Alcantara [Tue, 9 Aug 2011 03:37:25 +0000 (03:37 +0000)]
ntfs: more bugfixes

Need more tests, hence I don't recommend to rely on it right now.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: fix ntfs_fs_init()
Paulo Alcantara [Thu, 4 Aug 2011 23:40:51 +0000 (23:40 +0000)]
ntfs: fix ntfs_fs_init()

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: I think ntfs_readdir() is now fixed
Paulo Alcantara [Tue, 2 Aug 2011 00:54:54 +0000 (00:54 +0000)]
ntfs: I think ntfs_readdir() is now fixed

gerth and sha0, you need to test it! :-)

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: fix ntfs_readdir()
Paulo Alcantara [Sun, 31 Jul 2011 21:00:13 +0000 (21:00 +0000)]
ntfs: fix ntfs_readdir()

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: mapping_chunk's length field must not be an uint8_t type
Paulo Alcantara [Fri, 29 Jul 2011 04:45:53 +0000 (04:45 +0000)]
ntfs: mapping_chunk's length field must not be an uint8_t type

Also change the other length field accordingly.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: better way to check whether a MFT record is file or directory
Paulo Alcantara [Fri, 29 Jul 2011 04:16:18 +0000 (04:16 +0000)]
ntfs: better way to check whether a MFT record is file or directory

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: and more speed improvements
Paulo Alcantara [Fri, 29 Jul 2011 04:03:29 +0000 (04:03 +0000)]
ntfs: and more speed improvements

gerth, you HAVE to test it! :-)

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: fix ntfs_match_longname() and make index_lookup() faster
Paulo Alcantara [Thu, 28 Jul 2011 22:56:31 +0000 (22:56 +0000)]
ntfs: fix ntfs_match_longname() and make index_lookup() faster

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: make index_inode_setup() faster
Paulo Alcantara [Thu, 28 Jul 2011 22:19:40 +0000 (22:19 +0000)]
ntfs: make index_inode_setup() faster

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: make ntfs_match_longname() faster
Paulo Alcantara [Thu, 28 Jul 2011 21:35:07 +0000 (21:35 +0000)]
ntfs: make ntfs_match_longname() faster

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: more cleanups
Paulo Alcantara [Thu, 28 Jul 2011 21:20:16 +0000 (21:20 +0000)]
ntfs: more cleanups

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: cleanups
Paulo Alcantara [Thu, 28 Jul 2011 03:49:34 +0000 (03:49 +0000)]
ntfs: cleanups

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: fix bug in parse_data_run()
Paulo Alcantara [Thu, 28 Jul 2011 00:11:28 +0000 (00:11 +0000)]
ntfs: fix bug in parse_data_run()

parse_data_run() used to get the wrong value of VCNs starting at LCN,
so it was only getting the value 1 and the NTFS driver didn't look at
the other VCNs.

Now, everything seems to work, except the readdir() function :-P

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: it's working, partially... :-/
Paulo Alcantara [Wed, 27 Jul 2011 01:35:36 +0000 (01:35 +0000)]
ntfs: it's working, partially... :-/

My tests were: menu.c32 (worked), cat.32 (worked, ls.c32 (not worked).
Looks like we have a bug in ntfs_readdir(). It will check it out later.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: continue on its implementation
Paulo Alcantara [Tue, 26 Jul 2011 04:19:51 +0000 (04:19 +0000)]
ntfs: continue on its implementation

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: heh :-)
Paulo Alcantara [Mon, 25 Jul 2011 00:24:24 +0000 (00:24 +0000)]
ntfs: heh :-)

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: set block shift and size to their correct values
Paulo Alcantara [Sun, 24 Jul 2011 20:36:25 +0000 (20:36 +0000)]
ntfs: set block shift and size to their correct values

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: implement fixups_realloc()
Paulo Alcantara [Sun, 24 Jul 2011 08:04:58 +0000 (08:04 +0000)]
ntfs: implement fixups_realloc()

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: implement ntfs_next_extent() and ntfs_getfssec()
Paulo Alcantara [Sat, 23 Jul 2011 16:52:20 +0000 (16:52 +0000)]
ntfs: implement ntfs_next_extent() and ntfs_getfssec()

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: implement ntfs_readdir()
Paulo Alcantara [Wed, 20 Jul 2011 23:27:13 +0000 (23:27 +0000)]
ntfs: implement ntfs_readdir()

Read one directory entry at one time.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: implement get_inode_mode()
Paulo Alcantara [Wed, 20 Jul 2011 01:59:23 +0000 (01:59 +0000)]
ntfs: implement get_inode_mode()

Determine the mode of an inode from a given file record.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: implement ntfs_iget()
Paulo Alcantara [Mon, 11 Jul 2011 17:17:26 +0000 (17:17 +0000)]
ntfs: implement ntfs_iget()

Return an allocated inode of a given UTF-16LE LFN passed as 2nd
argument.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: implement ntfs_iget_root()
Paulo Alcantara [Fri, 8 Jul 2011 01:59:33 +0000 (01:59 +0000)]
ntfs: implement ntfs_iget_root()

Return an allocated inode of the respective root directory along with
its information.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: implement for_each_mft_record() macro
Paulo Alcantara [Fri, 8 Jul 2011 00:57:26 +0000 (00:57 +0000)]
ntfs: implement for_each_mft_record() macro

Walk through the MFT records from a given block number. Also add more
NTFS-specific structures that'll be used in turn.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agontfs: implement new_ntfs_inode()
Paulo Alcantara [Thu, 7 Jul 2011 22:17:10 +0000 (22:17 +0000)]
ntfs: implement new_ntfs_inode()

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agoInitial NTFS readonly support code to Syslinux
Paulo Alcantara [Thu, 7 Jul 2011 21:28:05 +0000 (21:28 +0000)]
Initial NTFS readonly support code to Syslinux

Basically add the NTFS filesystem structures and also implement
ntfs_fs_init() to only initialize the filesystem metadata and return the
block size in bits.

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agoAdd NTFS filesystem support to Linux and Windows installers
Paulo Alcantara [Tue, 5 Jul 2011 21:32:51 +0000 (21:32 +0000)]
Add NTFS filesystem support to Linux and Windows installers

Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
13 years agoifmemdsk: remove spurious +x bit syslinux-4.05-pre6
H. Peter Anvin [Thu, 25 Aug 2011 17:58:44 +0000 (10:58 -0700)]
ifmemdsk: remove spurious +x bit

This is not an executable...

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
13 years agoMerge remote-tracking branch 'sha0/ifmemdsk'
H. Peter Anvin [Wed, 24 Aug 2011 22:40:05 +0000 (15:40 -0700)]
Merge remote-tracking branch 'sha0/ifmemdsk'

Conflicts:
NEWS

13 years agoNEWS: document isohybrid -m
H. Peter Anvin [Wed, 24 Aug 2011 22:39:35 +0000 (15:39 -0700)]
NEWS: document isohybrid -m

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
13 years agoisohybrid: Generate GPT and Mac bootable images
Matthew Garrett [Thu, 11 Aug 2011 18:58:09 +0000 (19:58 +0100)]
isohybrid: Generate GPT and Mac bootable images

EFI systems typically don't support booting off ISO 9660 filesystems,
even if written to USB sticks. This patch adds support for generating a
GPT that covers the stick as well, with an additional partition entry
pointing purely at the secondary El Torito image. When burned to CD the
secondary El Torito will be used as an EFI boot image, and when written
to a USB stick the GPT partition will be found and may be booted from.

However, some earlier EFI Macs don't support booting from El Torito
images via EFI. To cater for them this also supports generating an Apple
partition table, allowing a third El Torito image in HFS+ format to be
made available to the firmware. This requires padding the MBR images
slightly in order to leave space for the Apple header, but should have
no functional impact.

Sadly, this breaks the workaround for Acer BIOSes (magic xor
instruction) when Mac support is enabled via -m... not much that can
be done about that.

Signed-off-by: Matthew Garrett <mjg@redhat.com>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
13 years agoifmemdsk.c32: Allow boot options based on presence of MEMDISK
Shao Miller [Sat, 6 Aug 2011 09:24:46 +0000 (05:24 -0400)]
ifmemdsk.c32: Allow boot options based on presence of MEMDISK

Like 'ifcpu.c32' and 'ifplop.c32', this COMBOOT32 module will
check for the presence of MEMDISK(s) and choose one of two
(optionally) specified commands.

Signed-off-by: Shao Miller <shao.miller@yrdsb.edu.on.ca>
13 years agoUse PRIu64 instead of %llu, where appropriate
Michal Soltys [Mon, 1 Aug 2011 21:09:13 +0000 (23:09 +0200)]
Use PRIu64 instead of %llu, where appropriate

Signed-off-by: Michal Soltys <soltys@ziu.info>