mailing list of musl libc
 help / color / mirror / code / Atom feed
From: Brad Conroy <technosaurus@yahoo.com>
To: musl@lists.openwall.com
Subject: Re: Agenda for next release?
Date: Mon, 31 Dec 2012 13:37:39 -0800 (PST)	[thread overview]
Message-ID: <1356989859.15084.YahooMailClassic@web160406.mail.bf1.yahoo.com> (raw)
In-Reply-To: <20121231191131.GA18334@brightrain.aerifal.cx>

[-- Attachment #1: Type: text/plain, Size: 3257 bytes --]

Not functionally necessary for the release, but nice for future compatibility reasons, a few paths are hard-coded into the c files rather than defining them in the (non-)"standard" location
Ex.src/network/getaddrinfo.c has "/etc/hosts", "/etc/resolve.conf" and "/etc/services" hard-coded rather than defining them in netdb.h
#define _PATH_HOSTS "/etc/hosts"#define _PATH_NSSWITCH_CONF "/etc/nsswitch.conf"#define _PATH_SERVICES "/etc/services"
also defined in netdb.h for other uses

#define _PATH_HEQUIV "/etc/hosts.equiv"#define _PATH_NETWORKS "/etc/networks"#define _PATH_PROTOCOLS "/etc/protocols"

resolv.h does have #define _PATH_RESCONF "/etc/resolve.conf" however src/network/__dns.c still has the hard-coded path also
I'm sure there are others that grep could find (fstab.h,paths.h,ttyent.h xtables.h,???)
also android has etc in /system, so the actual path is /system/etc/hosts (though /etc is typically a symlink to /system/etc), but other strange layouts exist and it would be a lot easier/cleaner for work arounds to have the ifdefs confined to one location in the header files and use those definitions in the .c files so that port patches only hit a few headers without polluting the .c files with a lot of ifdef nests
I ran into this while building a static wget-like downloader that would use an alternate hosts file to complement a custom local server that locally hosts some problematic CDNs (to work around problems such as: waiting for ajax.googleapis.com, platform.twitter.com etc...) but this is an obvious hack, not the typical use case for a standard library... but then again part of the charm of musl is its "hackability"

--- On Mon, 12/31/12, Rich Felker <dalias@aerifal.cx> wrote:

From: Rich Felker <dalias@aerifal.cx>
Subject: [musl] Agenda for next release?
To: musl@lists.openwall.com
Date: Monday, December 31, 2012, 2:11 PM

Hi,

I don't have any immediate plan for the next release, but I'd like to
start thinking about what we'd like to go into it. A few things I know
are still pending that should be possible to include are:

- strverscmp
- zoneinfo
- inet_makeaddr
- scanf %m modifier
- getifaddrs
- cpuset/affinity interfaces
- ether.h interfaces

I know there's also interest in exposing sigreturn and setcontext for
libunwind use, but it's difficult to do right and I'm really skeptical
of the whole thing. Their use of sigreturn seems completely incorrect
(and thus probably untested); sigreturn expects a struct sigcontext on
the stack, not a pointer to a sigcontext in the first function
argument slot. I would rather have a conversation with their
developers first to determine if that code is even working/valid, and
defer the corresponding additions to musl until we eventually add all
the ucontext.h interfaces in working form.

Another port (perhaps x32, like originally proposed) is also
definitely an option if anybody's up for doing it. I had considered
doing it myself in this release cycle, but I'm a bit busy with some
other projects for at least a couple weeks so I'd rather not get
bogged down in a big time-eater right away, and instead spend my time
with musl on small isolated feature additions and bug fixes.

Anything else I missed?

Rich

[-- Attachment #2: Type: text/html, Size: 5532 bytes --]

  reply	other threads:[~2012-12-31 21:37 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-31 19:11 Rich Felker
2012-12-31 21:37 ` Brad Conroy [this message]
2013-01-01  2:38   ` Rich Felker
2013-01-01  4:06 ` Rob Landley
2013-01-01  4:51   ` Rich Felker
2013-01-04  7:22     ` Rob Landley

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=1356989859.15084.YahooMailClassic@web160406.mail.bf1.yahoo.com \
    --to=technosaurus@yahoo.com \
    --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).