php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #77297 SodiumException segfaults on PHP 7.3
Submitted: 2018-12-14 00:21 UTC Modified: 2018-12-14 12:10 UTC
Votes:1
Avg. Score:3.0 ± 0.0
Reproduced:1 of 1 (100.0%)
Same Version:1 (100.0%)
Same OS:0 (0.0%)
From: security at paragonie dot com Assigned: jedisct1 (profile)
Status: Closed Package: Reproducible crash
PHP Version: 7.3.0 OS: Ubuntu 18.04
Private report: No CVE-ID: None
 [2018-12-14 00:21 UTC] security at paragonie dot com
Description:
------------
Reported to the libsodium-php repository too. Just wanted to make sure the PHP team is aware of the issue and hopefully can include the fix in 7.3.1.

https://github.com/jedisct1/libsodium-php/issues/186
https://github.com/jedisct1/libsodium-php/pull/187

Test script:
---------------
<?php

function foo()
{
    throw new SodiumException('test');
}
foo();


Expected result:
----------------
PHP Fatal error:  Uncaught SodiumException: test in /home/scott/sodium_compat/segfault.php:5
Stack trace:
#0 /home/scott/sodium_compat/segfault.php(7): foo()
#1 {main}
  thrown in /home/scott/sodium_compat/segfault.php on line 5

Actual result:
--------------
Segmentation fault (core dumped)

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2018-12-14 00:24 UTC] security at paragonie dot com
-Summary: sodium_memzero() segfaults on PHP 7.3 +Summary: SodiumException segfaults on PHP 7.3
 [2018-12-14 00:24 UTC] security at paragonie dot com
Sorry, got my wires crossed on the actual cause. Earlier I suspected memzero and wrote the wrong thing in the ticket title.
 [2018-12-14 00:28 UTC] security at paragonie dot com
-Operating System: +Operating System: Ubuntu 18.04
 [2018-12-14 00:28 UTC] security at paragonie dot com
This is happening with PHP 7.3 from Ondrej's PPA, but 3v4l.org is not reproducing the crash: https://3v4l.org/io3Gd

What follows is the output of `strace php segfault.php`, in case it's helpful:

