[syslinux] Upgraded to Syslinux 5.00 - Failed to load ldlinux.c32

Paulo Alcantara pcacjr at gmail.com
Wed Jan 9 16:24:15 PST 2013


On Wed, Jan 9, 2013 at 6:00 PM, Matt Fleming <matt at console-pimps.org> wrote:
> On Wed, 2013-01-02 at 15:39 +0000, Matt Fleming wrote:
>> On Thu, 2012-12-20 at 20:53 -0800, H. Peter Anvin wrote:
>> > On 12/19/2012 04:44 AM, Paulo Alcantara wrote:
>> > >
>> > > The ldlinux.c32 could be installed in any path, however Syslinux won't
>> > > be able to find it in paths other than those in search_directories
>> > > array.
>> > >
>> >
>> > The real issue is that the install directory should be automatically
>> > added to the array... not sure why that isn't happening.
>>
>> Me neither. I was pretty certain that this worked because CurrentDirName
>> should be set to the installation directory on boot.
>>
>> I'll take a look at this.
>
> Interestingly, this feature was broken with the following commit,
>
> commit a126f17f663c438ef264a459fa130951dbac780d
> Author: Paulo Alcantara <pcacjr at zytor.com>
> Date:   Fri Jun 8 16:20:15 2012 -0300
>
>     EXTLINUX: Initial XFS filesystem support
>
> .. because of this...
>
> +
> +    sscanf(filename, "%s%cldlinux.sys", path, &slash);
> +
> +    /* Map the file, and patch the initial sector accordingly */
> +    modbytes = patch_file_and_bootblock(fd, path, devfd);
>
> that sscanf() doesn't work, 'path' contains the *full* path, not the
> installation subdir. I fixed it with the patch below. Does it look OK?

Aha! Good catch.

Looks like I broke Syslinux. Sorry about that. :-(

/me spanks himself.

-Paulo Alcantara


More information about the Syslinux mailing list