cosmopolitan/libc/x
Justine Tunney 133c693650 Work around Landlock output inode in compile.com
This change fixes Landlock Make so that only the output target file is
unveiled, rather than unveiling the directory that contains it. This
gives us a much stronger sandbox. It also helped identify problematic
build code in our repo that should have been using o/tmp instead.

Landlock isn't able to let us unveil files that don't exist. Even if
they do, then once a file is deleted, the sandboxing for it goes away.
This caused problems for Landlock Make because tools like GNU LD will
repeatedly delete and recreate the output file. This change uses the
compile.com wrapper to ensure on changes happen to the output inode.

New binary available on https://justine.lol/make/

Fixes #528
2022-08-09 07:55:44 -07:00
..
bingblit.c Change license 2020-12-27 17:18:44 -08:00
filecmp.c Reduce makefile dependencies by 10% 2022-06-08 20:01:28 -07:00
makedirs.c Make some systemic improvements 2022-05-18 16:52:36 -07:00
replaceuser.c Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
rmrf.c Add assimilate.com command for APE binaries 2022-07-13 20:56:24 -07:00
tunbing.c Make C memory safe like Rust 2021-02-01 03:58:46 -08:00
unbingbuf.c Change license 2020-12-27 17:18:44 -08:00
unbingstr.c Change license 2020-12-27 17:18:44 -08:00
utf8toutf16.c Add MODE=optlinux build mode (#141) 2021-10-14 19:36:49 -07:00
utf8toutf32.c Make numerous improvements 2021-09-28 01:52:34 -07:00
utf16to32.c Make numerous improvements 2021-09-28 01:52:34 -07:00
utf16toutf8.c Make numerous improvements 2021-09-28 01:52:34 -07:00
x.h Work around Landlock output inode in compile.com 2022-08-09 07:55:44 -07:00
x.mk Productionize new APE loader and more 2021-10-02 08:27:03 -07:00
xasprintf.c Change license 2020-12-27 17:18:44 -08:00
xbarf.c Improve synchronization 2022-04-15 15:31:55 -07:00
xbasename.c Work around Landlock output inode in compile.com 2022-08-09 07:55:44 -07:00
xcalloc.c Change license 2020-12-27 17:18:44 -08:00
xdie.c Change license 2020-12-27 17:18:44 -08:00
xdirname.c Fix basename() and dirname() 2022-04-06 00:13:44 -07:00
xdtoa.c Improve signal handling and math 2021-02-25 18:33:33 -08:00
xdtoaf.c Improve signal handling and math 2021-02-25 18:33:33 -08:00
xdtoal.c Add long double printf formatting support 2022-06-14 02:18:03 -07:00
xfixpath.c Make build hermetic without shell scripts 2022-05-25 13:55:57 -07:00
xgetline.c Fix basename() and dirname() 2022-04-06 00:13:44 -07:00
xhomedir.c Improve linenoise and get it working on Windows 2021-08-15 14:34:05 -07:00
xjoinpaths.c Fix basename() and dirname() 2022-04-06 00:13:44 -07:00
xload.c Improve locks and signals 2022-04-12 05:20:17 -07:00
xloadzd.c Make dlmalloc a little faster 2022-06-09 21:25:21 -07:00
xmalloc.c Change license 2020-12-27 17:18:44 -08:00
xmemalign.c Change license 2020-12-27 17:18:44 -08:00
xmemalignzero.c Make numerous improvements 2021-09-28 01:52:34 -07:00
xreadlink.c Improve system call support 2021-08-25 21:36:17 -07:00
xreadlinkat.c Improve system call support 2021-08-25 21:36:17 -07:00
xrealloc.c Make major improvements to redbean and libraries 2021-04-18 12:34:15 -07:00
xsigaction.c Correct more typos (#500) 2022-07-21 20:53:30 -07:00
xslurp.c Fix bugs and make improvements 2022-04-20 10:05:34 -07:00
xspawn.c Reduce makefile dependencies by 10% 2022-06-08 20:01:28 -07:00
xstrcat.c Improve Python tree-shaking 2021-09-06 19:24:10 -07:00
xstrdup.c Change license 2020-12-27 17:18:44 -08:00
xstripext.c Make numerous improvements 2021-09-28 01:52:34 -07:00
xstripexts.c Experiment with making Python go faster 2021-08-18 21:57:11 -07:00
xstrmul.c Change license 2020-12-27 17:18:44 -08:00
xstrndup.c Change license 2020-12-27 17:18:44 -08:00
xvalloc.c Change license 2020-12-27 17:18:44 -08:00
xvasprintf.c Make Cosmopolitan ANSI C89 compatible 2021-02-03 17:48:59 -08:00
xvspawn.c Reduce makefile dependencies by 10% 2022-06-08 20:01:28 -07:00
xwrite.c Change license 2020-12-27 17:18:44 -08:00