From: Szabolcs Nagy <nsz@port70.net>
To: musl@lists.openwall.com
Subject: Re: if_nameindex/getifaddrs and dhcpcd issue
Date: Tue, 8 Apr 2014 14:54:38 +0200 [thread overview]
Message-ID: <20140408125438.GN3034@port70.net> (raw)
In-Reply-To: <CAK4o1WxCFnwV1911QDh7ZHEd4hey7txGtUBv=AVG5KH5nHGu7w@mail.gmail.com>
* Justin Cormack <justin@specialbusservice.com> [2014-04-08 11:07:47 +0100]:
> I am not sure that it is appropriate that a netlink implementation,
> which is the only way to do the enumeration correctly in the potential
> absense of /proc, should go into Musl. I would be more inclined to
one could just try all the numbers.. this "works" even at boot time :)
(and there is /sys/class/net/*/ifindex but that does not help libc)
#include <net/if.h>
#include <stdlib.h>
#include <errno.h>
#define N 256
struct if_nameindex *if_nameindex()
{
struct if_nameindex *p = malloc(N*sizeof*p + N*IF_NAMESIZE);
if (!p) errno = ENOBUFS;
else {
char (*name)[IF_NAMESIZE] = (void*)(p+N);
int i,j;
for (i=1,j=0; i<N; i++)
if (if_indextoname(i, name[j])) {
p[j].if_name = name[j];
p[j].if_index = i;
j++;
}
p[j].if_name = 0;
p[j].if_index = 0;
}
return p;
}
> However I can see no reason why dhcp on a specified interface needs to
> enumerate interfaces at all, and it only needs to read ipv4 addresses,
> unless it is implementing dhcp6 too, maybe it does now. Again dhcp6
> needs netlink, the Musl ipv6 parts for getifaddrs already use /proc
> which is definitely unreliable for early boot config in a distro in my
> view.
if ipv6 things require netlink anyway then probably musl does not have
much choice..
next prev parent reply other threads:[~2014-04-08 12:54 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-08 9:11 Natanael Copa
2014-04-08 10:07 ` Justin Cormack
2014-04-08 12:25 ` Timo Teras
2014-04-08 14:23 ` Natanael Copa
2014-04-08 15:45 ` Rich Felker
2014-04-08 16:08 ` Timo Teras
2014-04-08 16:19 ` Justin Cormack
2014-04-08 22:41 ` Rich Felker
2014-04-09 7:17 ` u-igbb
2014-04-09 22:20 ` Rich Felker
2014-04-09 22:32 ` Justin Cormack
2014-04-10 7:40 ` u-igbb
2014-04-10 7:52 ` Rich Felker
2014-04-09 14:02 ` Timo Teras
2014-04-10 0:55 ` Rich Felker
2014-04-09 7:55 ` Natanael Copa
2014-04-08 12:54 ` Szabolcs Nagy [this message]
2014-04-08 13:42 ` Rich Felker
2014-04-08 14:16 ` Justin Cormack
2014-04-08 15:38 ` Rich Felker
2014-04-09 7:13 ` Natanael Copa
2014-04-09 22:18 ` Rich Felker
2014-04-08 21:16 ` Natanael Copa
2014-04-08 21:30 ` Justin Cormack
2014-04-08 22:59 ` Rich Felker
2014-04-08 14:27 ` Natanael Copa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140408125438.GN3034@port70.net \
--to=nsz@port70.net \
--cc=musl@lists.openwall.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/musl/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).