Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [day] [month] [year] [list]
Date: Wed, 1 Jul 2015 07:21:07 -0700
From: Isaac Dunham <>
Subject: ABI compat report: or, how to get a Debian ksh93 binary running

For some reason I decided to try getting a ksh93 binary running
(once again); this time, it seems to work right.

- fetch ksh_93u+20120801-1_i386.deb; list of mirrors:
- get musl source from git, create new branch
- apply the patch to add *_chk
Message-Id: <>
- apply the attached patch to fix a few build errors and add __strcpy_chk()
 (I'm aware that there are still some possible issues with correctness);
 configure and compile musl.
- build the attached library, which provides:
  semi-working substitutes for glibc's [jy][n01]l() functions
    (I just cast long double to double, which will result in degraded
    range and accuracy compared to the full implementations for 12-
    and 16-byte long doubles in glibc. Other sizes of long double
    get a stub error function in glibc.)
  stub function pointer variables __memalign_hook, __malloc_hook,
    __realloc_hook, and __free_hook; these are unused.
  a few math symbols corresonding to isfinite() and isinf():
    {__,}{finitel,isinfl}, __isinf, __isnan, isnanl
  scalbl(), a nonstandard extension of scalb() which is obsolete.
- extract bin/ksh93 from the deb
- test with your new libc:
  LD_PRELOAD=../compat-libc/ lib/ ./ksh93
- Once you've tested, you can replace "" with ""
  to make it stick.

Isaac Dunham

View attachment "0001-src-compat-_chk.c-fix-build-add-__strcpy_chk.patch" of type "text/plain" (3233 bytes)

Download attachment "compat-libc.tgz" of type "application/octet-stream" (1980 bytes)

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.