Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130724144245.GT3249@brightrain.aerifal.cx>
Date: Wed, 24 Jul 2013 10:42:45 -0400
From: Rich Felker <dalias@...ifal.cx>
To: musl@...ts.openwall.com
Subject: Re: Proposed roadmap to 1.0

On Wed, Jul 24, 2013 at 10:14:10PM +0800, orc wrote:
> While building a file server/router I found some bugs/incompatibilities
> in getaddrinfo() and getifaddrs().
> 
> getaddrinfo() does not reports IPv6 available when asked with
> AF_UNSPEC. Thus, servers like openssh or tinc (vpn daemon) still bind
> only IPv4 socket when they configured to bind IPv4 and IPv6 sockets.

Indeed, this is an oversight.

> getifaddrs() does not returns AF_PACKET like glibc does, so list of
> all system interfaces is incomplete (does not shows inactive
> interfaces).

Is there a use case you want this for? I remember when we added
getifaddrs this was discussed, and I was hesitant to add AF_PACKET
because it's using some deprecated version of some structure where the
fields are too small to store the values they're supposed to
represent. I'd have to look through the mailing list and/or IRC logs
to recall the details, though. I'm not entirely opposed to it if
there's a serious need, but at the time it seemed like a poorly
designed interface.

> I attached patch for getaddrinfo() (adopt it if you need it)
> and test program.

I think it could be cleaner/simpler but I might just commit it as-is
for now and wait to clean it up until the getaddrinfo cleanup/overhaul
which was scheduled for this release cycle but will get pushed back to
the next.

> I still have no any clues about getifaddrs(), but
> that is not critical. It is usually implemented with help of netlink
> (and possibly there is no other way, maybe some /proc file will give a
> list)

musl's is entirely based on /proc because the netlink stuff is
undocumented, seemed really bloated, and I didn't want to risk pulling
in code that was inadvertently derived from GNU code.

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.