Ethereal-dev: Re: [ethereal-dev] AIX: gtk problem solved, now an ethereal problem

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Guy Harris <guy@xxxxxxxxxx>
Date: Mon, 8 Nov 1999 11:27:28 -0800 (PST)
> Now I have a problem....I compiled gtk, and that works.
> I compiled ethereal (after some minor mods), and it starts,
> but when I click on Capture -> Start, I get:
> 
> "There are no network interfaces that can be opened."
> 
> I am running as root, so I don't think permissions are a problem.
> 
> Any ideas?

In order to show the loopback interfaces in the "Capture/Start" dialog
box's combo box's list on platforms where you *can* listen on the
loopback device (BSDs and Linux distributions, for example), but *not*
to show it on platforms where you can't (Solaris, for example), when
it's looping through the list of interfaces it found with an
SIOCGIFCONF, it tries to open each of them by calling
"pcap_open_live()".

That error means that, of the interfaces in the SIOCGIFCONF list, it
found none that:

	1) don't have names beginning with "dummy" or containing ":";

	2) have the IFF_UP flag set;

	3) are openable with "pcap_open_live()".

That could either mean

	1) the code that scans the SIOCGIFCONF list doesn't work on AIX
	   (that loop is, apparently, more portable than I would've
	   expected it to be, as similar code is used in "libpcap");

	2) the code that tests IFF_UP doesn't work on AIX;

	3) the code that extracts the interface name from the entry in
	   the list, and calls "pcap_open_live()", doesn't work on AIX;

	4) "pcap_open_live()" isn't working on AIX.

(These could either be AIX problems or portability problems with the
code.)

You might want to step through "get_interface_list()" with a debugger to
see which of those it is (hopefully that routine isn't called when GTK+
does one of its irritating grabs that cause your X session to lock up if
you hit a breakpoint while GTK+ has grabbed your keyboard or mouse).