Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 26699 - traceroute using lo by default, suspect problem with ebuild management
Summary: traceroute using lo by default, suspect problem with ebuild management
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: Low minor (vote)
Assignee: Tavis Ormandy (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-08-15 21:07 UTC by Peter Jones
Modified: 2003-08-16 07:11 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Peter Jones 2003-08-15 21:07:33 UTC
Traceroute compilation process needs to './configure' as root!

Every time I attempted to use traceroute, I got the message "Warning: Multiple 
interfaces found, using 127.0.0.1 @ lo" -- and needless to say, if traceroute 
is speaking to lo rather than eth0, it doesn't return useful results.

I am aware that "traceroute -i eth0" would solve this, but I had never needed 
to do this in the past so I dug a little deeper.

Apparently, the problem occurs when traceroute's "configure" script is run by 
a non-root user.  Somewhere around line 1825 it tries to determine 
the "routing table type"; for a linux system it searches for /proc/net/route --
 which, of course, is not visible to a non-root user.  If it cannot determine 
the correct routing table type to use, it links in 'findsaddr-generic.c', the 
only file in the source tree which actually contains the string "Multiple 
interfaces found".  Since there exists a 'findsaddr-linux.c' as well, 
using 'generic' is obviously not correct (and indeed, leads to exactly the 
problem I've described above; specifically, it just looks at all available 
interfaces and selects the first one it finds where there are more than one!)

Since I know I ran 'emerge traceroute' as root -- for confirmation, I 
checked /root/.bash_history -- I guess emerge must switch back to a less 
dangerous user (without going and studying the documentation, I'm 
guessing 'portage') for much of the configure/make process, and only run as 
root to install files into their final destinations.  Ordinarily this would be 
a "Good Thing", but in the case of traceroute, it needs to at least run 
the 'configure' step as root.  Is there any way to tell it to do this (via the 
ebuild script, for instance?)

Incidentally, I have fired off a similar "bug report" to 
traceroute@ee.lbl.gov -- it is not *really* a bug as such, more a lack of 
correct documentation -- but from what my google searches turned up, it would 
appear to be a fairly widespread problem...

Reproducible: Always
Steps to Reproduce:
1.
2.
3.
Comment 1 Tavis Ormandy (RETIRED) gentoo-dev 2003-08-16 01:34:00 UTC
wow, thanks for letting us know about this.

Theres a fix in 1.4_p12-r1, which now assumes linux by default.
Comment 2 Peter Jones 2003-08-16 07:11:06 UTC
Yeah, that'd be the other way to fix it!  :-)

No problem...