Skip to content

Error when using Shim (at least) 15.8 and DHCP Option 67 with non-Microsoft DHCP server #710

@MarkusSpier

Description

@MarkusSpier

When attempting to boot Shim version 15.8 via DHCP and Option 67, an error occurs. In conjunction with a non-Microsoft DHCP server, the path is set incorrectly.

For example, if you set the path in Option 67 to: <some_directory>\shim_x64.efi so that it should look for grub2 in a subfolder, an error occurs. Grub2 is incorrectly requested directly from the root directory without the subfolder.

The error seems to occur because, with Option 67 set, the filename from the header is still used. If this is empty, subsequent requests are always made without the subfolder!

Since Microsoft DHCP apparently also sets the header by default when setting Option 67, this error is not observed here. However, if you use, for example, IPFire DHCP and only set Option 67 (here "option bootfile-name"), the header (here "filename") remains empty.

Actually, Shim should use the path set in Option 67 and not the one from the header in this scenario!

This error does not occur in an older version (15.4). It must have been introduced between 15.4 and 15.8.

Is this error known and will it be fixed in the next version?

Example in Microsoft DHCP:

MS-DHCP

Example in IPFire DHCP:

IPFire

If you set here only the option 67, the error occurs. If you set also the header (filename) it works (like in this image)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions