Acknowledgement sent
to Sergio Gelato <Sergio.Gelato@astro.su.se>:
New Bug report received and forwarded. Copy sent to Camm Maguire <camm@debian.org>.
(Sun, 08 Apr 2012 08:51:04 GMT) (full text, mbox, link).
Subject: lamboot doesn't recognise 127.0.1.1 as a local address
Date: Sun, 8 Apr 2012 10:46:30 +0200
Package: lam-runtime
Version: 7.1.2-2
By default, the Debian installer sets up an entry in /etc/hosts mapping the
local host's name to the IP address 127.0.1.1. See Debian bug #316099.
This causes lamboot to fail with the following message when the hostfile
contains the name of the local host:
The boot SSI rsh module found that your local host is not in the
hostfile "hostfile".
The local host name *must* be in the list of hosts in the hostfile.
In other words, you must boot LAM from a node that will be part of the
universe.
Commenting out the 127.0.1.1 line in /etc/hosts makes the problem disappear,
as does replacing 127.0.1.1 with the external IP address of the local host.
Information forwarded
to debian-bugs-dist@lists.debian.org, Camm Maguire <camm@debian.org>: Bug#668013; Package lam-runtime.
(Mon, 09 Apr 2012 14:09:55 GMT) (full text, mbox, link).
Acknowledgement sent
to Camm Maguire <camm@maguirefamily.org>:
Extra info received and forwarded to list. Copy sent to Camm Maguire <camm@debian.org>.
(Mon, 09 Apr 2012 14:09:55 GMT) (full text, mbox, link).
Subject: Re: Bug#668013: lamboot doesn't recognise 127.0.1.1 as a local address
Date: Mon, 09 Apr 2012 08:57:11 -0400
Greetings, and thanks for your report! Is there a valid way lam could
work around this /etc/hosts breakage? The report in 316099 appears to
indicate that the problem has been resolved by never associating
127.0.0.1 with the canonical name of the local host. Does this solve
the issue?
Take care,
Sergio Gelato <Sergio.Gelato@astro.su.se> writes:
> Package: lam-runtime
> Version: 7.1.2-2
>
> By default, the Debian installer sets up an entry in /etc/hosts mapping the
> local host's name to the IP address 127.0.1.1. See Debian bug #316099.
>
> This causes lamboot to fail with the following message when the hostfile
> contains the name of the local host:
>
> The boot SSI rsh module found that your local host is not in the
> hostfile "hostfile".
>
> The local host name *must* be in the list of hosts in the hostfile.
> In other words, you must boot LAM from a node that will be part of the
> universe.
>
> Commenting out the 127.0.1.1 line in /etc/hosts makes the problem disappear,
> as does replacing 127.0.1.1 with the external IP address of the local host.
>
>
>
>
>
>
--
Camm Maguire camm@maguirefamily.org
==========================================================================
"The earth is but one country, and mankind its citizens." -- Baha'u'llah
Information forwarded
to debian-bugs-dist@lists.debian.org, Camm Maguire <camm@debian.org>: Bug#668013; Package lam-runtime.
(Mon, 09 Apr 2012 14:57:07 GMT) (full text, mbox, link).
Acknowledgement sent
to Sergio Gelato <Sergio.Gelato@astro.su.se>:
Extra info received and forwarded to list. Copy sent to Camm Maguire <camm@debian.org>.
(Mon, 09 Apr 2012 14:57:07 GMT) (full text, mbox, link).
Subject: Re: Bug#668013: lamboot doesn't recognise 127.0.1.1 as a local
address
Date: Mon, 9 Apr 2012 16:52:41 +0200
* Camm Maguire [2012-04-09 08:57:11 -0400]:
> Greetings, and thanks for your report! Is there a valid way lam could
> work around this /etc/hosts breakage? The report in 316099 appears to
> indicate that the problem has been resolved by never associating
> 127.0.0.1 with the canonical name of the local host. Does this solve
> the issue?
LAM could for example treat any address in 127.0.0.0/8 as local. This
conforms with RFC 3330 so there is a chance that it will be valid even
for platforms other than Linux. I'm looking at the code for lamnet_findorig()
in share/boot/lamnet.c and see that for now it just does a straight
comparison of the 4-byte addresses; one could augment the test with a
|| (ifaddr[i]>>24 == 127 &&
lamnet[i].lnd_addr.sin_addr.s_addr>>24 == 127)
or equivalent (instead of shifting one can mask with 0xff000000 and compare
to 0x7f000000).
Failing this, one should at least document the issue in README.Debian.
(Maybe debconf or postinst could detect the issue at installation time
and present a warning note too. But it's probably simpler to just patch
lamnet_findorig().)
Since this is really a matter of integration within Debian, it may be worth
discussing in a broader context than just this package. (I've noticed a
similar issue with the autofs package, although in that case the effect
is merely to force the use of loopback NFS mounts where bind mounts
would do so the impact is less severe.) As indicated in 316099, the
long-term goal should be not to list the local host name in /etc/hosts
at all; the question is whether this can now be achieved without breaking
anything. (Is GNOME 3 better behaved than its predecessors in this regard?)
Information forwarded
to debian-bugs-dist@lists.debian.org, Camm Maguire <camm@debian.org>: Bug#668013; Package lam-runtime.
(Mon, 09 Apr 2012 15:27:04 GMT) (full text, mbox, link).
Acknowledgement sent
to Camm Maguire <camm@maguirefamily.org>:
Extra info received and forwarded to list. Copy sent to Camm Maguire <camm@debian.org>.
(Mon, 09 Apr 2012 15:27:04 GMT) (full text, mbox, link).
Subject: Re: Bug#668013: lamboot doesn't recognise 127.0.1.1 as a local address
Date: Mon, 09 Apr 2012 11:22:38 -0400
Greetings! And thanks again for your very helpful reports!
Here is the findorig() code in (uploaded) 7.1.4:
=============================================================================
int
lamnet_findorig(struct lamnode *lamnet, int nlamnet)
{
int i, j;
int nifaddr; /* # of interface addresses */
uint4 *ifaddr;
nifaddr = getifaddr(&ifaddr);
if (nifaddr < 0)
return(LAMERROR);
/*
* Loop over the host entries, comparing their addresses to
* our local host interface addresses.
*/
for (i = 0; i < nlamnet; ++i) {
/* Skip empty entries */
if (lamnet[i].lnd_nodeid == NOTNODEID)
continue;
if (inet_netof(lamnet[i].lnd_addr.sin_addr) == 127) {
free(ifaddr);
return(i);
}
for (j = 0; j < nifaddr; ++j) {
if (ifaddr[j] == lamnet[i].lnd_addr.sin_addr.s_addr) {
free(ifaddr);
return(i);
}
}
}
free(ifaddr);
errno = EINVAL;
return(LAMERROR);
}
=============================================================================
I think this should take care of it. Do you agree? If so, we can close
this one too, or tag it 7.1.2.
Take care,
Sergio Gelato <Sergio.Gelato@astro.su.se> writes:
> * Camm Maguire [2012-04-09 08:57:11 -0400]:
>> Greetings, and thanks for your report! Is there a valid way lam could
>> work around this /etc/hosts breakage? The report in 316099 appears to
>> indicate that the problem has been resolved by never associating
>> 127.0.0.1 with the canonical name of the local host. Does this solve
>> the issue?
>
> LAM could for example treat any address in 127.0.0.0/8 as local. This
> conforms with RFC 3330 so there is a chance that it will be valid even
> for platforms other than Linux. I'm looking at the code for lamnet_findorig()
> in share/boot/lamnet.c and see that for now it just does a straight
> comparison of the 4-byte addresses; one could augment the test with a
> || (ifaddr[i]>>24 == 127 &&
> lamnet[i].lnd_addr.sin_addr.s_addr>>24 == 127)
> or equivalent (instead of shifting one can mask with 0xff000000 and compare
> to 0x7f000000).
>
> Failing this, one should at least document the issue in README.Debian.
> (Maybe debconf or postinst could detect the issue at installation time
> and present a warning note too. But it's probably simpler to just patch
> lamnet_findorig().)
>
> Since this is really a matter of integration within Debian, it may be worth
> discussing in a broader context than just this package. (I've noticed a
> similar issue with the autofs package, although in that case the effect
> is merely to force the use of loopback NFS mounts where bind mounts
> would do so the impact is less severe.) As indicated in 316099, the
> long-term goal should be not to list the local host name in /etc/hosts
> at all; the question is whether this can now be achieved without breaking
> anything. (Is GNOME 3 better behaved than its predecessors in this regard?)
>
>
>
>
>
--
Camm Maguire camm@maguirefamily.org
==========================================================================
"The earth is but one country, and mankind its citizens." -- Baha'u'llah
Reply sent
to Camm Maguire <camm@maguirefamily.org>:
You have taken responsibility.
(Mon, 09 Apr 2012 19:00:04 GMT) (full text, mbox, link).
Notification sent
to Sergio Gelato <Sergio.Gelato@astro.su.se>:
Bug acknowledged by developer.
(Mon, 09 Apr 2012 19:00:04 GMT) (full text, mbox, link).
To: 668013-done@bugs.debian.org,Sergio Gelato <Sergio.Gelato@astro.su.se>
Subject: Re: Bug#668013: lamboot doesn't recognise 127.0.1.1 as a local address
Date: Mon, 09 Apr 2012 14:25:56 -0400
Package: lam-runtime
Version: 7.1.4-2
Thanks!
Sergio Gelato <Sergio.Gelato@astro.su.se> writes:
> * Camm Maguire [2012-04-09 11:22:38 -0400]:
>> Here is the findorig() code in (uploaded) 7.1.4:
>
>> if (inet_netof(lamnet[i].lnd_addr.sin_addr) == 127) {
>> free(ifaddr);
>> return(i);
>> }
>
>> I think this should take care of it. Do you agree? If so, we can close
>> this one too, or tag it 7.1.2.
>
> Yes, it looks good. Tag it fixed in 7.1.4, then.
>
>
>
>
--
Camm Maguire camm@maguirefamily.org
==========================================================================
"The earth is but one country, and mankind its citizens." -- Baha'u'llah
No longer marked as fixed in versions lam-runtime/7.1.4-2.
Request was from Andreas Beckmann <anbe@debian.org>
to control@bugs.debian.org.
(Sat, 02 Nov 2013 15:58:21 GMT) (full text, mbox, link).
Marked as fixed in versions lam/7.1.4-2.
Request was from Andreas Beckmann <anbe@debian.org>
to control@bugs.debian.org.
(Sat, 02 Nov 2013 15:58:22 GMT) (full text, mbox, link).
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Sun, 01 Dec 2013 07:29:06 GMT) (full text, mbox, link).
Debbugs is free software and licensed under the terms of the GNU General
Public License version 2. The current version can be obtained
from https://bugs.debian.org/debbugs-source/.