0419452113
The main changes are in libSystem, which lost the coretls component in 10.13 and some hardening changes that quietly crash any program that uses %n in a non-constant format string, so we've needed to patch a lot of programs that use gnulib.
16 lines
849 B
Diff
16 lines
849 B
Diff
With format string strictness, High Sierra also enforces that %n isn't used
|
|
in dynamic format strings, but we should just disable its use on darwin in
|
|
general.
|
|
|
|
--- a/lib/vasnprintf.c 2017-06-22 15:19:15.000000000 -0700
|
|
+++ b/lib/vasnprintf.c 2017-06-22 15:20:20.000000000 -0700
|
|
@@ -4869,7 +4869,7 @@ VASNPRINTF (DCHAR_T *resultbuf, size_t *
|
|
#endif
|
|
*fbp = dp->conversion;
|
|
#if USE_SNPRINTF
|
|
-# if !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__))
|
|
+# if !defined(__APPLE__) && !(((__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3)) && !defined __UCLIBC__) || ((defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__))
|
|
fbp[1] = '%';
|
|
fbp[2] = 'n';
|
|
fbp[3] = '\0';
|