From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/11881 Path: news.gmane.org!.POSTED!not-for-mail From: Stefan Sedich Newsgroups: gmane.linux.lib.musl.general Subject: Re: open issues Date: Wed, 30 Aug 2017 19:53:55 +0000 Message-ID: References: <20170827043606.GQ15263@port70.net> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="001a114b46a6f60b550557fde3c3" X-Trace: blaine.gmane.org 1504122868 6783 195.159.176.226 (30 Aug 2017 19:54:28 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 30 Aug 2017 19:54:28 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-11894-gllmg-musl=m.gmane.org@lists.openwall.com Wed Aug 30 21:54:23 2017 Return-path: Envelope-to: gllmg-musl@m.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by blaine.gmane.org with smtp (Exim 4.84_2) (envelope-from ) id 1dn941-00011M-S5 for gllmg-musl@m.gmane.org; Wed, 30 Aug 2017 21:54:14 +0200 Original-Received: (qmail 13963 invoked by uid 550); 30 Aug 2017 19:54:18 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Original-Received: (qmail 13945 invoked from network); 30 Aug 2017 19:54:18 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=+94nOGA64F8dUSxM8ZtTC/mNnCQW7kIYhB4Hij7o8bA=; b=g5ErbeNrUyTQqIaJz1bUgsVP9frWqJfTucx/FTnTsefDjSWuujjRPZ9d/yIv/1yLRS hhQQwByMRoTAuh4p3UplIv6XAF09Vt4Vr3jBYneNqCYzOVa0hdsfVwFmhEWGY2tDkIMd ig2spvwMmUbdS6f54/E6FT9ScyiTrKDQI5SUkKt0RqNaScXnqEKmpZjxwqo5wHlct/I4 zGdpr3eAfPgLiZkB8X85PsZWnTvupKrHJCIkmYzdvUeUkRwAsd1VTIx+uTUlaW8UhdZC XKqP7tE/+uLjFTEzwMcRB8KShE22CE2JwunhTMcB6hmr6PJmfvpGbGrNITii6P0N4NAH vuBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=+94nOGA64F8dUSxM8ZtTC/mNnCQW7kIYhB4Hij7o8bA=; b=kISg9k7FWz6uBLF4jBxwz2EpnPQkaH0wZhj91r+KwNElRa8obFgmdpsReLhi2a1jA8 mMHKg8IkPs0tlCD6+r5igki3HKV13AGt1MBV7leWlpXzkV1/X+7SqNEo32DzIIBoh3Qz 8F6dh5a2yCuOgpDR7emNoPwqxQ/3bRH8y7QbFM82kqjGNOmnxV+wkMWMBhtJjj6i8MX8 MHastz8uZuWet0jbHp05M76SHxc1HSDw2SXkmoK/n4gCxc3b4nvojdH2DRNCkA3SV8pZ bzZ4/Kc9cg7dI3mNihqt6QJXdJ/Y66nH+woXo3XakejJM5+iUE0imqr31bMWIXolKO0q mHFw== X-Gm-Message-State: AHYfb5gM+npCElkwMJX2JypweAa/NOaFurumTILv+JsHVvZnSOKUqYv7 gI49Bm+rw07GMu++KHL1yEfenzt1fvE3 X-Google-Smtp-Source: ADKCNb6Kw0vor4mMzYfr2fSRFS90pge85YNWEqqaXH8ReFOGoWUY8aKI5dcHYnaN/dqPks7TijVu2BPbAzYm3p6ATF0= X-Received: by 10.28.167.130 with SMTP id q124mr2388160wme.84.1504122846447; Wed, 30 Aug 2017 12:54:06 -0700 (PDT) In-Reply-To: <20170827043606.GQ15263@port70.net> Xref: news.gmane.org gmane.linux.lib.musl.general:11881 Archived-At: --001a114b46a6f60b550557fde3c3 Content-Type: text/plain; charset="UTF-8" > > list of issues since last release that don't seem to be resolved. > first ones that looked like bugs to me, then other issues. > list goes backward in time, some issues may be missed. > > bug: > - update contributors in copyright file > - fflush(0) does not lock f > http://git.musl-libc.org/cgit/musl/tree/src/stdio/fflush.c#n12 > - getenv/setenv/putenv ub > http://www.openwall.com/lists/musl/2017/08/21/1 > http://www.openwall.com/lists/musl/2016/03/13/7 > - fix ioctl on mips, add SIOCGSTAMPNS > http://www.openwall.com/lists/musl/2017/08/13/4 > http://www.openwall.com/lists/musl/2017/08/13/5 > - ipc/ftok.c overflowing shift > http://www.openwall.com/lists/musl/2017/08/12/5 > - __progname fallbacks so it's never 0 > http://www.openwall.com/lists/musl/2017/07/28/6 > - mbsnrtowcs and mbsnrtowcs confuses byte and wchar counts > http://www.openwall.com/lists/musl/2017/08/09/1 > - memset ub because s[0] = s[0] = c > http://www.openwall.com/lists/musl/2017/07/10/7 > http://www.openwall.com/lists/musl/2017/07/06/2 > - handle whitespace before %% in scanf > http://www.openwall.com/lists/musl/2017/07/11/1 > - mips64 utime issue? > "tar binary can't fix the modification/access times on any extracted > symbolic links," > http://www.openwall.com/lists/musl/2017/07/06/1 > - oob reads in memmem (and signed << ub) > http://www.openwall.com/lists/musl/2017/06/29/6 > - use-after-free in __unlock of pthread struct > http://www.openwall.com/lists/musl/2017/06/01/7 > - newly created thread may run with signals blocked > < sergei> there seems to be a race condition in pthread_create.c between > lines 134 and 298 > < sergei> if line 298 is executed before 134 (assuming syscall returned > 0), startlock will be overwritten with zero, the condition will be > evaluated to false and __restore_sigs will not be executed > < sergei> the newly created thread will run with all signals blocked > < sergei> i have a patch that fixes the issue for me: > https://pastebin.com/T5QSd0C9 > - scanf, wrong types in va_arg > http://www.openwall.com/lists/musl/2017/04/10/3 > - missed underflow in fma > http://www.openwall.com/lists/musl/2017/03/19/6 > new fma, depends on a_clz_64 > http://www.openwall.com/lists/musl/2017/04/23/10 > - fix nftw when called with paths ending in slash > http://www.openwall.com/lists/musl/2017/03/07/1 > - fix syscall number differences compared to linux uapi > http://www.openwall.com/lists/musl/2017/02/18/1 > - getservbyport(_r) should not report numeric ports > http://www.openwall.com/lists/musl/2017/02/06/5 > - add s390x and powerpc64 to supported arches > http://www.openwall.com/lists/musl/2017/02/01/2 > - define IPPORT_RESERVED in netinet/in.h and netdb.h > http://www.openwall.com/lists/musl/2017/01/31/4 > - GLOB_PERIOD is inconsistent with glibc > http://www.openwall.com/lists/musl/2017/01/12/5 > - mmap should not return EPERM when it means ENOMEM > http://www.openwall.com/lists/musl/2017/01/12/1 > - getopt_long does not report failure correctly > http://www.openwall.com/lists/musl/2017/01/07/4 > - make dlsym and reloc time lookup consistent > http://www.openwall.com/lists/musl/2017/02/16/1 > - ldso ctor dependency ordering and recursive dlopen fix > http://www.openwall.com/lists/musl/2017/01/03/6 > - align arm hwcap.h with glibc (nsz) > > > feature request: > - pending linux uapi updates: v4.10, v4.11, v4.12 (nsz) > - non-thread-safe apis (gethostbyname) can detect some misuse and crash > - avoid mmapping inaccessible parts of a binary as rx > - syslog.h prioritynames compund literal causes problems > http://www.openwall.com/lists/musl/2017/08/16/4 > - align fnmatch \ in bracket semantics with glibc > http://www.openwall.com/lists/musl/2017/08/15/2 > - pthread_attr_init behaviour (to use whatever was set in > pthread_setattr_default_np) > http://www.openwall.com/lists/musl/2017/08/12/6 > - fix stdbool.h in c++ code? > http://www.openwall.com/lists/musl/2017/07/28/1 > - add sysconf support for _SC_LEVEL1_DCACHE_LINESIZE > http://www.openwall.com/lists/musl/2017/07/24/1 > - change GMT to UTC > http://www.openwall.com/lists/musl/2017/07/22/2 > - [RFC PATCH 0/5] Add explicit_bzero, vectorize and 'normalize' various > string functions > http://www.openwall.com/lists/musl/2017/07/15/1 > - strlen variant without aliasing violation > http://www.openwall.com/lists/musl/2017/07/10/6 > - |32 is not needed in (t|32) != 'c' > http://www.openwall.com/lists/musl/2017/07/09/5 > - __malloc_donate instead of current hack in ldso > http://www.openwall.com/lists/musl/2017/06/28/4 > - optimize __malloc0 to clear memory faster > http://www.openwall.com/lists/musl/2017/06/26/1 > - code size optimize wmemcpy > http://www.openwall.com/lists/musl/2017/06/25/10 > - [PATCH 0/8] the new __lock and follow up patches > http://www.openwall.com/lists/musl/2017/06/23/2 > - more correct va_arg use in fcntl > http://www.openwall.com/lists/musl/2017/06/21/16 > - use better name than index in __tz.c > http://www.openwall.com/lists/musl/2017/06/11/12 > - use O_TMPFILE in tmpfile if possible > http://www.openwall.com/lists/musl/2017/06/08/2 > - fix user.h so gdb builds cleanly on all targets > http://www.openwall.com/lists/musl/2017/06/11/2 > - towlower performance > http://www.openwall.com/lists/musl/2017/05/27/2 > - RES_OPTIONS support for resolv.conf options overriding > http://www.openwall.com/lists/musl/2017/04/30/1 > related libc-alpha discussion > http://sourceware.org/ml/libc-alpha/2017-08/msg01097.html > - strptime %z %Z > http://www.openwall.com/lists/musl/2017/04/19/1 > - add microMIPS32 support > http://www.openwall.com/lists/musl/2017/05/31/2 > - IDNA support in name lookups > http://www.openwall.com/lists/musl/2017/04/02/1 > - improve LIBCC detection in configure? > http://www.openwall.com/lists/musl/2017/03/16/2 > - precise complex math > http://www.openwall.com/lists/musl/2017/02/12/3 > - strtoul of width specifier clobbers errno in strftime > http://www.openwall.com/lists/musl/2017/02/12/1 > - provide sgidefs.h on mips > http://www.openwall.com/lists/musl/2017/02/04/2 > - add GLOB_TILDE support > http://www.openwall.com/lists/musl/2017/01/20/4 > - crypt_blowfish: support $2b$ prefix > http://www.openwall.com/lists/musl/2017/01/12/6 > - strftime _-0 > http://www.openwall.com/lists/musl/2017/01/06/1 > - static-pie relro > < fabled> how does static pie musl libc init work? > < fabled> the reason i ask is, that relro is not enabled then > < fabled> it should do mprotect() for the relro area > < nsz> ah i see if you have 'static int *const p = &x;' then that > relative reloc should be in relro > - fts64 > http://www.openwall.com/lists/musl/2016/11/23/1 > - REG_STARTEND > http://www.openwall.com/lists/musl/2016/10/05/6 > - realpath without /proc > http://www.openwall.com/lists/musl/2016/11/03/5 > - new tsearch > http://www.openwall.com/lists/musl/2015/12/20/1 > - avoid readv in stdio with 0 length buffer because that's broken on /proc > https://bugzilla.kernel.org/show_bug.cgi?id=195697 > - add fortify _chk functions > - memchr optimization > - RES_OPTIONS support for resolv.conf options overriding http://www.openwall.com/lists/musl/2017/04/30/1 I would love to sneak this one in if possible, has been sitting around for a while and something that I want to be able to configure! --001a114b46a6f60b550557fde3c3 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
= list of issues since last release that don't seem to be resolved.
first ones that looked like bugs to me, then other issues.
list goes backward in time, some issues may be missed.

bug:
- update contributors in copyright file
- fflush(0) does not lock f
=C2=A0 http://git.musl-libc.org/cgit/m= usl/tree/src/stdio/fflush.c#n12
- getenv/setenv/putenv ub
=C2=A0 http://www.openwall.com/lists/musl/2017/08/21/= 1
=C2=A0 http://www.openwall.com/lists/musl/2016/03/13/= 7
- fix ioctl on mips, add SIOCGSTAMPNS
=C2=A0 http://www.openwall.com/lists/musl/2017/08/13/= 4
=C2=A0 http://www.openwall.com/lists/musl/2017/08/13/= 5
- ipc/ftok.c overflowing shift
=C2=A0 http://www.openwall.com/lists/musl/2017/08/12/= 5
- __progname fallbacks so it's never 0
=C2=A0 http://www.openwall.com/lists/musl/2017/07/28/= 6
- mbsnrtowcs and mbsnrtowcs confuses byte and wchar counts
=C2=A0 http://www.openwall.com/lists/musl/2017/08/09/= 1
- memset ub because s[0] =3D s[0] =3D c
=C2=A0 http://www.openwall.com/lists/musl/2017/07/10/= 7
=C2=A0 http://www.openwall.com/lists/musl/2017/07/06/= 2
- handle whitespace before %% in scanf
=C2=A0 http://www.openwall.com/lists/musl/2017/07/11/= 1
- mips64 utime issue?
=C2=A0 "tar binary can't fix the modification/access times on any = extracted symbolic links,"
=C2=A0 http://www.openwall.com/lists/musl/2017/07/06/= 1
- oob reads in memmem (and signed << ub)
=C2=A0 http://www.openwall.com/lists/musl/2017/06/29/= 6
- use-after-free in __unlock of pthread struct
=C2=A0 http://www.openwall.com/lists/musl/2017/06/01/= 7
- newly created thread may run with signals blocked
=C2=A0 < sergei> there seems to be a race condition in pthread_create= .c between lines 134 and 298
=C2=A0 < sergei> if line 298 is executed before 134 (assuming syscall= returned 0), startlock will be overwritten with zero, the condition will b= e evaluated to false and __restore_sigs will not be executed
=C2=A0 < sergei> the newly created thread will run with all signals b= locked
=C2=A0 < sergei> i have a patch that fixes the issue for me: htt= ps://pastebin.com/T5QSd0C9
- scanf, wrong types in va_arg
=C2=A0 http://www.openwall.com/lists/musl/2017/04/10/= 3
- missed underflow in fma
=C2=A0 http://www.openwall.com/lists/musl/2017/03/19/= 6
=C2=A0 new fma, depends on a_clz_64
=C2=A0 http://www.openwall.com/lists/musl/2017/04/23= /10
- fix nftw when called with paths ending in slash
=C2=A0 http://www.openwall.com/lists/musl/2017/03/07/= 1
- fix syscall number differences compared to linux uapi
=C2=A0 http://www.openwall.com/lists/musl/2017/02/18/= 1
- getservbyport(_r) should not report numeric ports
=C2=A0 http://www.openwall.com/lists/musl/2017/02/06/= 5
- add s390x and powerpc64 to supported arches
=C2=A0 http://www.openwall.com/lists/musl/2017/02/01/= 2
- define IPPORT_RESERVED in netinet/in.h and netdb.h
=C2=A0 http://www.openwall.com/lists/musl/2017/01/31/= 4
- GLOB_PERIOD is inconsistent with glibc
=C2=A0 http://www.openwall.com/lists/musl/2017/01/12/= 5
- mmap should not return EPERM when it means ENOMEM
=C2=A0 http://www.openwall.com/lists/musl/2017/01/12/= 1
- getopt_long does not report failure correctly
=C2=A0 http://www.openwall.com/lists/musl/2017/01/07/= 4
- make dlsym and reloc time lookup consistent
=C2=A0 http://www.openwall.com/lists/musl/2017/02/16/= 1
- ldso ctor dependency ordering and recursive dlopen fix
=C2=A0 http://www.openwall.com/lists/musl/2017/01/03/= 6
- align arm hwcap.h with glibc (nsz)


feature request:
- pending linux uapi updates: v4.10, v4.11, v4.12 (nsz)
- non-thread-safe apis (gethostbyname) can detect some misuse and crash
- avoid mmapping inaccessible parts of a binary as rx
- syslog.h prioritynames compund literal causes problems
=C2=A0 http://www.openwall.com/lists/musl/2017/08/16/= 4
- align fnmatch \ in bracket semantics with glibc
=C2=A0 http://www.openwall.com/lists/musl/2017/08/15/= 2
- pthread_attr_init behaviour (to use whatever was set in pthread_setattr_d= efault_np)
=C2=A0 http://www.openwall.com/lists/musl/2017/08/12/= 6
- fix stdbool.h in c++ code?
=C2=A0 http://www.openwall.com/lists/musl/2017/07/28/= 1
- add sysconf support for _SC_LEVEL1_DCACHE_LINESIZE
=C2=A0 http://www.openwall.com/lists/musl/2017/07/24/= 1
- change GMT to UTC
=C2=A0 http://www.openwall.com/lists/musl/2017/07/22/= 2
- [RFC PATCH 0/5] Add explicit_bzero, vectorize and 'normalize' var= ious string functions
=C2=A0 http://www.openwall.com/lists/musl/2017/07/15/= 1
- strlen variant without aliasing violation
=C2=A0 http://www.openwall.com/lists/musl/2017/07/10/= 6
- |32 is not needed in (t|32) !=3D 'c'
=C2=A0 http://www.openwall.com/lists/musl/2017/07/09/= 5
- __malloc_donate instead of current hack in ldso
=C2=A0 http://www.openwall.com/lists/musl/2017/06/28/= 4
- optimize __malloc0 to clear memory faster
=C2=A0 http://www.openwall.com/lists/musl/2017/06/26/= 1
- code size optimize wmemcpy
=C2=A0 http://www.openwall.com/lists/musl/2017/06/25= /10
- [PATCH 0/8] the new __lock and follow up patches
=C2=A0 http://www.openwall.com/lists/musl/2017/06/23/= 2
- more correct va_arg use in fcntl
=C2=A0 http://www.openwall.com/lists/musl/2017/06/21= /16
- use better name than index in __tz.c
=C2=A0 http://www.openwall.com/lists/musl/2017/06/11= /12
- use O_TMPFILE in tmpfile if possible
=C2=A0 http://www.openwall.com/lists/musl/2017/06/08/= 2
- fix user.h so gdb builds cleanly on all targets
=C2=A0 http://www.openwall.com/lists/musl/2017/06/11/= 2
- towlower performance
=C2=A0 http://www.openwall.com/lists/musl/2017/05/27/= 2
- RES_OPTIONS support for resolv.conf options overriding
=C2=A0 http://www.openwall.com/lists/musl/2017/04/30/= 1
=C2=A0 related libc-alpha discussion
=C2=A0 http://sourceware.org/ml/libc-alpha/= 2017-08/msg01097.html
- strptime %z %Z
=C2=A0 http://www.openwall.com/lists/musl/2017/04/19/= 1
- add microMIPS32 support
=C2=A0 http://www.openwall.com/lists/musl/2017/05/31/= 2
- IDNA support in name lookups
=C2=A0 http://www.openwall.com/lists/musl/2017/04/02/= 1
- improve LIBCC detection in configure?
=C2=A0 http://www.openwall.com/lists/musl/2017/03/16/= 2
- precise complex math
=C2=A0 http://www.openwall.com/lists/musl/2017/02/12/= 3
- strtoul of width specifier clobbers errno in strftime
=C2=A0 http://www.openwall.com/lists/musl/2017/02/12/= 1
- provide sgidefs.h on mips
=C2=A0 http://www.openwall.com/lists/musl/2017/02/04/= 2
- add GLOB_TILDE support
=C2=A0 http://www.openwall.com/lists/musl/2017/01/20/= 4
- crypt_blowfish: support $2b$ prefix
=C2=A0 http://www.openwall.com/lists/musl/2017/01/12/= 6
- strftime _-0
=C2=A0 http://www.openwall.com/lists/musl/2017/01/06/= 1
- static-pie relro
=C2=A0 < fabled> how does static pie musl libc init work?
=C2=A0 < fabled> the reason i ask is, that relro is not enabled then<= br> =C2=A0 < fabled> it should do mprotect() for the relro area
=C2=A0 < nsz> ah i see if you have 'static int *const p =3D &= x;' then that relative reloc should be in relro
- fts64
=C2=A0 http://www.openwall.com/lists/musl/2016/11/23/= 1
- REG_STARTEND
=C2=A0 http://www.openwall.com/lists/musl/2016/10/05/= 6
- realpath without /proc
=C2=A0 http://www.openwall.com/lists/musl/2016/11/03/= 5
- new tsearch
=C2=A0 http://www.openwall.com/lists/musl/2015/12/20/= 1
- avoid readv in stdio with 0 length buffer because that's broken on /p= roc
=C2=A0 https://bugzilla.kernel.org/show_bug.cgi?= id=3D195697
- add fortify _chk functions
- memchr optimization

- RES_OPTIONS support for resolv.conf options = overriding

I would love to snea= k this one in if possible, has been sitting around for a while and somethin= g that I want to be able to configure!=C2=A0
--001a114b46a6f60b550557fde3c3--