execve("/usr/bin/php", ["php", "segfault.php"], 0x7ffd93480de8 /* 53 vars */) = 0
brk(NULL)                               = 0x5634377e8000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=79160, ...}) = 0
mmap(NULL, 79160, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696d7000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libargon2.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\r\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=34872, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f33696d5000
mmap(NULL, 2130080, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f33692bb000
mprotect(0x7f33692c3000, 2093056, PROT_NONE) = 0
mmap(0x7f33694c2000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f33694c2000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libresolv.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\00008\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=101168, ...}) = 0
mmap(NULL, 2206336, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f33690a0000
mprotect(0x7f33690b7000, 2097152, PROT_NONE) = 0
mmap(0x7f33692b7000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x7f33692b7000
mmap(0x7f33692b9000, 6784, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f33692b9000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libz.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\37\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=116960, ...}) = 0
mmap(NULL, 2212016, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3368e83000
mprotect(0x7f3368e9f000, 2093056, PROT_NONE) = 0
mmap(0x7f336909e000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b000) = 0x7f336909e000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/librt.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\"\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=31680, ...}) = 0
mmap(NULL, 2128864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3368c7b000
mprotect(0x7f3368c82000, 2093056, PROT_NONE) = 0
mmap(0x7f3368e81000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7f3368e81000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200\272\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=1700792, ...}) = 0
mmap(NULL, 3789144, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f33688dd000
mprotect(0x7f3368a7a000, 2093056, PROT_NONE) = 0
mmap(0x7f3368c79000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19c000) = 0x7f3368c79000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P\16\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=14560, ...}) = 0
mmap(NULL, 2109712, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f33686d9000
mprotect(0x7f33686dc000, 2093056, PROT_NONE) = 0
mmap(0x7f33688db000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f33688db000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libxml2.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\331\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=1834232, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f33696d3000
mmap(NULL, 3934648, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3368318000
mprotect(0x7f33684ce000, 2097152, PROT_NONE) = 0
mmap(0x7f33686ce000, 40960, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b6000) = 0x7f33686ce000
mmap(0x7f33686d8000, 2488, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f33686d8000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libssl.so.1.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\325\1\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=577312, ...}) = 0
mmap(NULL, 2673024, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f336808b000
mprotect(0x7f336810b000, 2097152, PROT_NONE) = 0
mmap(0x7f336830b000, 53248, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x80000) = 0x7f336830b000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\200\7\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=2917216, ...}) = 0
mmap(NULL, 5025640, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3367bc0000
mprotect(0x7f3367e5b000, 2093056, PROT_NONE) = 0
mmap(0x7f336805a000, 188416, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x29a000) = 0x7f336805a000
mmap(0x7f3368088000, 12136, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f3368088000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360\36\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=530984, ...}) = 0
mmap(NULL, 2626312, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f336793e000
mprotect(0x7f33679bf000, 2093056, PROT_NONE) = 0
mmap(0x7f3367bbe000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x80000) = 0x7f3367bbe000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libsodium.so.23", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340\251\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=330440, ...}) = 0
mmap(NULL, 2425864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f33676ed000
mprotect(0x7f336773d000, 2093056, PROT_NONE) = 0
mmap(0x7f336793c000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4f000) = 0x7f336793c000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\34\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=2030544, ...}) = 0
mmap(NULL, 4131552, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f33672fc000
mprotect(0x7f33674e3000, 2097152, PROT_NONE) = 0
mmap(0x7f33676e3000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1e7000) = 0x7f33676e3000
mmap(0x7f33676e9000, 15072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f33676e9000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000b\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=144976, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f33696d1000
mmap(NULL, 2221184, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f33670dd000
mprotect(0x7f33670f7000, 2093056, PROT_NONE) = 0
mmap(0x7f33672f6000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19000) = 0x7f33672f6000
mmap(0x7f33672f8000, 13440, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f33672f8000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libicuuc.so.60", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\v\6\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=1792008, ...}) = 0
mmap(NULL, 3894144, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3366d26000
mprotect(0x7f3366ec9000, 2093056, PROT_NONE) = 0
mmap(0x7f33670c8000, 81920, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a2000) = 0x7f33670c8000
mmap(0x7f33670dc000, 2944, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f33670dc000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/liblzma.so.5", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340(\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=153984, ...}) = 0
mmap(NULL, 2248968, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3366b00000
mprotect(0x7f3366b24000, 2097152, PROT_NONE) = 0
mmap(0x7f3366d24000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x24000) = 0x7f3366d24000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libicudata.so.60", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\4\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=26904264, ...}) = 0
mmap(NULL, 28999696, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3364f57000
mprotect(0x7f33668ff000, 2093056, PROT_NONE) = 0
mmap(0x7f3366afe000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19a7000) = 0x7f3366afe000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360\303\10\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=1594832, ...}) = 0
mmap(NULL, 3702816, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3364bce000
mprotect(0x7f3364d47000, 2097152, PROT_NONE) = 0
mmap(0x7f3364f47000, 49152, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x179000) = 0x7f3364f47000
mmap(0x7f3364f53000, 12320, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f3364f53000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300*\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=96616, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f33696cf000
mmap(NULL, 2192432, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f33649b6000
mprotect(0x7f33649cd000, 2093056, PROT_NONE) = 0
mmap(0x7f3364bcc000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16000) = 0x7f3364bcc000
close(3)                                = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f33696cd000
mmap(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f33696ca000
arch_prctl(ARCH_SET_FS, 0x7f33696cab80) = 0
mprotect(0x7f33676e3000, 16384, PROT_READ) = 0
mprotect(0x7f3364bcc000, 4096, PROT_READ) = 0
mprotect(0x7f3368c79000, 4096, PROT_READ) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f33696c8000
mprotect(0x7f3364f47000, 40960, PROT_READ) = 0
mprotect(0x7f3366afe000, 4096, PROT_READ) = 0
mprotect(0x7f33688db000, 4096, PROT_READ) = 0
mprotect(0x7f33672f6000, 4096, PROT_READ) = 0
mprotect(0x7f3366d24000, 4096, PROT_READ) = 0
mprotect(0x7f33670c8000, 77824, PROT_READ) = 0
mprotect(0x7f336793c000, 4096, PROT_READ) = 0
mprotect(0x7f3367bbe000, 4096, PROT_READ) = 0
mprotect(0x7f336805a000, 180224, PROT_READ) = 0
mprotect(0x7f336830b000, 36864, PROT_READ) = 0
mprotect(0x7f336909e000, 4096, PROT_READ) = 0
mprotect(0x7f33686ce000, 32768, PROT_READ) = 0
mprotect(0x7f3368e81000, 4096, PROT_READ) = 0
mprotect(0x7f33692b7000, 4096, PROT_READ) = 0
mprotect(0x7f33694c2000, 4096, PROT_READ) = 0
mprotect(0x563437435000, 577536, PROT_READ) = 0
mprotect(0x7f33696eb000, 4096, PROT_READ) = 0
munmap(0x7f33696d7000, 79160)           = 0
set_tid_address(0x7f33696cae50)         = 31172
set_robust_list(0x7f33696cae60, 24)     = 0
rt_sigaction(SIGRTMIN, {sa_handler=0x7f33670e2cb0, sa_mask=[], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7f33670ef890}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {sa_handler=0x7f33670e2d50, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART|SA_SIGINFO, sa_restorer=0x7f33670ef890}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
brk(NULL)                               = 0x5634377e8000
brk(0x563437809000)                     = 0x563437809000
rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[PIPE], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f336733af20}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGHUP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGINT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGQUIT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGILL, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTRAP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGABRT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGBUS, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGFPE, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGKILL, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGUSR1, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGSEGV, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGUSR2, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGPIPE, NULL, {sa_handler=SIG_IGN, sa_mask=[PIPE], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f336733af20}, 8) = 0
rt_sigaction(SIGALRM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTERM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGSTKFLT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGCHLD, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGCONT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGSTOP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTSTP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTTIN, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTTOU, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGURG, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGXCPU, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGXFSZ, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGVTALRM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGPROF, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGWINCH, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGIO, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGPWR, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGSYS, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_2, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_3, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_4, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_5, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_6, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_7, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_8, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_9, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_10, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_11, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_12, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_13, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_14, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_15, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_16, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_17, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_18, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_19, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_20, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_21, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_22, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_23, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_24, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_25, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_26, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_27, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_28, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_29, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_30, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_31, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGRT_32, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
mmap(NULL, 2097152, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f33647b6000
munmap(0x7f33647b6000, 2097152)         = 0
mmap(NULL, 4190208, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f33645b7000
munmap(0x7f33645b7000, 299008)          = 0
munmap(0x7f3364800000, 1794048)         = 0
madvise(0x7f3364600000, 2097152, MADV_HUGEPAGE) = 0
getcwd("/home/scott/sodium_compat", 4096) = 26
brk(0x56343782a000)                     = 0x56343782a000
openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=10281936, ...}) = 0
mmap(NULL, 10281936, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f3363c31000
close(3)                                = 0
openat(AT_FDCWD, "/etc/localtime", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=3545, ...}) = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=3545, ...}) = 0
read(3, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\5\0\0\0\5\0\0\0\0"..., 4096) = 3545
lseek(3, -2261, SEEK_CUR)               = 1284
read(3, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\5\0\0\0\5\0\0\0\0"..., 4096) = 2261
close(3)                                = 0
lstat("/home/scott/.local/bin/php", 0x7ffc52d6b050) = -1 ENOENT (No such file or directory)
lstat("/usr/local/sbin/php", 0x7ffc52d6b050) = -1 ENOENT (No such file or directory)
lstat("/usr/local/bin/php", 0x7ffc52d6b050) = -1 ENOENT (No such file or directory)
lstat("/usr/sbin/php", 0x7ffc52d6b050)  = -1 ENOENT (No such file or directory)
lstat("/usr/bin/php", {st_mode=S_IFLNK|0777, st_size=21, ...}) = 0
readlink("/usr/bin/php", "/etc/alternatives/php", 4096) = 21
lstat("/etc/alternatives/php", {st_mode=S_IFLNK|0777, st_size=15, ...}) = 0
readlink("/etc/alternatives/php", "/usr/bin/php7.3", 4096) = 15
lstat("/usr/bin/php7.3", {st_mode=S_IFREG|0755, st_size=4675320, ...}) = 0
lstat("/usr/bin", {st_mode=S_IFDIR|0755, st_size=69632, ...}) = 0
lstat("/usr", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
access("/usr/bin/php7.3", X_OK)         = 0
stat("/usr/bin/php7.3", {st_mode=S_IFREG|0755, st_size=4675320, ...}) = 0
openat(AT_FDCWD, "/usr/bin/php-cli.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/php/7.3/cli/php-cli.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/bin/php.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/php/7.3/cli/php.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=70768, ...}) = 0
mmap(NULL, 70800, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696d9000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696d9000, 70800)           = 0
close(3)                                = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3
fstat(3, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
getdents(3, /* 28 entries */, 32768)    = 984
getdents(3, /* 0 entries */, 32768)     = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/10-opcache.ini", {st_mode=S_IFREG|0644, st_size=79, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/10-opcache.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=79, ...}) = 0
mmap(NULL, 111, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 111)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/10-pdo.ini", {st_mode=S_IFREG|0644, st_size=69, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/10-pdo.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=69, ...}) = 0
mmap(NULL, 101, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 101)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/15-xml.ini", {st_mode=S_IFREG|0644, st_size=66, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/15-xml.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=66, ...}) = 0
mmap(NULL, 98, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 98)              = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-calendar.ini", {st_mode=S_IFREG|0644, st_size=74, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-calendar.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=74, ...}) = 0
mmap(NULL, 106, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 106)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-ctype.ini", {st_mode=S_IFREG|0644, st_size=71, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-ctype.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=71, ...}) = 0
mmap(NULL, 103, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 103)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-dom.ini", {st_mode=S_IFREG|0644, st_size=66, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-dom.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=66, ...}) = 0
mmap(NULL, 98, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 98)              = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-exif.ini", {st_mode=S_IFREG|0644, st_size=70, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-exif.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=70, ...}) = 0
mmap(NULL, 102, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 102)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-fileinfo.ini", {st_mode=S_IFREG|0644, st_size=74, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-fileinfo.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=74, ...}) = 0
mmap(NULL, 106, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 106)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-ftp.ini", {st_mode=S_IFREG|0644, st_size=69, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-ftp.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=69, ...}) = 0
mmap(NULL, 101, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 101)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-gettext.ini", {st_mode=S_IFREG|0644, st_size=73, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-gettext.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=73, ...}) = 0
mmap(NULL, 105, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 105)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-iconv.ini", {st_mode=S_IFREG|0644, st_size=71, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-iconv.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=71, ...}) = 0
mmap(NULL, 103, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 103)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-json.ini", {st_mode=S_IFREG|0644, st_size=68, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-json.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=68, ...}) = 0
mmap(NULL, 100, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 100)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-phar.ini", {st_mode=S_IFREG|0644, st_size=70, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-phar.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=70, ...}) = 0
mmap(NULL, 102, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 102)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-posix.ini", {st_mode=S_IFREG|0644, st_size=71, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-posix.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=71, ...}) = 0
mmap(NULL, 103, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 103)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-readline.ini", {st_mode=S_IFREG|0644, st_size=76, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-readline.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=76, ...}) = 0
mmap(NULL, 108, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 108)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-shmop.ini", {st_mode=S_IFREG|0644, st_size=71, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-shmop.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=71, ...}) = 0
mmap(NULL, 103, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 103)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-simplexml.ini", {st_mode=S_IFREG|0644, st_size=72, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-simplexml.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=72, ...}) = 0
mmap(NULL, 104, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 104)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-sockets.ini", {st_mode=S_IFREG|0644, st_size=73, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-sockets.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=73, ...}) = 0
mmap(NULL, 105, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 105)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-sysvmsg.ini", {st_mode=S_IFREG|0644, st_size=73, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-sysvmsg.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=73, ...}) = 0
mmap(NULL, 105, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 105)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-sysvsem.ini", {st_mode=S_IFREG|0644, st_size=73, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-sysvsem.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=73, ...}) = 0
mmap(NULL, 105, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 105)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-sysvshm.ini", {st_mode=S_IFREG|0644, st_size=73, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-sysvshm.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=73, ...}) = 0
mmap(NULL, 105, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 105)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-tokenizer.ini", {st_mode=S_IFREG|0644, st_size=75, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-tokenizer.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=75, ...}) = 0
mmap(NULL, 107, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 107)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-wddx.ini", {st_mode=S_IFREG|0644, st_size=67, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-wddx.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=67, ...}) = 0
mmap(NULL, 99, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 99)              = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-xmlreader.ini", {st_mode=S_IFREG|0644, st_size=72, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-xmlreader.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=72, ...}) = 0
mmap(NULL, 104, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 104)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-xmlwriter.ini", {st_mode=S_IFREG|0644, st_size=72, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-xmlwriter.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=72, ...}) = 0
mmap(NULL, 104, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 104)             = 0
close(3)                                = 0
stat("/etc/php/7.3/cli/conf.d/20-xsl.ini", {st_mode=S_IFREG|0644, st_size=66, ...}) = 0
openat(AT_FDCWD, "/etc/php/7.3/cli/conf.d/20-xsl.ini", O_RDONLY) = 3
ioctl(3, TCGETS, 0x7ffc52d6bd90)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0644, st_size=66, ...}) = 0
mmap(NULL, 98, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
lseek(3, 0, SEEK_CUR)                   = 0
munmap(0x7f33696ea000, 98)              = 0
close(3)                                = 0
mmap(NULL, 135168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f33696a7000
brk(0x56343784b000)                     = 0x56343784b000
brk(0x56343786f000)                     = 0x56343786f000
futex(0x7f33688dc0c8, FUTEX_WAKE_PRIVATE, 2147483647) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/opcache.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340\340\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=506432, ...}) = 0
mmap(NULL, 2639384, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f33639ac000
mprotect(0x7f3363a1e000, 2097152, PROT_NONE) = 0
mmap(0x7f3363c1e000, 40960, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x72000) = 0x7f3363c1e000
mmap(0x7f3363c28000, 34328, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f3363c28000
close(3)                                = 0
mprotect(0x7f3363c1e000, 36864, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/pdo.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0f\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=112744, ...}) = 0
mmap(NULL, 2208640, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3363790000
mprotect(0x7f33637a8000, 2097152, PROT_NONE) = 0
mmap(0x7f33639a8000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x18000) = 0x7f33639a8000
close(3)                                = 0
mprotect(0x7f33639a8000, 12288, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/xml.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P5\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=47208, ...}) = 0
mmap(NULL, 2142480, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3363584000
mprotect(0x7f336358e000, 2093056, PROT_NONE) = 0
mmap(0x7f336378d000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9000) = 0x7f336378d000
close(3)                                = 0
mprotect(0x7f336378d000, 8192, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/calendar.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\"\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=30824, ...}) = 0
mmap(NULL, 2126032, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f336337c000
mprotect(0x7f3363382000, 2093056, PROT_NONE) = 0
mmap(0x7f3363581000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5000) = 0x7f3363581000
close(3)                                = 0
mprotect(0x7f3363581000, 8192, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/ctype.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\v\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=14440, ...}) = 0
mmap(NULL, 2109648, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3363178000
mprotect(0x7f336317a000, 2097152, PROT_NONE) = 0
mmap(0x7f336337a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f336337a000
close(3)                                = 0
mprotect(0x7f336337a000, 4096, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/dom.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360\232\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=161896, ...}) = 0
mmap(NULL, 2259448, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3362f50000
mprotect(0x7f3362f73000, 2097152, PROT_NONE) = 0
mmap(0x7f3363173000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x23000) = 0x7f3363173000
close(3)                                = 0
mprotect(0x7f3363173000, 16384, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/exif.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240i\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=84072, ...}) = 0
mmap(NULL, 2179376, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3362d3b000
mprotect(0x7f3362d4b000, 2097152, PROT_NONE) = 0
mmap(0x7f3362f4b000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10000) = 0x7f3362f4b000
close(3)                                = 0
mprotect(0x7f3362f4b000, 16384, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/fileinfo.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`:\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=5310576, ...}) = 0
mmap(NULL, 7406728, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f336262a000
mprotect(0x7f3362b39000, 2093056, PROT_NONE) = 0
mmap(0x7f3362d38000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x50e000) = 0x7f3362d38000
close(3)                                = 0
mprotect(0x7f3362d38000, 8192, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/ftp.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\3406\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=59496, ...}) = 0
mmap(NULL, 2154704, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f336241b000
mprotect(0x7f3362427000, 2097152, PROT_NONE) = 0
mmap(0x7f3362627000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7f3362627000
close(3)                                = 0
mprotect(0x7f3362627000, 8192, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/gettext.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20\21\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=14440, ...}) = 0
mmap(NULL, 2109648, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3362217000
mprotect(0x7f336221a000, 2093056, PROT_NONE) = 0
mmap(0x7f3362419000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f3362419000
close(3)                                = 0
mprotect(0x7f3362419000, 4096, PROT_READ) = 0
brk(0x563437895000)                     = 0x563437895000
openat(AT_FDCWD, "/usr/lib/php/20180731/iconv.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p$\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=43112, ...}) = 0
mmap(NULL, 2138360, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f336200c000
mprotect(0x7f3362015000, 2097152, PROT_NONE) = 0
mmap(0x7f3362215000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9000) = 0x7f3362215000
close(3)                                = 0
mprotect(0x7f3362215000, 4096, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/json.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\31\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=43112, ...}) = 0
mmap(NULL, 2138352, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3361e01000
mprotect(0x7f3361e0a000, 2097152, PROT_NONE) = 0
mmap(0x7f336200a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9000) = 0x7f336200a000
close(3)                                = 0
mprotect(0x7f336200a000, 4096, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/phar.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200{\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=268392, ...}) = 0
mmap(NULL, 2364576, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3361bbf000
mprotect(0x7f3361bfe000, 2093056, PROT_NONE) = 0
mmap(0x7f3361dfd000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3e000) = 0x7f3361dfd000
close(3)                                = 0
mprotect(0x7f3361dfd000, 12288, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/posix.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`)\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=34920, ...}) = 0
mmap(NULL, 2130128, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f33619b6000
mprotect(0x7f33619bd000, 2097152, PROT_NONE) = 0
mmap(0x7f3361bbd000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f3361bbd000
close(3)                                = 0
mprotect(0x7f3361bbd000, 4096, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/readline.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P%\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=30824, ...}) = 0
mmap(NULL, 2126152, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f33617ae000
mprotect(0x7f33617b4000, 2097152, PROT_NONE) = 0
mmap(0x7f33619b4000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7f33619b4000
close(3)                                = 0
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=79160, ...}) = 0
mmap(NULL, 79160, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696d7000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libedit.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\201\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=208080, ...}) = 0
mmap(NULL, 2318400, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3361577000
mprotect(0x7f33615a8000, 2093056, PROT_NONE) = 0
mmap(0x7f33617a7000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x30000) = 0x7f33617a7000
mmap(0x7f33617aa000, 12352, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f33617aa000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libtinfo.so.5", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\311\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=170784, ...}) = 0
mmap(NULL, 2267936, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f336134d000
mprotect(0x7f3361372000, 2097152, PROT_NONE) = 0
mmap(0x7f3361572000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x25000) = 0x7f3361572000
close(3)                                = 0
mprotect(0x7f3361572000, 16384, PROT_READ) = 0
mprotect(0x7f33617a7000, 8192, PROT_READ) = 0
mprotect(0x7f33619b4000, 4096, PROT_READ) = 0
munmap(0x7f33696d7000, 79160)           = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/shmop.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\17\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=14440, ...}) = 0
mmap(NULL, 2109656, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3361149000
mprotect(0x7f336114b000, 2097152, PROT_NONE) = 0
mmap(0x7f336134b000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f336134b000
close(3)                                = 0
mprotect(0x7f336134b000, 4096, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/simplexml.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\3002\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=51304, ...}) = 0
mmap(NULL, 2146832, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3360f3c000
mprotect(0x7f3360f47000, 2097152, PROT_NONE) = 0
mmap(0x7f3361147000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xb000) = 0x7f3361147000
close(3)                                = 0
mprotect(0x7f3361147000, 4096, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/sockets.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0PF\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=88168, ...}) = 0
mmap(NULL, 2183504, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3360d26000
mprotect(0x7f3360d39000, 2097152, PROT_NONE) = 0
mmap(0x7f3360f39000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13000) = 0x7f3360f39000
close(3)                                = 0
mprotect(0x7f3360f39000, 8192, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/sysvmsg.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`\24\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=14440, ...}) = 0
mmap(NULL, 2109648, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3360b22000
mprotect(0x7f3360b25000, 2093056, PROT_NONE) = 0
mmap(0x7f3360d24000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f3360d24000
close(3)                                = 0
mprotect(0x7f3360d24000, 4096, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/sysvsem.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\f\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=10344, ...}) = 0
mmap(NULL, 2105552, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f336091f000
mprotect(0x7f3360921000, 2093056, PROT_NONE) = 0
mmap(0x7f3360b20000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x7f3360b20000
close(3)                                = 0
mprotect(0x7f3360b20000, 4096, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/sysvshm.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300\21\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=14440, ...}) = 0
mmap(NULL, 2109680, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f336071b000
mprotect(0x7f336071e000, 2093056, PROT_NONE) = 0
mmap(0x7f336091d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f336091d000
close(3)                                = 0
mprotect(0x7f336091d000, 4096, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/tokenizer.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \21\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=18536, ...}) = 0
mmap(NULL, 2113744, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3360516000
mprotect(0x7f336051a000, 2093056, PROT_NONE) = 0
mmap(0x7f3360719000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f3360719000
close(3)                                = 0
mprotect(0x7f3360719000, 4096, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/wddx.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p \0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=30824, ...}) = 0
mmap(NULL, 2126032, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f336030e000
mprotect(0x7f3360315000, 2093056, PROT_NONE) = 0
mmap(0x7f3360514000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7f3360514000
close(3)                                = 0
mprotect(0x7f3360514000, 4096, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/xmlreader.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220.\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=30824, ...}) = 0
mmap(NULL, 2126376, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3360106000
mprotect(0x7f336010d000, 2093056, PROT_NONE) = 0
mmap(0x7f336030c000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7f336030c000
close(3)                                = 0
mprotect(0x7f336030c000, 4096, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/xmlwriter.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000D\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=47208, ...}) = 0
mmap(NULL, 2142720, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f335fefa000
mprotect(0x7f335ff02000, 2097152, PROT_NONE) = 0
mmap(0x7f3360102000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8000) = 0x7f3360102000
close(3)                                = 0
mprotect(0x7f3360102000, 12288, PROT_READ) = 0
openat(AT_FDCWD, "/usr/lib/php/20180731/xsl.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20-\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=30824, ...}) = 0
mmap(NULL, 2126312, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f335fcf2000
mprotect(0x7f335fcf8000, 2097152, PROT_NONE) = 0
mmap(0x7f335fef8000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7f335fef8000
close(3)                                = 0
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=79160, ...}) = 0
mmap(NULL, 79160, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696d7000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libexslt.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0;\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=87912, ...}) = 0
mmap(NULL, 2183192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f335fadc000
mprotect(0x7f335faf0000, 2097152, PROT_NONE) = 0
mmap(0x7f335fcf0000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14000) = 0x7f335fcf0000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/lib/x86_64-linux-gnu/libxslt.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000\221\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=247952, ...}) = 0
mmap(NULL, 2344296, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f335f89f000
mprotect(0x7f335f8db000, 2093056, PROT_NONE) = 0
mmap(0x7f335fada000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3b000) = 0x7f335fada000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libgcrypt.so.20", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\274\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=1155768, ...}) = 0
mmap(NULL, 3252232, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f335f584000
mprotect(0x7f335f698000, 2093056, PROT_NONE) = 0
mmap(0x7f335f897000, 28672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x113000) = 0x7f335f897000
mmap(0x7f335f89e000, 8, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f335f89e000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libgpg-error.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340+\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=84032, ...}) = 0
mmap(NULL, 2179304, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f335f36f000
mprotect(0x7f335f383000, 2093056, PROT_NONE) = 0
mmap(0x7f335f582000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13000) = 0x7f335f582000
close(3)                                = 0
mprotect(0x7f335f582000, 4096, PROT_READ) = 0
mprotect(0x7f335f897000, 8192, PROT_READ) = 0
mprotect(0x7f335fada000, 4096, PROT_READ) = 0
mprotect(0x7f335fcf0000, 4096, PROT_READ) = 0
mprotect(0x7f335fef8000, 4096, PROT_READ) = 0
munmap(0x7f33696d7000, 79160)           = 0
futex(0x7f33686d86a8, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7f3368089818, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7f336808980c, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7f33680898d8, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7f33680897f4, FUTEX_WAKE_PRIVATE, 2147483647) = 0
brk(0x5634378b6000)                     = 0x5634378b6000
futex(0x7f33680897ec, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7f3368087c7c, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7f33680896c4, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7f336808965c, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7f3368089650, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7f3368089804, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7f33680897b8, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7f33680897b0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
openat(AT_FDCWD, "/usr/lib/ssl/openssl.cnf", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=10998, ...}) = 0
read(3, "#\n# OpenSSL example configuratio"..., 4096) = 4096
read(3, "tableString, T61String (no BMPSt"..., 4096) = 4096
read(3, "eting an end user certificate as"..., 4096) = 2806
read(3, "", 4096)                       = 0
close(3)                                = 0
futex(0x7f33680897e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7f3368317840, FUTEX_WAKE_PRIVATE, 2147483647) = 0
sysinfo({uptime=3578872, loads=[5248, 1088, 352], totalram=8364535808, freeram=977698816, sharedram=99381248, bufferram=285446144, totalswap=2147479552, freeswap=2147479552, procs=607, totalhigh=0, freehigh=0, mem_unit=1}) = 0
futex(0x7f336831792c, FUTEX_WAKE_PRIVATE, 2147483647) = 0
mmap(NULL, 167936, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f336967e000
mmap(NULL, 196608, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f336964e000
brk(0x5634378d7000)                     = 0x5634378d7000
brk(0x5634378f8000)                     = 0x5634378f8000
brk(0x563437919000)                     = 0x563437919000
getrandom("\x6d\x4a\x48\x48\x09\xfe\x65\xad\x7a\x1e\x9f\x94\x37\xe7\x2e\xf3", 16, 0) = 16
getrandom("\xb7\xf7\xce\xcc\x82\x85\x1b\xa6\x4b\x30\xf2\x91\x75\xc3\x0b\xfb", 16, 0) = 16
prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
clock_getres(CLOCK_MONOTONIC, {tv_sec=0, tv_nsec=1}) = 0
brk(0x56343793a000)                     = 0x56343793a000
brk(0x56343795b000)                     = 0x56343795b000
mmap(NULL, 331776, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f33695fd000
munmap(0x7f336967e000, 167936)          = 0
futex(0x7f3368317920, FUTEX_WAKE_PRIVATE, 2147483647) = 0
brk(0x563437984000)                     = 0x563437984000
openat(AT_FDCWD, "segfault.php", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0777, st_size=93, ...}) = 0
read(3, "<?php\n\nfunction foo()\n{\n    thro"..., 4096) = 93
lseek(3, 0, SEEK_SET)                   = 0
getcwd("/home/scott/sodium_compat", 4096) = 26
lstat("/home/scott/sodium_compat/segfault.php", {st_mode=S_IFREG|0777, st_size=93, ...}) = 0
lstat("/home/scott/sodium_compat", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/home/scott", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/home", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
rt_sigaction(SIGPROF, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGPROF, {sa_handler=0x5634371102d0, sa_mask=~[ILL TRAP ABRT BUS FPE KILL SEGV CONT STOP TSTP TTIN TTOU SYS RTMIN RT_1], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7f336733af20}, NULL, 8) = 0
rt_sigaction(SIGHUP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGHUP, {sa_handler=0x5634371102d0, sa_mask=~[ILL TRAP ABRT BUS FPE KILL SEGV CONT STOP TSTP TTIN TTOU SYS RTMIN RT_1], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7f336733af20}, NULL, 8) = 0
rt_sigaction(SIGINT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGINT, {sa_handler=0x5634371102d0, sa_mask=~[ILL TRAP ABRT BUS FPE KILL SEGV CONT STOP TSTP TTIN TTOU SYS RTMIN RT_1], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7f336733af20}, NULL, 8) = 0
rt_sigaction(SIGQUIT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGQUIT, {sa_handler=0x5634371102d0, sa_mask=~[ILL TRAP ABRT BUS FPE KILL SEGV CONT STOP TSTP TTIN TTOU SYS RTMIN RT_1], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7f336733af20}, NULL, 8) = 0
rt_sigaction(SIGTERM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTERM, {sa_handler=0x5634371102d0, sa_mask=~[ILL TRAP ABRT BUS FPE KILL SEGV CONT STOP TSTP TTIN TTOU SYS RTMIN RT_1], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7f336733af20}, NULL, 8) = 0
rt_sigaction(SIGUSR1, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGUSR1, {sa_handler=0x5634371102d0, sa_mask=~[ILL TRAP ABRT BUS FPE KILL SEGV CONT STOP TSTP TTIN TTOU SYS RTMIN RT_1], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7f336733af20}, NULL, 8) = 0
rt_sigaction(SIGUSR2, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGUSR2, {sa_handler=0x5634371102d0, sa_mask=~[ILL TRAP ABRT BUS FPE KILL SEGV CONT STOP TSTP TTIN TTOU SYS RTMIN RT_1], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7f336733af20}, NULL, 8) = 0
rt_sigaction(SIGPROF, {sa_handler=0x5634371102d0, sa_mask=~[ILL TRAP ABRT BUS FPE KILL SEGV CONT STOP TSTP TTIN TTOU SYS RTMIN RT_1], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7f336733af20}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [PROF], NULL, 8) = 0
fstat(0, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 4), ...}) = 0
fstat(0, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 4), ...}) = 0
lseek(0, 0, SEEK_CUR)                   = -1 ESPIPE (Illegal seek)
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 4), ...}) = 0
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 4), ...}) = 0
lseek(1, 0, SEEK_CUR)                   = -1 ESPIPE (Illegal seek)
fstat(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 4), ...}) = 0
fstat(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 4), ...}) = 0
lseek(2, 0, SEEK_CUR)                   = -1 ESPIPE (Illegal seek)
getcwd("/home/scott/sodium_compat", 4096) = 26
ioctl(3, TCGETS, 0x7ffc52d6aa50)        = -1 ENOTTY (Inappropriate ioctl for device)
fstat(3, {st_mode=S_IFREG|0777, st_size=93, ...}) = 0
mmap(NULL, 125, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f33696ea000
munmap(0x7f33696ea000, 125)             = 0
close(3)                                = 0
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_ACCERR, si_addr=0x5634374bffb8} ---
+++ killed by SIGSEGV (core dumped) +++
Segmentation fault (core dumped)
 [2018-12-14 00:31 UTC] requinix@php.net
-Status: Open +Status: Feedback
 [2018-12-14 00:31 UTC] requinix@php.net
Can you get a backtrace too?
 [2018-12-14 02:14 UTC] security at paragonie dot com
-Status: Feedback +Status: Open
 [2018-12-14 02:14 UTC] security at paragonie dot com
$ gdb $(which php)
GNU gdb (Ubuntu 8.1-0ubuntu3) 8.1.0.20180409-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/php...(no debugging symbols found)...done.
(gdb) run /home/scott/sodium_compat/segfault.php 
Starting program: /usr/bin/php /home/scott/sodium_compat/segfault.php
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x00005555557fb831 in zend_hash_clean ()
(gdb) bt
#0  0x00005555557fb831 in zend_hash_clean ()
#1  0x00005555556d68b2 in ?? ()
#2  0x00005555556d68dc in ?? ()
#3  0x00005555557ed35b in object_and_properties_init ()
#4  0x000055555586a494 in ?? ()
#5  0x0000555555873924 in execute_ex ()
#6  0x000055555587a313 in zend_execute ()
#7  0x00005555557eb9d2 in zend_execute_scripts ()
#8  0x000055555578bce0 in php_execute_script ()
#9  0x000055555587c7ec in ?? ()
#10 0x000055555564480b in ?? ()
#11 0x00007ffff5c2eb97 in __libc_start_main (main=0x5555556443f0, argc=2, argv=0x7fffffffe038, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffe028)
    at ../csu/libc-start.c:310
#12 0x00005555556449aa in _start ()
(gdb)
 [2018-12-14 12:10 UTC] cmb@php.net
-Status: Open +Status: Verified -Assigned To: +Assigned To: jedisct1
 [2018-12-14 12:10 UTC] cmb@php.net
It seems the problem is that zend_hash_clean() is called[1] on a
hash table with refcount==2, which is not allowed:

    php: /mnt/c/Users/cmb/php-dev/php-src/Zend/zend_hash.c:1521: zend_hash_clean: Assertion `(zend_gc_refcount(&(ht)->gc) == 1) || ((ht)->u.flags & (1<<6))' failed.
    Aborted (core dumped)

Also `Z_TYPE_P(frame) == IS_ARRAY` looks fishy; shouldn't that be
`Z_TYPE_P(args) == IS_ARRAY`?

[1] <https://github.com/php/php-src/blob/php-7.3.0/ext/sodium/libsodium.c#L390-L392>
 [2018-12-14 21:36 UTC] security at paragonie dot com
Patch here: https://github.com/php/php-src/pull/3708
 [2018-12-16 14:23 UTC] sjon at hortensius dot net
FYI the 3v4l failure (to crash) was caused by sodium not being loaded correctly which I fixed - therefore making this test fail there as well
 [2018-12-16 15:37 UTC] cmb@php.net
Automatic comment on behalf of scott@paragonie.com
Revision: http://git.php.net/?p=php-src.git;a=commit;h=e0e08d376ed14c6a94e2712659828a60aa71b70a
Log: Fix #77297: SodiumException segfaults on PHP 7.3
 [2018-12-16 15:37 UTC] cmb@php.net
-Status: Verified +Status: Closed
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Fri Mar 29 05:01:28 2024 UTC