Bug#826844: netcfg ignoring BOOTF= in kernel cmdline

2016-10-23 Thread James Mackie
Hi Philipp,

Thanks for your response. Yeah I actually figured that out after looking
looking at the netcfg code and seeing the "01-" being purposefully excluded
from the address capture. So then I looked up the specification for
PXELINUX and saw the hardware type at the start.

So, I've just hardcoded (eww) a "01-" before the ${netX/mac} in the iPXE
config.

Thanks for the answer! And sorry for not updating this sooner. This can
probably be closed as a non-issue, but not sure if it's worth while adding
a comment to the code, or something.

Regards,
James

On Mon, Oct 24, 2016 at 9:48 AM, Philipp Kern  wrote:

> On 06/09/2016 01:11 PM, James Mackie wrote:
> > This is me checking /proc/cmdline:
> > ~ # cat /proc/cmdline
> > auto=true priority=critical url=http://thebooting.dev2.internal/preseed
> > interface=auto DEBCONF_DEBUG=5 BOOTIF=0c:c4:7a:8e:ad:4a
>
> BOOTIF= is generated by PXELINUX, which also prepends a hardware type.
> (That's its defined interface.)
>
> Completely from memory you might want to try 01-0c-c4-7a-8e-ad-4a for
> the BOOTIF.
>
> Kind regards
> Philipp Kern
>
>


Bug#826844: netcfg ignoring BOOTF= in kernel cmdline

2016-10-23 Thread Philipp Kern
On 06/09/2016 01:11 PM, James Mackie wrote:
> This is me checking /proc/cmdline:
> ~ # cat /proc/cmdline
> auto=true priority=critical url=http://thebooting.dev2.internal/preseed
> interface=auto DEBCONF_DEBUG=5 BOOTIF=0c:c4:7a:8e:ad:4a

BOOTIF= is generated by PXELINUX, which also prepends a hardware type.
(That's its defined interface.)

Completely from memory you might want to try 01-0c-c4-7a-8e-ad-4a for
the BOOTIF.

Kind regards
Philipp Kern



signature.asc
Description: OpenPGP digital signature


Bug#826844: netcfg ignoring BOOTF= in kernel cmdline

2016-06-09 Thread James Mackie
Package: netcfg
Version: 1.131+deb8u1
Severity: important

The version is based off the
http://ftp.nl.debian.org/debian/dists/jessie/main/installer-amd64/current/images/udeb.list

I am trying to initiate a full hands off installation of Jessie on a remote
server.
We use iPXE to pass boot information, and I use:
BOOTIF=${netX/mac}

to have iPXE pass the MAC of the boot interface to Jessie d-i. However
netcfg refuses to parse the MAC from /proc/cmdline even though I can see it
there.

Here is the output from /var/log/syslog (DEBCONF_DEBUG=5 is set)
(paraphrased because I'm typing this out by hand):
~ # grep BOOTIF /var/log/syslog
kernel: [0.0] Command line: auto=true priority=critical url=
http://thebooting.dev2.internal/preseed interface=auto DEBCONF_DEBUG=5
BOOTIF=0c:c4:7a:8e:ad:4a
kernel: [0.0] Kernel command line: auto=true priority=critical url=
http://thebooting.dev2.internal/preseed interface=auto DEBCONF_DEBUG=5
BOOTIF=0c:c4:7a:8e:ad:4a
netcfg[780]: INFO: Could not find valid BOOTIF= entry in /proc/cmdline

This is me checking /proc/cmdline:
~ # cat /proc/cmdline
auto=true priority=critical url=http://thebooting.dev2.internal/preseed
interface=auto DEBCONF_DEBUG=5 BOOTIF=0c:c4:7a:8e:ad:4a

I've tried to look at the source (master branch from git://
anonscm.debian.org/d-i/netcfg.git) to try and figure out what's wrong, but
I am not a C developer.
Line 644 seems to be confusing because it's comparing 'bootif_len' to 20
[(6 * 3 - 1) + 3]
But MAC addresses are 15 characters long (including the colons).

I am going to code my way around this using the preseed/early_command for
setting the interface. But it would be nice if this issue was resolved. Let
me know if you need more information.

The installer information is:
Debian GNU/Linux installer
8 (jessie) - installer build 20150422+deb8u3

Thanks.