bugGNU GRUB - Bugs: bug #35193, Grub2 doesn't use info in boot...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #35193: Grub2 doesn't use info in boot server packets

Submitter:  Tyson Whitehead <twhitehead>
Submitted:  Thu 29 Dec 2011 11:15:45 PM UTC
Votes: 200
 
Category:  Network Severity:  Major
Priority:  5 - Normal Item Group:  None
Status:  None Privacy:  Public
Assigned to:  None Originator Name: 
Open/Closed:  Open Release:  other
Release:  Reproducibility:  Every Time
Planned Release:  2.03+

Mon 04 Nov 2013 05:47:06 PM UTC, comment #5: 

Sorry about that.  Just busy.

Thanks very much for putting together a patch.

I'll give this a try as soon as I can and get back to you.

Tyson Whitehead <twhitehead>
Mon 04 Nov 2013 05:18:18 PM UTC, comment #4: 

Could you try the attached patch? I didn't manage to make DHCP offer and DHCP Ack disagree in my tests.

(file #29537)

Vladimir Serbinenko <phcoder>
Group administrator
Thu 10 Jan 2013 12:24:17 AM UTC, comment #3: 

As you can see in Figure 2-4 in the specification (top of page 18)

http://download.intel.com/design/archives/wfm/downloads/pxespec.pdf

the PXE client actually gets input from a variety of packets (DHCP server, DHCP proxy server, and boot server).  All of these can contain various options.  Section 2.4.1 specifies the precedence order between them.

The existing grub code was entirely ignores the options specified in the boot server response.  This caused the examples below to fail.  The patch I wrote fixed this.

Cheers!  -Tyson

PS:  The patch was based on the latest version of grub2 in debian experimental at the time I wrote it because the first thing I tried when it didn't work was getting the latest version.  I had assumed this was relatively up-to-date.

Tyson Whitehead <twhitehead>
Wed 09 Jan 2013 09:06:03 PM UTC, comment #2: 

Even when posted this patch was for an outdated version of GRUB and its updating isn't trivial. Also I also fail to see the rationale behind this patch. There is only one response on the network. Where does this other packet come from?

Vladimir Serbinenko <phcoder>
Group administrator
Wed 09 Jan 2013 04:42:48 PM UTC, comment #1: 

Just wondering if this has fallen down a blackhole?

Should I have pushed this patch somewhere else instead?

Thanks!  -Tyson

Tyson Whitehead <twhitehead>
Thu 29 Dec 2011 11:15:45 PM UTC, original submission:  

Currently grub2 only processes the DHCP ACK package.

When PXE booting this can result in missed PXE options (as the boot server can supplement them) and grub not getting the IP address for the TFTP server that served the core image (as this information may not even be in the DHCP package).

I've put together a patch that adds parsing the boot server packet as well to make sure all the required information gets extracted.  It gives precedence to DHCP PXE options (as required by the PXE spec) and boot server IP addresses/file names.

An example of a situation that doesn't work before this patch is running dnsmasq on a local 192.168.1.x network in proxy mode along side a regular DHCP server that doesn't provide booting services.  The dnsmasq parameters are

enable-tftp
tftp-root=/srv/tftp
pxe-service=x86PC, "GRUB", boot/grub/i386-pc/core
dhcp-range=192.168.1.0,proxy,255.255.255.0

Another example would be a remote TFTP server setup, such as

pxe-service=x86PC, "GRUB", boot/grub/i386-pc/core, 192.168.1.1

Cheers!  -Tyson

PS:  This should address the wrong server issue (DHCP vs boot) in 33348 but doesn't do anything to add http support.

Tyson Whitehead <twhitehead>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attached Files
file #29537:  pxe.diff added by phcoder (7KiB - text/x-diff)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by mdhowle (Voted in favor of this item)
  • -email is unavailable- added by jarell (Voted in favor of this item)
  • -email is unavailable- added by phcoder (Posted a comment)
  • -email is unavailable- added by twhitehead (Submitted the item)
  •  

    There are 200 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

     

    Follow 6 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2019-08-09 mdhowle Carbon-Copy- Added mdhowle
    2017-03-05 phcoder Planned Release2.02 2.03+
    2017-02-20 jarell Carbon-Copy- Added jarell
    2016-03-02 phcoder Planned ReleaseNone 2.02
    2013-11-04 phcoder Attached File- Added pxe.diff, #29537
    2011-12-29 twhitehead Attached File- Added 0001-Include-PXE-info-from-boot-server-too-instead-of-jus.patch, #24711

    Back to the top

    Powered by Savane 3.13-4448.
    Corresponding source code