Package: network-manager
Version: 0.6.2-1
Severity: important
Hello,
I have a computer without any wireless connection and I simply use an
ethernet one. Since approximately NetworkManager 0.6, NetworkManager do
not see my network card. So currently, I have a working connection but
NetworkManager do not see any network device (and so says that I'm not
connected)!
For example, if I run "nm-tool" from NetworkManager test directory, I
get:
$ ./nm-tool
NetworkManager Tool
State: disconnected
print_devices(): didn't get a reply from NetworkManager.
There are no available network devices.
However I have a working connection:
$ /sbin/ifconfig
eth0 Lien encap:Ethernet HWaddr 00:00:B4:BA:8B:82
inet adr:82.235.249.217 Bcast:82.235.249.255 Masque:255.255.255.0
adr inet6: fe80::200:b4ff:feba:8b82/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:128023 errors:0 dropped:0 overruns:0 frame:0
TX packets:79561 errors:0 dropped:0 overruns:0 carrier:0
collisions:12 lg file transmission:1000
RX bytes:160059536 (152.6 MiB) TX bytes:6046757 (5.7 MiB)
Interruption:9 Adresse de base:0xd400
lo Lien encap:Boucle locale
inet adr:127.0.0.1 Masque:255.0.0.0
adr inet6: ::1/128 Scope:Hôte
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:121927 errors:0 dropped:0 overruns:0 frame:0
TX packets:121927 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:0
RX bytes:37699483 (35.9 MiB) TX bytes:37699483 (35.9 MiB)
Since NetworkManager is not buildable due to libXcursor.la problems, I
simply tried to read code. I do not exactly understand how
NetworkManager discover network devices. In file NetworkManager.c, in
function nm_get_hal_ctx(), we add callbacks in case of device adding,
removing or when there are new capabilities:
libhal_ctx_set_device_added (ctx, nm_hal_device_added);
libhal_ctx_set_device_removed (ctx, nm_hal_device_removed);
libhal_ctx_set_device_new_capability (ctx,
nm_hal_device_new_capability);
When a device is added, function nm_hal_device_added() is called. Then
it tries to get device interface with nm_get_device_interface_from_hal().
There, the current device is simply tested to see if it is a network
device (has "net.interface" property with HAL?).
So, it seems that a present device on the system when NetworkManager
starts will never be found. In my opinion, libhal_get_all_devices()
should be used when NetworkManager starts to find already present
network devices.
Cordially,
Laurent.
-- System Information:
Debian Release: testing/unstable
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.16-1-686
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Versions of packages network-manager depends on:
ii dbus 0.61-5 simple interprocess messaging syst
ii dhcdbd 1.12-2 dbus interface to the ISC DHCP cli
ii hal 0.5.7-2 Hardware Abstraction Layer
ii iproute 20051007-4 Professional tools to control the
ii iputils-arping 3:20020927-3 Tool to send ICMP echo requests to
ii libc6 2.3.6-7 GNU C Library: Shared libraries
ii libdbus-1-2 0.61-5 simple interprocess messaging syst
ii libdbus-glib-1-2 0.61-5 simple interprocess messaging syst
ii libgcrypt11 1.2.2-1 LGPL Crypto library - runtime libr
ii libglib2.0-0 2.10.2-2 The GLib library of C routines
ii libgpg-error0 1.2-1 library for common error values an
ii libhal1 0.5.7-2 Hardware Abstraction Layer - share
ii libnl1-pre6 0.99+1.0.svn21-4 Library for dealing with netlink s
ii libnm-util0 0.6.2-1 network management framework (shar
ii lsb-base 3.1-5 Linux Standard Base 3.1 init scrip
ii wpasupplicant 0.4.8-4 Client support for WPA and WPA2 (I
network-manager recommends no packages.
-- no debconf information