static int iface_probe(struct connman_iface *iface)
{
- char *ifname;
-
- ifname = __net_ifname(iface->sysfs);
- if (ifname == NULL)
- return -1;
-
- printf("[802.03] probe interface %s\n", ifname);
+ printf("[802.03] probe interface index %d\n", iface->index);
iface->type = CONNMAN_IFACE_TYPE_80203;
- iface->flags = CONNMAN_IFACE_FLAG_CARRIER_DETECT |
- CONNMAN_IFACE_FLAG_IPV4;
-
- __net_free(ifname);
+ iface->flags = CONNMAN_IFACE_FLAG_RTNL |
+ CONNMAN_IFACE_FLAG_IPV4 |
+ CONNMAN_IFACE_FLAG_CARRIER_DETECT;
return 0;
}
static void iface_remove(struct connman_iface *iface)
{
- printf("[802.03] remove interface\n");
+ printf("[802.03] remove interface index %d\n", iface->index);
- __net_clear(iface->sysfs);
+ __net_clear(iface->index);
}
static int iface_get_ipv4(struct connman_iface *iface,
struct connman_ipv4 *ipv4)
{
- if (__net_ifaddr(iface->sysfs, &ipv4->address) < 0)
+ if (__net_ifaddr(iface->index, &ipv4->address) < 0)
return -1;
printf("[802.03] get address %s\n", inet_ntoa(ipv4->address));
printf("[802.03] set netmask %s\n", inet_ntoa(ipv4->netmask));
printf("[802.03] set gateway %s\n", inet_ntoa(ipv4->gateway));
- __net_set(iface->sysfs, &ipv4->address, &ipv4->netmask,
+ __net_set(iface->index, &ipv4->address, &ipv4->netmask,
&ipv4->gateway, &ipv4->broadcast,
&ipv4->nameserver);