termux / proot

An chroot-like implementation using ptrace.
https://wiki.termux.com/wiki/PRoot
Other
750 stars 161 forks source link

proot warning: ptrace(POKEDATA): I/O error #15

Closed SDRausty closed 5 years ago

SDRausty commented 6 years ago

@jarradh has opened proot error: '/usr/bin/env' not found (Android 8.0.0) #80 sharing a weatlth of Termux-packages arch: aarch64 Android version 8.0.0 system information with us including this output:

$ bash ktest.sh

PRoot test results:

proot warning: ptrace(POKEDATA): I/O error
proot warning: ptrace(POKEDATA): I/O error
proot error: execve("/data/data/com.termux/files/home/TermuxArch/scripts/frags/proot/testapp"): Bad address
proot info: possible causes:
  * the program is a script but its interpreter (eg. /bin/sh) was not found;
  * the program is an ELF but its interpreter (eg. ld-linux.so) was not found;
  * the program is a foreign binary but qemu was not specified;
  * qemu does not work correctly (if specified);
  * the loader was not found or doesn't work.
fatal error: see `proot --help`
help`.

$ pwd
/data/data/com.termux/files/home/TermuxArch/scripts/frags/proot
$
michalbednarski commented 6 years ago

@jarradh Looks like proot bailed very early, before entering loader so it probably unable to run anything on your device.

Please confirm that proot true still causes error and if so please provide trace from:

strace -o proot-trace.txt -vs 5000 proot -v 9 true 2> /dev/null
0xc1c4da commented 6 years ago
execve("/data/data/com.termux/files/usr/bin/proot", ["proot", "-v", "9", "true"], ["LD_LIBRARY_PATH=/data/data/com.termux/files/usr/lib", "LANG=en_US.UTF-8", "PREFIX=/data/data/com.termux/files/usr", "PWD=/data/data/com.termux/files", "HOME=/data/data/com.termux/files/home", "TMPDIR=/data/data/com.termux/files/usr/tmp", "TERM=xterm-256color", "SHLVL=1", "ANDROID_ROOT=/system", "ANDROID_DATA=/data", "EXTERNAL_STORAGE=/sdcard", "PATH=/data/data/com.termux/files/usr/bin:/data/data/com.termux/files/usr/bin/applets", "PS1=$ ", "LD_PRELOAD=/data/data/com.termux/files/usr/lib/libtermux-exec.so", "_=/data/data/com.termux/files/usr/bin/strace", "OLDPWD=/data/data/com.termux/files/home"]) = 0
mmap(NULL, 20480, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c9d2000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9d2000, 20480, "bionic TLS guard page") = 0
mprotect(0x759c9d3000, 12288, PROT_READ|PROT_WRITE) = 0
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9d3000, 12288, "bionic TLS") = 0
set_tid_address(0x759cb2f9c0)           = 13125
faccessat(AT_FDCWD, "/dev/urandom", R_OK) = 0
futex(0x759cb2c2a0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
getrandom("\x7b\x53\xce\xc0\xc2\x4c\x3b\x62\x8f\xd9\xb4\xa1\xf7\x57\x5d\x5d\x98\x5a\x90\x60\x86\x0c\x62\x72\xea\x51\x52\xd6\x22\xd3\x37\x2f\x6d\x9b\x53\x9a\xc5\x05\x6e\x5e", 40, GRND_NONBLOCK) = 40
mmap(NULL, 1104, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c9d1000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9d1000, 1104, "arc4random data") = 0
mmap(NULL, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c9cc000
mprotect(0x759c9cc000, 4096, PROT_NONE) = 0
sigaltstack({ss_sp=0x759c9cd000, ss_flags=0, ss_size=16384}, NULL) = 0
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9cd000, 16384, "thread signal stack") = 0
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9cc000, 4096, "thread signal stack guard page") = 0
mprotect(0x759cabd000, 16384, PROT_READ) = 0
mprotect(0x759cb2e000, 4096, PROT_READ) = 0
mprotect(0x759cb2e000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759cb2e000, 4096, PROT_READ) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c9cb000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9cb000, 4096, "atexit handlers") = 0
mprotect(0x759c9cb000, 4096, PROT_READ) = 0
mprotect(0x759c9cb000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c9cb000, 4096, PROT_READ) = 0
mprotect(0x759c9cb000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c9cb000, 4096, PROT_READ) = 0
mprotect(0x759c9cb000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c9cb000, 4096, PROT_READ) = 0
mprotect(0x759c9cb000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c9cb000, 4096, PROT_READ) = 0
mprotect(0x759c9cb000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c9cb000, 4096, PROT_READ) = 0
mprotect(0x759c9cb000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c9cb000, 4096, PROT_READ) = 0
mprotect(0x759c9cb000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c9cb000, 4096, PROT_READ) = 0
mprotect(0x759c9cb000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c9cb000, 4096, PROT_READ) = 0
mprotect(0x759c9cb000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c9cb000, 4096, PROT_READ) = 0
mprotect(0x759c9cb000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c9cb000, 4096, PROT_READ) = 0
mprotect(0x759c9cb000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c9cb000, 4096, PROT_READ) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9ca000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9ca000, 4096, "linker_alloc_small_objects") = 0
mmap(NULL, 24, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c9000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c9000, 24, "linker_alloc_vector") = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c8000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c8000, 4096, "linker_alloc_small_objects") = 0
mmap(NULL, 24, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c7000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c7000, 24, "linker_alloc_vector") = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c6000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c6000, 4096, "linker_alloc") = 0
mprotect(0x759c9c6000, 4096, PROT_READ|PROT_WRITE) = 0
newfstatat(AT_FDCWD, "/dev/__properties__", {st_dev=makedev(0, 16), st_ino=13646, st_mode=S_IFDIR|0711, st_nlink=2, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=0, st_size=1420, st_atime=1526920458 /* 2018-05-21T19:34:18.519999999+0300 */, st_atime_nsec=519999999, st_mtime=1526920458 /* 2018-05-21T19:34:18.527999999+0300 */, st_mtime_nsec=527999999, st_ctime=1526920458 /* 2018-05-21T19:34:18.527999999+0300 */, st_ctime_nsec=527999999}, 0) = 0
openat(AT_FDCWD, "/property_contexts", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
faccessat(AT_FDCWD, "/system/etc/selinux/plat_property_contexts", R_OK) = 0
openat(AT_FDCWD, "/system/etc/selinux/plat_property_contexts", O_RDONLY|O_CLOEXEC) = 3
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c5000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c5000, 4096, "linker_alloc_lob") = 0
fstat(3, {st_dev=makedev(253, 0), st_ino=5486, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=16, st_size=4480, st_atime=1523530705 /* 2018-04-12T13:58:25+0300 */, st_atime_nsec=0, st_mtime=1523530705 /* 2018-04-12T13:58:25+0300 */, st_mtime_nsec=0, st_ctime=1523530705 /* 2018-04-12T13:58:25+0300 */, st_ctime_nsec=0}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c3000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c3000, 8192, "linker_alloc_lob") = 0
read(3, "asan.restore_reboot  u:object_r:asan_reboot_prop:s0\nbluetooth.              u:object_r:bluetooth_prop:s0\nconfig.                 u:object_r:config_prop:s0\nctl.bootanim            u:object_r:ctl_bootanim_prop:s0\nctl.bugreport           u:object_r:ctl_bugreport_prop:s0\nctl.console             u:object_r:ctl_console_prop:s0\nctl.dumpstate           u:object_r:ctl_dumpstate_prop:s0\nctl.fuse_               u:object_r:ctl_fuse_prop:s0\nctl.mdnsd               u:object_r:ctl_mdnsd_prop:s0\nctl.ril-daemon          u:object_r:ctl_rildaemon_prop:s0\nctl.                    u:object_r:ctl_default_prop:s0\ndalvik.                 u:object_r:dalvik_prop:s0\ndebug.db.               u:object_r:debuggerd_prop:s0\ndebug.                  u:object_r:debug_prop:s0\ndev.                    u:object_r:system_prop:s0\ndhcp.bt-pan.result      u:object_r:pan_result_prop:s0\ndhcp.                   u:object_r:dhcp_prop:s0\ndumpstate.options       u:object_r:dumpstate_options_prop:s0\ndumpstate.              u:object_r:dumpstate_prop:s0\ngsm.                    u:object_r:radio_prop:s0\nhwouc.                 u:object_r:hwouc_prop:s0\nhwservicemanager.       u:object_r:hwservicemanager_prop:s0\nhw.                     u:object_r:system_prop:s0\nlogd.logpersistd        u:object_r:logpersistd_logging_prop:s0\nlog.tag                 u:object_r:log_tag_prop:s0\nlog.tag.WifiHAL         u:object_r:wifi_log_prop:s0\nlog.                    u:object_r:log_prop:s0\nnet.cdma                u:object_r:net_radio_prop:s0\nnet.dns                 u:object_r:net_dns_prop:s0\nnet.gprs                u:object_r:net_radio_prop:s0\nnet.lte                 u:object_r:net_radio_prop:s0\nnet.ppp                 u:object_r:net_radio_prop:s0\nnet.qmi                 u:object_r:net_radio_prop:s0\nnet.rmnet               u:object_r:net_radio_prop:s0\nnet.                    u:object_r:system_prop:s0\nnfc.                    u:object_r:nfc_prop:s0\npersist.audio.          u:object_r:audio_prop:s0\npersist.bluetooth.      u:object_r:bluetooth_prop:s0\npersist.debug.          u:object_r:persist_debug_prop:s0\npersist.deep.theme      u:object_r:thememanager_deep_prop:s0\npersist.logd.logpersistd        u:object_r:logpersistd_logging_prop:s0\npersist.logd.security   u:object_r:device_logging_prop:s0\npersist.logd.           u:object_r:logd_prop:s0\npersist.log.tag         u:object_r:log_tag_prop:s0\npersist.mmc.            u:object_r:mmc_prop:s0\npersist.radio           u:object_r:radio_prop:s0\npersist.security.       u:object_r:system_prop:s0\npersist.service.bdroid. u:object_r:bluetooth_prop:s0\npersist.service.        u:object_r:system_prop:s0\npersist.sys.audit_safemode      u:object_r:safemode_prop:s0\npersist.sys.safemode    u:object_r:safemode_prop:s0\npersist.sys.            u:object_r:system_prop:s0\npersist.vendor.overlay.  u:object_r:overlay_prop:s0\nril.                    u:object_r:radio_prop:s0\nro.boot.btmacaddr       u:object_r:bluetooth_prop:s0\nro.boot.serialno        u:object_r:serialno_prop:s0\nro.boottime.             u:object_r:boottime_prop:s0\nro.boot.vendor.overlay.  u:object_r:overlay_prop:s0\nro.bt.                  u:object_r:bluetooth_prop:s0\nro.build.fingerprint    u:object_r:fingerprint_prop:s0\nro.config.              u:object_r:config_prop:s0\nro.crypto.              u:object_r:vold_prop:s0\nro.dalvik.              u:object_r:dalvik_prop:s0\nro.device_owner         u:object_r:device_logging_prop:s0\nro.hwhf.               u:object_r:hwhfd_prop:s0\nro.hw.                  u:object_r:system_prop:s0\nro.persistent_properties.ready  u:object_r:persistent_properties_ready_prop:s0\nro.ril.                 u:object_r:radio_prop:s0\nro.runtime.firstboot    u:object_r:firstboot_prop:s0\nro.runtime.             u:object_r:system_prop:s0\nro.serialno             u:object_r:serialno_prop:s0\nro.sys.safemode         u:object_r:safemode_prop:s0\nsecurity.perf_harden    u:object_r:shell_prop:s0\nselinux.restorecon_recursive   u:object_r:restorecon_prop:s0\nservice.adb.root        u:object_r:shell_prop:s0\nservice.adb.tcp.port    u:object_r:shell_prop:s0\nservice.                u:object_r:system_prop:s0\nsys.cppreopt        ", 4096) = 4096
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c2000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c2000, 4096, "linker_alloc_small_objects") = 0
mmap(NULL, 24, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c1000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c1000, 24, "linker_alloc_vector") = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c0000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c0000, 4096, "linker_alloc_small_objects") = 0
mmap(NULL, 24, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9bf000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9bf000, 24, "linker_alloc_vector") = 0
read(3, "    u:object_r:cppreopt_prop:s0\nsys.powerctl            u:object_r:powerctl_prop:s0\nsys.                    u:object_r:system_prop:s0\nsys.usb.config          u:object_r:system_radio_prop:s0\nsys.usb.ffs.            u:object_r:ffs_prop:s0\n*                       u:object_r:default_prop:s0\nvold.                   u:object_r:vold_prop:s0\nwlan.                   u:object_r:wifi_prop:s0\n", 4096) = 384
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9be000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9be000, 4096, "linker_alloc_small_objects") = 0
mmap(NULL, 48, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9bd000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9bd000, 48, "linker_alloc_vector") = 0
munmap(0x759c9c9000, 24)                = 0
read(3, "", 4096)                       = 0
munmap(0x759c9c2000, 4096)              = 0
close(3)                                = 0
munmap(0x759c9c3000, 8192)              = 0
openat(AT_FDCWD, "/vendor/etc/selinux/nonplat_property_contexts", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_dev=makedev(253, 1), st_ino=2655, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=16, st_size=4568, st_atime=1523393954 /* 2018-04-10T23:59:14+0300 */, st_atime_nsec=0, st_mtime=1523393954 /* 2018-04-10T23:59:14+0300 */, st_mtime_nsec=0, st_ctime=1523393954 /* 2018-04-10T23:59:14+0300 */, st_ctime_nsec=0}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c3000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c3000, 8192, "linker_alloc_lob") = 0
read(3, "androidboot.start_services   u:object_r:recovery_prop:s0\ncamera3.zsl.switch      u:object_r:system_prop:s0\ncamera.debug.dual.mode  u:object_r:system_prop:s0\ncamera.dump.raw2yuv     u:object_r:system_prop:s0\ncamera.fbcdraw.enable   u:object_r:system_prop:s0\ncamera.tunning.dump     u:object_r:system_prop:s0\nctl.applogcat\t\t\tu:object_r:logcat_prop:s0\nctl.chargelogcat\t\tu:object_r:logcat_prop:s0\nctl.chargemonitor               u:object_r:logcat_prop:s0\nctl.fac_log_service\t\tu:object_r:logcat_prop:s0\nctl.gpsd_47531\t\t\tu:object_r:gpsd_prop:s0\nctl.gpsd_4774\t\t\tu:object_r:gpsd_prop:s0\nctl.gpsdcl_4774\t\t\tu:object_r:gpsd_prop:s0\nctl.gpsd\t\t\tu:object_r:gpsd_prop:s0\nctl.hilogcat\t\t\tu:object_r:logcat_prop:s0\nctl.inputlogcat\t\t\tu:object_r:system_prop:s0\nctl.isplogcat           u:object_r:logcat_prop:s0\nctl.kmsgcat_cp\t\t\tu:object_r:logcat_prop:s0\nctl.kmsglogcat\t\t\tu:object_r:logcat_prop:s0\nctl.lhd_4774\t\t\tu:object_r:gpsd_prop:s0\nctl.lhdcl_4774\t\t\tu:object_r:gpsd_prop:s0\nctl.logcat_service\t\tu:object_r:logcat_prop:s0\nctl.logctl_service\t\tu:object_r:logcat_prop:s0\nctl.logserver\t\t\tu:object_r:logserver_prop:s0\nctl.modematserver\t\tu:object_r:modemlogcat_prop:s0\nctl.modemlogcat_cdma\t\tu:object_r:modemlogcat_prop:s0\nctl.modemlogcat\t\tu:object_r:modemlogcat_prop:s0\nctl.modemlogcat_VIA\t\tu:object_r:modemlogcat_prop:s0\nctl.rillogcat\t\t\tu:object_r:logcat_prop:s0\nctl.shex\t\tu:object_r:shex_prop:s0\nctl.sleeplogcat\t\t\tu:object_r:logcat_prop:s0\nctl.start\t\tu:object_r:atcmdserver_prop:s0\nctl.stop\t\tu:object_r:atcmdserver_prop:s0\nctl.tcpdump_service\t\tu:object_r:tcpdump_prop:s0\nctl.telemntncat\t\tu:object_r:telemntncat_prop:s0\ndebug.gpu.enable_skipswap           u:object_r:gpu_skipswap_property:s0\ndump.feraw.flag         u:object_r:system_prop:s0\ndump.interval.flag      u:object_r:system_prop:s0\ndump.preview.flag       u:object_r:system_prop:s0\ndump.raw.flag           u:object_r:system_prop:s0\ndump.savekey.value      u:object_r:system_prop:s0\ndumptool.\t\t\t\tu:object_r:logcat_prop:s0\nfactory.recovery.prepare        u:object_r:recovery_prop:s0\nfactory.recovery.succssful_flg     u:object_r:recovery_prop:s0\nfactory_reset.stop_srv     u:object_r:recovery_prop:s0\ngoldeneye.\t\t\t\tu:object_r:goldeneye_prop:s0\nhal.hivrarddk.exist     u:object_r:vrar_ddk_property:s0\nhifi.watchdog.come     u:object_r:hifiwatchdog_prop:s0\nhisi.vowifi.start      u:object_r:hisivowifi_prop:s0\nhuawei.check_root.\t\tu:object_r:check_root_prop:s0\nhw_chargemonitor.log            u:object_r:logcat_prop:s0\nhw.factorystart \t\tu:object_r:logcat_prop:s0\nhw.factorytestresult\tu:object_r:logcat_prop:s0\nhw.flash.disabled.by.low_temp   u:object_r:powergenie_prop:s0\nhwlog.remotedebug      u:object_r:log_tag_prop:s0\nmodem_update     u:object_r:recovery_prop:s0\npersist.config.hw.lca.region\tu:object_r:logcat_prop:s0\npersist.cust_service.done        u:object_r:recovery_prop:s0\npersist.dbg.volte_avail_ovr u:object_r:ims_debug_prop:s0\npersist.hicam.halservice.mode\t\tu:object_r:cameradaemon_prop:s0\npersist.hw.power.shutdown       u:object_r:bootanim_prop:s0\npersist.ims.\t\t\tu:object_r:ims_prop:s0\npersist.sys.huawei.debug.on\tu:object_r:logcat_prop_debug:s0\npersist.sys.jankdb\t\tu:object_r:jankservice_prop:s0\npersist.sys.smart_power\t\tu:object_r:powergenie_prop:s0\npersist.thp.            u:object_r:aptouch_daemon_prop:s0\npersist.ut. \t\t\tu:object_r:ims_prop:s0\nrecovery.hw_resize_userdata_flg     u:object_r:recovery_prop:s0\nrecovery.start_all_srv u:object_r:recovery_prop:s0\nreduce.sar.imsi.mnc\t\tu:object_r:radio_prop:s0\nro.modem_update     u:object_r:recovery_prop:s0\nruntime.mmitest.isrunning u:object_r:mmi_prop:s0\nruntime.nfc.test\tu:object_r:mmi_prop:s0\nsensor.dual.mode\t\tu:object_r:cameradaemon_prop:s0\nsensor.otp.checksum\t\tu:object_r:cameradaemon_prop:s0\nservice.hdb.rand\t\tu:object_r:shell_prop:s0\nsetup_hi110x_modules        u:object_r:hi110x_prop:s0\nsf.lcd_density\t\tu:object_r:system_prop:s0\nsys.adb.authpass\t\tu:object_r:authpass_prop:s0\nsysteminfo.enable               u:object_r:systeminfo_prop:s0\nsys.usb.ffs_hdb.\tu:object_r:ffs_prop:s0\nthp.                    u:object_r:aptouch_daemon_prop:s0\nthread_ca_server_work_property  u:object_r:teecd_prop:s0", 4096) = 4096
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c9000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c9000, 4096, "linker_alloc_small_objects") = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c2000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c2000, 4096, "linker_alloc_small_objects") = 0
mmap(NULL, 48, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9bc000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9bc000, 48, "linker_alloc_vector") = 0
munmap(0x759c9bf000, 24)                = 0
read(3, "\ntrustedcore_sfs_property\tu:object_r:teecd_prop:s0\nupdate.auth.prop.pass u:object_r:recovery_prop:s0\nuser.language\t\t\tu:object_r:system_prop:s0\nuser.region\t\t\t\tu:object_r:system_prop:s0\nvold.cryptsd.keystate\tu:object_r:vold_prop:s0\nvold.cryptsd_progress\tu:object_r:vold_prop:s0\nvold.cryptsd.state\t\tu:object_r:vold_prop:s0\nvp9.dec.opt \t\tu:object_r:vp9decopt_property:s0\nvr.mode.enter           u:object_r:vr_mode_property:s0\nxcollie.               u:object_r:xcollie_prop:s0\n", 4096) = 472
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9bf000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9bf000, 4096, "linker_alloc_small_objects") = 0
mmap(NULL, 96, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9bb000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9bb000, 96, "linker_alloc_vector") = 0
munmap(0x759c9bd000, 48)                = 0
read(3, "", 4096)                       = 0
munmap(0x759c9c9000, 4096)              = 0
close(3)                                = 0
munmap(0x759c9c3000, 8192)              = 0
openat(AT_FDCWD, "/dev/__properties__/properties_serial", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 3
fstat(3, {st_dev=makedev(0, 16), st_ino=4831, st_mode=S_IFREG|0444, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=8, st_size=131072, st_atime=1527094061 /* 2018-05-23T19:47:41.283998966+0300 */, st_atime_nsec=283998966, st_mtime=1526920458 /* 2018-05-21T19:34:18.527999999+0300 */, st_mtime_nsec=527999999, st_ctime=1526920458 /* 2018-05-21T19:34:18.527999999+0300 */, st_ctime_nsec=527999999}) = 0
mmap(NULL, 131072, PROT_READ, MAP_SHARED, 3, 0) = 0x759c99b000
close(3)                                = 0
mmap(NULL, 12288, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c998000
mprotect(0x759c999000, 4096, PROT_READ|PROT_WRITE) = 0
rt_sigaction(SIGABRT, {sa_handler=0x759c9fff84, sa_mask=~[], sa_flags=SA_ONSTACK|SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGBUS, {sa_handler=0x759c9fff84, sa_mask=~[], sa_flags=SA_ONSTACK|SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGFPE, {sa_handler=0x759c9fff84, sa_mask=~[], sa_flags=SA_ONSTACK|SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGILL, {sa_handler=0x759c9fff84, sa_mask=~[], sa_flags=SA_ONSTACK|SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGSEGV, {sa_handler=0x759c9fff84, sa_mask=~[], sa_flags=SA_ONSTACK|SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGSTKFLT, {sa_handler=0x759c9fff84, sa_mask=~[], sa_flags=SA_ONSTACK|SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGSYS, {sa_handler=0x759c9fff84, sa_mask=~[], sa_flags=SA_ONSTACK|SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGTRAP, {sa_handler=0x759c9fff84, sa_mask=~[], sa_flags=SA_ONSTACK|SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_3, {sa_handler=0x759c9fff84, sa_mask=~[], sa_flags=SA_ONSTACK|SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
prctl(PR_GET_DUMPABLE)                  = 1 (SUID_DUMP_USER)
futex(0x759cb2c2a0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
openat(AT_FDCWD, "/dev/__properties__/u:object_r:debug_prop:s0", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 3
fstat(3, {st_dev=makedev(0, 16), st_ino=4825, st_mode=S_IFREG|0444, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=8, st_size=131072, st_atime=1527093971 /* 2018-05-23T19:46:11.599998980+0300 */, st_atime_nsec=599998980, st_mtime=1526920458 /* 2018-05-21T19:34:18.527999999+0300 */, st_mtime_nsec=527999999, st_ctime=1526920458 /* 2018-05-21T19:34:18.527999999+0300 */, st_ctime_nsec=527999999}) = 0
mmap(NULL, 131072, PROT_READ, MAP_SHARED, 3, 0) = 0x759c978000
close(3)                                = 0
futex(0x759cb2c2a0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
newfstatat(AT_FDCWD, "/proc/self/exe", {st_dev=makedev(179, 59), st_ino=13701, st_mode=S_IFREG|0700, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=416, st_size=206984, st_atime=1526923592 /* 2018-05-21T20:26:32+0300 */, st_atime_nsec=0, st_mtime=1526252730 /* 2018-05-14T02:05:30+0300 */, st_mtime_nsec=0, st_ctime=1526923592 /* 2018-05-21T20:26:32.220000000+0300 */, st_ctime_nsec=220000000}, 0) = 0
mprotect(0x759c9cb000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c9cb000, 4096, PROT_READ) = 0
futex(0x759cb2c2a0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
readlinkat(AT_FDCWD, "/proc/self/exe", "/data/data/com.termux/files/usr/bin/proot", 4096) = 41
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c9000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c9000, 4096, "linker_alloc") = 0
newfstatat(AT_FDCWD, "/data", {st_dev=makedev(179, 59), st_ino=3, st_mode=S_IFDIR|0771, st_nlink=61, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=24, st_size=4096, st_atime=1519994822 /* 2018-03-02T14:47:02+0200 */, st_atime_nsec=0, st_mtime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_mtime_nsec=600000000, st_ctime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_ctime_nsec=600000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data", {st_dev=makedev(179, 59), st_ino=9672, st_mode=S_IFDIR|0771, st_nlink=223, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=40, st_size=20480, st_atime=1526919090 /* 2018-05-21T19:11:30.690000000+0300 */, st_atime_nsec=690000000, st_mtime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_mtime_nsec=160000000, st_ctime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_ctime_nsec=160000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux", {st_dev=makedev(179, 59), st_ino=11533, st_mode=S_IFDIR|0700, st_nlink=6, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=16, st_size=3488, st_atime=1526919670 /* 2018-05-21T19:21:10.610000000+0300 */, st_atime_nsec=610000000, st_mtime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_mtime_nsec=450000000, st_ctime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_ctime_nsec=450000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files", {st_dev=makedev(179, 59), st_ino=2508, st_mode=S_IFDIR|0700, st_nlink=4, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_mtime_nsec=820000000, st_ctime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_ctime_nsec=820000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr", {st_dev=makedev(179, 59), st_ino=2493, st_mode=S_IFDIR|0700, st_nlink=10, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1526927976 /* 2018-05-21T21:39:36.380000000+0300 */, st_mtime_nsec=380000000, st_ctime=1526927976 /* 2018-05-21T21:39:36.380000000+0300 */, st_ctime_nsec=380000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/lib", {st_dev=makedev(179, 59), st_ino=12251, st_mode=S_IFDIR|0700, st_nlink=7, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=16, st_size=4096, st_atime=1526921551 /* 2018-05-21T19:52:31.750000000+0300 */, st_atime_nsec=750000000, st_mtime=1527062836 /* 2018-05-23T11:07:16.610000000+0300 */, st_mtime_nsec=610000000, st_ctime=1527062836 /* 2018-05-23T11:07:16.610000000+0300 */, st_ctime_nsec=610000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/lib", {st_dev=makedev(179, 59), st_ino=12251, st_mode=S_IFDIR|0700, st_nlink=7, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=16, st_size=4096, st_atime=1526921551 /* 2018-05-21T19:52:31.750000000+0300 */, st_atime_nsec=750000000, st_mtime=1527062836 /* 2018-05-23T11:07:16.610000000+0300 */, st_mtime_nsec=610000000, st_ctime=1527062836 /* 2018-05-23T11:07:16.610000000+0300 */, st_ctime_nsec=610000000}, 0) = 0
openat(AT_FDCWD, "/system/etc/ld.config.txt", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 3
fstat(3, {st_dev=makedev(253, 0), st_ino=4330, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=16, st_size=6761, st_atime=1523530705 /* 2018-04-12T13:58:25+0300 */, st_atime_nsec=0, st_mtime=1523530705 /* 2018-04-12T13:58:25+0300 */, st_mtime_nsec=0, st_ctime=1523530705 /* 2018-04-12T13:58:25+0300 */, st_ctime_nsec=0}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c3000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c3000, 8192, "linker_alloc_lob") = 0
read(3, "# Copyright (C) 2017 The Android Open Source Project\n#\n# Bionic loader config file.\n#\n\n# Don't change the order here.\ndir.system = /system/bin/\ndir.system = /system/xbin/\ndir.vendor = /vendor/bin/\n\n[system]\nadditional.namespaces = sphal,vndk,rs\n\n###############################################################################\n# \"default\" namespace\n#\n# Framework-side code runs in this namespace. Anything from /vendor partition\n# can't be loaded in this namespace.\n###############################################################################\nnamespace.default.isolated = false\nnamespace.default.search.paths = /system/${LIB}:/vendor/${LIB}:/product/${LIB}\nnamespace.default.permitted.paths = /system/${LIB}:/vendor/${LIB}:/product/${LIB}\n\nnamespace.default.asan.search.paths = /data/asan/system/${LIB}:/system/${LIB}:/data/asan/vendor/${LIB}:/vendor/${LIB}\nnamespace.default.asan.permitted.paths = /data/asan/system/${LIB}:/system/${LIB}:/data/asan/vendor/${LIB}:/vendor/${LIB}\n\n# TODO(b/37013858): remove all dependencie", 1024) = 1024
read(3, "s to /vendor/lib from system processes\n# When this is done, comment out following three lines and remove the three\n# lines above\n#namespace.default.isolated = true\n#namespace.default.search.paths = /system/${LIB}\n#namespace.default.permitted.paths = /system/${LIB}\n#\n#namespace.default.asan.search.paths = /data/asan/system/${LIB}:/system/${LIB}\n#namespace.default.asan.permitted.paths = /data/asan/system/${LIB}:/system/${LIB}\n\n###############################################################################\n# \"sphal\" namespace\n#\n# SP-HAL(Sameprocess-HAL)s are the only vendor libraries that are allowed to be\n# loaded inside system processes. libEGL_<chipset>.so, libGLESv2_<chipset>.so,\n# android.hardware.graphics.mapper@2.0-impl.so, etc are SP-HALs.\n#\n# This namespace is exclusivly for SP-HALs. When the framework tries to dynami-\n# cally load SP-HALs, android_dlopen_ext() is used to explicitly specifying\n# that they should be searched and loaded from this namespace.\n#\n# Note that there is no link from the default ", 1024) = 1024
read(3, "namespace to this namespace.\n###############################################################################\nnamespace.sphal.isolated = true\nnamespace.sphal.visible = true\nnamespace.sphal.search.paths = /vendor/${LIB}/egl:/vendor/${LIB}/hw:/vendor/${LIB}:/odm/${LIB}\nnamespace.sphal.permitted.paths = /vendor/${LIB}:/odm/${LIB}\n\nnamespace.sphal.asan.search.paths = /data/asan/vendor/${LIB}/egl:/vendor/${LIB}/egl:/data/asan/vendor/${LIB}/hw:/vendor/${LIB}/hw:/data/asan/vendor/${LIB}:/vendor/${LIB}:/data/asan/odm/${LIB}:/odm/${LIB}\nnamespace.sphal.asan.permitted.paths = /data/asan/vendor/${LIB}:/vendor/${LIB}:/data/asan/odm/${LIB}:/odm/${LIB}\n\n# Once in this namespace, access to libraries in /system/lib is restricted. Only\n# libs listed here can be used.\nnamespace.sphal.links = default,vndk,rs\n\n# WARNING: only NDK libs can be listed here.\nnamespace.sphal.link.default.shared_libs = libc.so:libz.so:libm.so:libdl.so:libstdc++.so:liblog.so:libnativewindow.so:libEGL.so:libsync.so:libGLESv1_CM.so:libGLESv2.so:libvndksup", 1024) = 1024
read(3, "port.so\n\n# WARNING: only VNDK-SP libs can be listed here. DO NOT EDIT this line.\nnamespace.sphal.link.vndk.shared_libs = android.hardware.renderscript@1.0.so:android.hardware.graphics.allocator@2.0.so:android.hardware.graphics.mapper@2.0.so:android.hardware.graphics.common@1.0.so:android.hidl.base@1.0.so:android.hidl.memory@1.0.so:libhwbinder.so:libbase.so:libcutils.so:libhardware.so:libhidlbase.so:libhidlmemory.so:libhidltransport.so:libion.so:libutils.so:libc++.so\n\n# Renderscript gets separate namespace\nnamespace.sphal.link.rs.shared_libs = libRS_internal.so\n\n###############################################################################\n# \"rs\" namespace\n#\n# This namespace is exclusively for Renderscript internal libraries.\n# This namespace has slightly looser restriction than the vndk namespace because\n# of the genuine characteristics of Renderscript; /data is in the permitted path\n# to load the compiled *.so file and libmediandk.so can be used here.\n########################################################", 1024) = 1024
read(3, "#######################\nnamespace.rs.isolated = true\nnamespace.rs.search.paths = /vendor/${LIB}/vndk-sp:/system/${LIB}/vndk-sp:/vendor/${LIB}\nnamespace.rs.permitted.paths = /vendor/${LIB}:/data\n\nnamespace.rs.asan.search.paths = /data/asan/vendor/${LIB}/vndk-sp:/vendor/${LIB}/vndk-sp:/data/asan/system/${LIB}/vndk-sp:/system/${LIB}/vndk-sp:/data/asan/vendor/${LIB}:/vendor/${LIB}\nnamespace.rs.asan.permitted.paths = /data/asan/vendor/${LIB}:/vendor/${LIB}:/data\n\nnamespace.rs.links = default,vndk\nnamespace.rs.link.default.shared_libs = libc.so:libz.so:libm.so:libdl.so:libstdc++.so:liblog.so:libnativewindow.so:libEGL.so:libsync.so:libGLESv1_CM.so:libGLESv2.so:libmediandk.so:libui.so:libvndksupport.so\nnamespace.rs.link.vndk.shared_libs = android.hardware.renderscript@1.0.so:android.hardware.graphics.allocator@2.0.so:android.hardware.graphics.mapper@2.0.so:android.hardware.graphics.common@1.0.so:android.hidl.base@1.0.so:android.hidl.memory@1.0.so:libhwbinder.so:libbase.so:libcutils.so:libhardware.so:libhidlbase.so:li", 1024) = 1024
read(3, "bhidlmemory.so:libhidltransport.so:libion.so:libutils.so:libc++.so\n\n###############################################################################\n# \"vndk\" namespace\n#\n# This namespace is exclusively for vndk-sp libs.\n###############################################################################\nnamespace.vndk.isolated = true\nnamespace.vndk.search.paths = /vendor/${LIB}/vndk-sp:/system/${LIB}/vndk-sp:/vendor/${LIB}\nnamespace.vndk.permitted.paths = /vendor/${LIB}/hw:/vendor/${LIB}/egl\n\nnamespace.vndk.asan.search.paths = /data/asan/vendor/${LIB}/vndk-sp:/vendor/${LIB}/vndk-sp:/data/asan/system/${LIB}/vndk-sp:/system/${LIB}/vndk-sp:/data/asan/vendor/${LIB}:/vendor/${LIB}\nnamespace.vndk.asan.permitted.paths = /data/asan/vendor/${LIB}/hw:/vendor/${LIB}/hw:/data/asan/vendor/${LIB}/egl:/vendor/${LIB}/egl\n\n# When these NDK libs are required inside this namespace, then it is redirected\n# to the default namespace. This is possible since their ABI is stable across\n# Android releases.\nnamespace.vndk.links = default\nnam", 1024) = 1024
read(3, "espace.vndk.link.default.shared_libs = android.hidl.memory@1.0-impl.so:libc.so:libz.so:libm.so:libdl.so:libstdc++.so:liblog.so:libnativewindow.so:libEGL.so:libsync.so:libvndksupport.so\n\n\n[vendor]\nnamespace.default.isolated = false\nnamespace.default.search.paths = /vendor/${LIB}:/vendor/${LIB}/vndk-sp:/system/${LIB}/vndk-sp:/system/${LIB}:/odm/${LIB}\n\nnamespace.default.asan.search.paths = /data/asan/vendor/${LIB}:/vendor/${LIB}:/data/asan/vendor/${LIB}/vndk-sp:/vendor/${LIB}/vndk-sp:/data/asan/system/${LIB}/vndk-sp:/system/${LIB}/vndk-sp:/data/asan/system/${LIB}:/system/${LIB}:/data/asan/odm/${LIB}:/odm/${LIB}\n", 1024) = 617
read(3, "", 1024)                       = 0
close(3)                                = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c976000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c976000, 8192, "linker_alloc_lob") = 0
munmap(0x759c976000, 8192)              = 0
munmap(0x759c9c3000, 8192)              = 0
newfstatat(AT_FDCWD, "/system", {st_dev=makedev(253, 0), st_ino=2, st_mode=S_IFDIR|0755, st_nlink=22, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=0, st_atime_nsec=0, st_mtime=0, st_mtime_nsec=0, st_ctime=0, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/system/lib64", {st_dev=makedev(253, 0), st_ino=6586, st_mode=S_IFDIR|0755, st_nlink=6, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=40, st_size=20480, st_atime=1523530716 /* 2018-04-12T13:58:36+0300 */, st_atime_nsec=0, st_mtime=1523530716 /* 2018-04-12T13:58:36+0300 */, st_mtime_nsec=0, st_ctime=1523530716 /* 2018-04-12T13:58:36+0300 */, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/vendor", {st_dev=makedev(253, 1), st_ino=2, st_mode=S_IFDIR|0755, st_nlink=10, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=0, st_atime_nsec=0, st_mtime=0, st_mtime_nsec=0, st_ctime=0, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/vendor/lib64", {st_dev=makedev(253, 1), st_ino=3014, st_mode=S_IFDIR|0755, st_nlink=7, st_uid=0, st_gid=2000, st_blksize=4096, st_blocks=16, st_size=8192, st_atime=1523394120 /* 2018-04-11T00:02:00+0300 */, st_atime_nsec=0, st_mtime=1523394120 /* 2018-04-11T00:02:00+0300 */, st_mtime_nsec=0, st_ctime=1523394120 /* 2018-04-11T00:02:00+0300 */, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/system", {st_dev=makedev(253, 0), st_ino=2, st_mode=S_IFDIR|0755, st_nlink=22, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=0, st_atime_nsec=0, st_mtime=0, st_mtime_nsec=0, st_ctime=0, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/system/vendor", {st_dev=makedev(253, 0), st_ino=8116, st_mode=S_IFLNK|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=0, st_size=7, st_atime=1523530700 /* 2018-04-12T13:58:20+0300 */, st_atime_nsec=0, st_mtime=1523530700 /* 2018-04-12T13:58:20+0300 */, st_mtime_nsec=0, st_ctime=1523530700 /* 2018-04-12T13:58:20+0300 */, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
readlinkat(AT_FDCWD, "/system/vendor", "/vendor", 4095) = 7
newfstatat(AT_FDCWD, "/vendor", {st_dev=makedev(253, 1), st_ino=2, st_mode=S_IFDIR|0755, st_nlink=10, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=0, st_atime_nsec=0, st_mtime=0, st_mtime_nsec=0, st_ctime=0, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/vendor/lib64", {st_dev=makedev(253, 1), st_ino=3014, st_mode=S_IFDIR|0755, st_nlink=7, st_uid=0, st_gid=2000, st_blksize=4096, st_blocks=16, st_size=8192, st_atime=1523394120 /* 2018-04-11T00:02:00+0300 */, st_atime_nsec=0, st_mtime=1523394120 /* 2018-04-11T00:02:00+0300 */, st_mtime_nsec=0, st_ctime=1523394120 /* 2018-04-11T00:02:00+0300 */, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c4000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c4000, 4096, "linker_alloc_small_objects") = 0
newfstatat(AT_FDCWD, "/product", {st_dev=makedev(253, 4), st_ino=2, st_mode=S_IFDIR|0755, st_nlink=12, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=0, st_atime_nsec=0, st_mtime=0, st_mtime_nsec=0, st_ctime=0, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/product/lib64", {st_dev=makedev(253, 4), st_ino=202, st_mode=S_IFDIR|0755, st_nlink=2, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=1523345192 /* 2018-04-10T10:26:32+0300 */, st_atime_nsec=0, st_mtime=1523345192 /* 2018-04-10T10:26:32+0300 */, st_mtime_nsec=0, st_ctime=1523345192 /* 2018-04-10T10:26:32+0300 */, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/odm", {st_dev=makedev(253, 2), st_ino=2, st_mode=S_IFDIR|0755, st_nlink=7, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=0, st_atime_nsec=0, st_mtime=0, st_mtime_nsec=0, st_ctime=0, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/odm/lib64", {st_dev=makedev(253, 2), st_ino=963, st_mode=S_IFDIR|0755, st_nlink=3, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=1523394152 /* 2018-04-11T00:02:32+0300 */, st_atime_nsec=0, st_mtime=1523394152 /* 2018-04-11T00:02:32+0300 */, st_mtime_nsec=0, st_ctime=1523394152 /* 2018-04-11T00:02:32+0300 */, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c3000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c3000, 4096, "linker_alloc_small_objects") = 0
mmap(NULL, 24, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9bd000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9bd000, 24, "linker_alloc_vector") = 0
munmap(0x759c9c4000, 4096)              = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c4000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c4000, 4096, "linker_alloc_small_objects") = 0
munmap(0x759c9c3000, 4096)              = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c9c3000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c9c3000, 4096, "linker_alloc") = 0
openat(AT_FDCWD, "/data/data/com.termux/files/usr/lib/libtermux-exec.so", O_RDONLY|O_CLOEXEC) = 3
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c976000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c976000, 8192, "linker_alloc_lob") = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c974000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c974000, 8192, "linker_alloc_lob") = 0
readlinkat(AT_FDCWD, "/proc/self/fd/3", "/data/data/com.termux/files/usr/lib/libtermux-exec.so", 4096) = 53
munmap(0x759c974000, 8192)              = 0
munmap(0x759c976000, 8192)              = 0
fstat(3, {st_dev=makedev(179, 59), st_ino=3607, st_mode=S_IFREG|0600, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=24, st_size=5720, st_atime=1526921553 /* 2018-05-21T19:52:33.300000000+0300 */, st_atime_nsec=300000000, st_mtime=1526921553 /* 2018-05-21T19:52:33.300000000+0300 */, st_mtime_nsec=300000000, st_ctime=1526921553 /* 2018-05-21T19:52:33.300000000+0300 */, st_ctime_nsec=300000000}) = 0
fstatfs(3, {f_type=F2FS_SUPER_MAGIC, f_bsize=4096, f_blocks=5820924, f_bfree=3694905, f_bavail=3538233, f_files=5823997, f_ffree=3538233, f_fsid={val=[45883, 0]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_NOSUID|ST_NODEV|ST_NOATIME}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c977000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c977000, 4096, "linker_alloc_small_objects") = 0
mmap(NULL, 24, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c976000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c976000, 24, "linker_alloc_vector") = 0
pread64(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\230\21\0\0\0\0\0\0\0\0\0\0@\08\0\6\0@\0\23\0\22\0", 64, 0) = 64
mmap(NULL, 464, PROT_READ, MAP_PRIVATE, 3, 0) = 0x759c975000
mmap(NULL, 2032, PROT_READ, MAP_PRIVATE, 3, 0x1000) = 0x759c974000
mmap(NULL, 7728, PROT_READ, MAP_PRIVATE, 3, 0) = 0x759c972000
mmap(NULL, 1813, PROT_READ, MAP_PRIVATE, 3, 0) = 0x759c971000
openat(AT_FDCWD, "/data/data/com.termux/files/usr/lib/libtalloc.so.2", O_RDONLY|O_CLOEXEC) = 4
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c96f000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c96f000, 8192, "linker_alloc_lob") = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c96d000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c96d000, 8192, "linker_alloc_lob") = 0
readlinkat(AT_FDCWD, "/proc/self/fd/4", "/data/data/com.termux/files/usr/lib/libtalloc.so.2.1.13", 4096) = 55
munmap(0x759c96d000, 8192)              = 0
munmap(0x759c96f000, 8192)              = 0
fstat(4, {st_dev=makedev(179, 59), st_ino=4519, st_mode=S_IFREG|0700, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=144, st_size=67424, st_atime=1526923592 /* 2018-05-21T20:26:32+0300 */, st_atime_nsec=0, st_mtime=1523048719 /* 2018-04-07T00:05:19+0300 */, st_mtime_nsec=0, st_ctime=1526923592 /* 2018-05-21T20:26:32.130000000+0300 */, st_ctime_nsec=130000000}) = 0
fstatfs(4, {f_type=F2FS_SUPER_MAGIC, f_bsize=4096, f_blocks=5820924, f_bfree=3694904, f_bavail=3538232, f_files=5823997, f_ffree=3538232, f_fsid={val=[45883, 0]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_NOSUID|ST_NODEV|ST_NOATIME}) = 0
pread64(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0`\2\1\0\0\0\0\0\0\0\0\0@\08\0\7\0@\0\24\0\23\0", 64, 0) = 64
mmap(NULL, 520, PROT_READ, MAP_PRIVATE, 4, 0) = 0x759c970000
mmap(NULL, 2496, PROT_READ, MAP_PRIVATE, 4, 0x10000) = 0x759c96f000
mmap(NULL, 7696, PROT_READ, MAP_PRIVATE, 4, 0xf000) = 0x759c96d000
mmap(NULL, 8655, PROT_READ, MAP_PRIVATE, 4, 0) = 0x759c96a000
openat(AT_FDCWD, "/data/data/com.termux/files/usr/lib/libdl.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/system/lib64/libdl.so", O_RDONLY|O_CLOEXEC) = 5
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c968000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c968000, 8192, "linker_alloc_lob") = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c966000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c966000, 8192, "linker_alloc_lob") = 0
readlinkat(AT_FDCWD, "/proc/self/fd/5", "/system/lib64/libdl.so", 4096) = 22
munmap(0x759c966000, 8192)              = 0
munmap(0x759c968000, 8192)              = 0
fstat(5, {st_dev=makedev(253, 0), st_ino=6782, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=24, st_size=10688, st_atime=1523530714 /* 2018-04-12T13:58:34+0300 */, st_atime_nsec=0, st_mtime=1523530714 /* 2018-04-12T13:58:34+0300 */, st_mtime_nsec=0, st_ctime=1523530714 /* 2018-04-12T13:58:34+0300 */, st_ctime_nsec=0}) = 0
fstatfs(5, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=1144162, f_bfree=405858, f_bavail=401762, f_files=295408, f_ffree=287234, f_fsid={val=[2357369951, 647479277]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_RELATIME}) = 0
pread64(5, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\0$\0\0\0\0\0\0\0\0\0\0@\08\0\10\0@\0\27\0\26\0", 64, 0) = 64
mmap(NULL, 576, PROT_READ, MAP_PRIVATE, 5, 0) = 0x759c969000
mmap(NULL, 3520, PROT_READ, MAP_PRIVATE, 5, 0x2000) = 0x759c968000
mmap(NULL, 7344, PROT_READ, MAP_PRIVATE, 5, 0x1000) = 0x759c966000
mmap(NULL, 4485, PROT_READ, MAP_PRIVATE, 5, 0) = 0x759c964000
openat(AT_FDCWD, "/data/data/com.termux/files/usr/lib/libc.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/system/lib64/libc.so", O_RDONLY|O_CLOEXEC) = 6
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c962000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c962000, 8192, "linker_alloc_lob") = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c960000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c960000, 8192, "linker_alloc_lob") = 0
readlinkat(AT_FDCWD, "/proc/self/fd/6", "/system/lib64/libc.so", 4096) = 21
munmap(0x759c960000, 8192)              = 0
munmap(0x759c962000, 8192)              = 0
fstat(6, {st_dev=makedev(253, 0), st_ino=6749, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=2024, st_size=1033896, st_atime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_atime_nsec=0, st_mtime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_mtime_nsec=0, st_ctime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_ctime_nsec=0}) = 0
fstatfs(6, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=1144162, f_bfree=405858, f_bavail=401762, f_files=295408, f_ffree=287234, f_fsid={val=[2357369951, 647479277]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_RELATIME}) = 0
pread64(6, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0h\277\17\0\0\0\0\0\0\0\0\0@\08\0\10\0@\0\35\0\32\0", 64, 0) = 64
mmap(NULL, 576, PROT_READ, MAP_PRIVATE, 6, 0) = 0x759c963000
mmap(NULL, 9744, PROT_READ, MAP_PRIVATE, 6, 0xfb000) = 0x759c960000
mmap(NULL, 6848, PROT_READ, MAP_PRIVATE, 6, 0xc6000) = 0x759c95e000
mmap(NULL, 18329, PROT_READ, MAP_PRIVATE, 6, 0x7000) = 0x759c959000
mmap(NULL, 520192, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c8da000
munmap(0x759c8da000, 307200)            = 0
munmap(0x759c92a000, 192512)            = 0
mmap(0x759c925000, 5724, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 5, 0) = 0x759c925000
mmap(0x759c927000, 4104, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0x1000) = 0x759c927000
mmap(0x759c929000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x759c929000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c929000, 4096, ".bss") = 0
mmap(NULL, 520192, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c8a6000
munmap(0x759c8a6000, 176128)            = 0
munmap(0x759c8d4000, 331776)            = 0
mmap(0x759c8d1000, 2466, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x759c8d1000
mmap(0x759c8d2000, 4208, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x759c8d2000
mmap(NULL, 520192, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c852000
munmap(0x759c852000, 278528)            = 0
munmap(0x759c8b7000, 106496)            = 0
mmap(0x759c896000, 21576, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 4, 0) = 0x759c896000
mmap(0x759c8b5000, 4388, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0xf000) = 0x759c8b5000
mmap(NULL, 1306624, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c757000
munmap(0x759c757000, 204800)            = 0
munmap(0x759c85d000, 233472)            = 0
mmap(0x759c789000, 793716, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 6, 0) = 0x759c789000
mmap(0x759c84c000, 31600, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 6, 0xc2000) = 0x759c84c000
mmap(0x759c854000, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x759c854000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c854000, 36864, ".bss") = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c958000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c958000, 4096, "linker_alloc") = 0
mprotect(0x5c4c132000, 8192, PROT_READ) = 0
mprotect(0x759c8d2000, 4096, PROT_READ) = 0
mprotect(0x759c8b5000, 4096, PROT_READ) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c957000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c957000, 4096, "linker_alloc_small_objects") = 0
mprotect(0x759c927000, 4096, PROT_READ) = 0
munmap(0x759c957000, 4096)              = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c957000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c957000, 4096, "linker_alloc_small_objects") = 0
munmap(0x759c957000, 4096)              = 0
mprotect(0x759c84c000, 24576, PROT_READ) = 0
close(3)                                = 0
close(4)                                = 0
close(5)                                = 0
close(6)                                = 0
munmap(0x759c964000, 4485)              = 0
munmap(0x759c966000, 7344)              = 0
munmap(0x759c968000, 3520)              = 0
munmap(0x759c969000, 576)               = 0
munmap(0x759c959000, 18329)             = 0
munmap(0x759c95e000, 6848)              = 0
munmap(0x759c960000, 9744)              = 0
munmap(0x759c963000, 576)               = 0
munmap(0x759c96a000, 8655)              = 0
munmap(0x759c96d000, 7696)              = 0
munmap(0x759c96f000, 2496)              = 0
munmap(0x759c970000, 520)               = 0
munmap(0x759c971000, 1813)              = 0
munmap(0x759c972000, 7728)              = 0
munmap(0x759c974000, 2032)              = 0
munmap(0x759c975000, 464)               = 0
munmap(0x759c977000, 4096)              = 0
mprotect(0x759c855000, 4096, PROT_READ) = 0
mprotect(0x759c855000, 4096, PROT_READ|PROT_WRITE) = 0
faccessat(AT_FDCWD, "/dev/urandom", R_OK) = 0
getrandom("\x32\x52\x8c\xcd\xbf\xbd\x26\xf7\xe6\xfa\x18\xe2\x02\xc3\x76\xfe\x1b\x57\xe4\xf8\xcb\xad\x23\x2b\xf1\x79\xf3\xb3\xcb\x68\x7a\xc9\x4b\x8a\x53\x0b\x9c\x22\x04\x50", 40, GRND_NONBLOCK) = 40
mmap(NULL, 1104, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c977000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c977000, 1104, "arc4random data") = 0
mprotect(0x759c855000, 4096, PROT_READ) = 0
openat(AT_FDCWD, "/proc/sys/vm/overcommit_memory", O_RDONLY) = 3
read(3, "1", 1)                         = 1
close(3)                                = 0
mmap(NULL, 2097152, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x759c589000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c589000, 2097152, "libc_malloc") = 0
munmap(0x759c589000, 2097152)           = 0
mmap(NULL, 4190208, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x759c38a000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c38a000, 4190208, "libc_malloc") = 0
munmap(0x759c38a000, 483328)            = 0
munmap(0x759c600000, 1609728)           = 0
openat(AT_FDCWD, "/sys/devices/system/cpu/online", O_RDONLY|O_CLOEXEC) = 3
mmap(NULL, 2097152, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x759c200000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c200000, 2097152, "libc_malloc") = 0
fstat(3, {st_dev=makedev(0, 17), st_ino=38, st_mode=S_IFREG|0444, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=0, st_size=4096, st_atime=1527066300 /* 2018-05-23T12:05:00.538598413+0300 */, st_atime_nsec=538598413, st_mtime=1527066300 /* 2018-05-23T12:05:00.538598413+0300 */, st_mtime_nsec=538598413, st_ctime=1527066300 /* 2018-05-23T12:05:00.538598413+0300 */, st_ctime_nsec=538598413}) = 0
read(3, "0-7\n", 4096)                  = 4
close(3)                                = 0
newfstatat(AT_FDCWD, "/dev/__properties__", {st_dev=makedev(0, 16), st_ino=13646, st_mode=S_IFDIR|0711, st_nlink=2, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=0, st_size=1420, st_atime=1526920458 /* 2018-05-21T19:34:18.519999999+0300 */, st_atime_nsec=519999999, st_mtime=1526920458 /* 2018-05-21T19:34:18.527999999+0300 */, st_mtime_nsec=527999999, st_ctime=1526920458 /* 2018-05-21T19:34:18.527999999+0300 */, st_ctime_nsec=527999999}, 0) = 0
openat(AT_FDCWD, "/property_contexts", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
faccessat(AT_FDCWD, "/system/etc/selinux/plat_property_contexts", R_OK) = 0
openat(AT_FDCWD, "/system/etc/selinux/plat_property_contexts", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_dev=makedev(253, 0), st_ino=5486, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=16, st_size=4480, st_atime=1523530705 /* 2018-04-12T13:58:25+0300 */, st_atime_nsec=0, st_mtime=1523530705 /* 2018-04-12T13:58:25+0300 */, st_mtime_nsec=0, st_ctime=1523530705 /* 2018-04-12T13:58:25+0300 */, st_ctime_nsec=0}) = 0
read(3, "asan.restore_reboot  u:object_r:asan_reboot_prop:s0\nbluetooth.              u:object_r:bluetooth_prop:s0\nconfig.                 u:object_r:config_prop:s0\nctl.bootanim            u:object_r:ctl_bootanim_prop:s0\nctl.bugreport           u:object_r:ctl_bugreport_prop:s0\nctl.console             u:object_r:ctl_console_prop:s0\nctl.dumpstate           u:object_r:ctl_dumpstate_prop:s0\nctl.fuse_               u:object_r:ctl_fuse_prop:s0\nctl.mdnsd               u:object_r:ctl_mdnsd_prop:s0\nctl.ril-daemon          u:object_r:ctl_rildaemon_prop:s0\nctl.                    u:object_r:ctl_default_prop:s0\ndalvik.                 u:object_r:dalvik_prop:s0\ndebug.db.               u:object_r:debuggerd_prop:s0\ndebug.                  u:object_r:debug_prop:s0\ndev.                    u:object_r:system_prop:s0\ndhcp.bt-pan.result      u:object_r:pan_result_prop:s0\ndhcp.                   u:object_r:dhcp_prop:s0\ndumpstate.options       u:object_r:dumpstate_options_prop:s0\ndumpstate.              u:object_r:dumpstate_prop:s0\ngsm.                    u:object_r:radio_prop:s0\nhwouc.                 u:object_r:hwouc_prop:s0\nhwservicemanager.       u:object_r:hwservicemanager_prop:s0\nhw.                     u:object_r:system_prop:s0\nlogd.logpersistd        u:object_r:logpersistd_logging_prop:s0\nlog.tag                 u:object_r:log_tag_prop:s0\nlog.tag.WifiHAL         u:object_r:wifi_log_prop:s0\nlog.                    u:object_r:log_prop:s0\nnet.cdma                u:object_r:net_radio_prop:s0\nnet.dns                 u:object_r:net_dns_prop:s0\nnet.gprs                u:object_r:net_radio_prop:s0\nnet.lte                 u:object_r:net_radio_prop:s0\nnet.ppp                 u:object_r:net_radio_prop:s0\nnet.qmi                 u:object_r:net_radio_prop:s0\nnet.rmnet               u:object_r:net_radio_prop:s0\nnet.                    u:object_r:system_prop:s0\nnfc.                    u:object_r:nfc_prop:s0\npersist.audio.          u:object_r:audio_prop:s0\npersist.bluetooth.      u:object_r:bluetooth_prop:s0\npersist.debug.          u:object_r:persist_debug_prop:s0\npersist.deep.theme      u:object_r:thememanager_deep_prop:s0\npersist.logd.logpersistd        u:object_r:logpersistd_logging_prop:s0\npersist.logd.security   u:object_r:device_logging_prop:s0\npersist.logd.           u:object_r:logd_prop:s0\npersist.log.tag         u:object_r:log_tag_prop:s0\npersist.mmc.            u:object_r:mmc_prop:s0\npersist.radio           u:object_r:radio_prop:s0\npersist.security.       u:object_r:system_prop:s0\npersist.service.bdroid. u:object_r:bluetooth_prop:s0\npersist.service.        u:object_r:system_prop:s0\npersist.sys.audit_safemode      u:object_r:safemode_prop:s0\npersist.sys.safemode    u:object_r:safemode_prop:s0\npersist.sys.            u:object_r:system_prop:s0\npersist.vendor.overlay.  u:object_r:overlay_prop:s0\nril.                    u:object_r:radio_prop:s0\nro.boot.btmacaddr       u:object_r:bluetooth_prop:s0\nro.boot.serialno        u:object_r:serialno_prop:s0\nro.boottime.             u:object_r:boottime_prop:s0\nro.boot.vendor.overlay.  u:object_r:overlay_prop:s0\nro.bt.                  u:object_r:bluetooth_prop:s0\nro.build.fingerprint    u:object_r:fingerprint_prop:s0\nro.config.              u:object_r:config_prop:s0\nro.crypto.              u:object_r:vold_prop:s0\nro.dalvik.              u:object_r:dalvik_prop:s0\nro.device_owner         u:object_r:device_logging_prop:s0\nro.hwhf.               u:object_r:hwhfd_prop:s0\nro.hw.                  u:object_r:system_prop:s0\nro.persistent_properties.ready  u:object_r:persistent_properties_ready_prop:s0\nro.ril.                 u:object_r:radio_prop:s0\nro.runtime.firstboot    u:object_r:firstboot_prop:s0\nro.runtime.             u:object_r:system_prop:s0\nro.serialno             u:object_r:serialno_prop:s0\nro.sys.safemode         u:object_r:safemode_prop:s0\nsecurity.perf_harden    u:object_r:shell_prop:s0\nselinux.restorecon_recursive   u:object_r:restorecon_prop:s0\nservice.adb.root        u:object_r:shell_prop:s0\nservice.adb.tcp.port    u:object_r:shell_prop:s0\nservice.                u:object_r:system_prop:s0\nsys.cppreopt        ", 4096) = 4096
read(3, "    u:object_r:cppreopt_prop:s0\nsys.powerctl            u:object_r:powerctl_prop:s0\nsys.                    u:object_r:system_prop:s0\nsys.usb.config          u:object_r:system_radio_prop:s0\nsys.usb.ffs.            u:object_r:ffs_prop:s0\n*                       u:object_r:default_prop:s0\nvold.                   u:object_r:vold_prop:s0\nwlan.                   u:object_r:wifi_prop:s0\n", 4096) = 384
read(3, "", 4096)                       = 0
close(3)                                = 0
openat(AT_FDCWD, "/vendor/etc/selinux/nonplat_property_contexts", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_dev=makedev(253, 1), st_ino=2655, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=16, st_size=4568, st_atime=1523393954 /* 2018-04-10T23:59:14+0300 */, st_atime_nsec=0, st_mtime=1523393954 /* 2018-04-10T23:59:14+0300 */, st_mtime_nsec=0, st_ctime=1523393954 /* 2018-04-10T23:59:14+0300 */, st_ctime_nsec=0}) = 0
read(3, "androidboot.start_services   u:object_r:recovery_prop:s0\ncamera3.zsl.switch      u:object_r:system_prop:s0\ncamera.debug.dual.mode  u:object_r:system_prop:s0\ncamera.dump.raw2yuv     u:object_r:system_prop:s0\ncamera.fbcdraw.enable   u:object_r:system_prop:s0\ncamera.tunning.dump     u:object_r:system_prop:s0\nctl.applogcat\t\t\tu:object_r:logcat_prop:s0\nctl.chargelogcat\t\tu:object_r:logcat_prop:s0\nctl.chargemonitor               u:object_r:logcat_prop:s0\nctl.fac_log_service\t\tu:object_r:logcat_prop:s0\nctl.gpsd_47531\t\t\tu:object_r:gpsd_prop:s0\nctl.gpsd_4774\t\t\tu:object_r:gpsd_prop:s0\nctl.gpsdcl_4774\t\t\tu:object_r:gpsd_prop:s0\nctl.gpsd\t\t\tu:object_r:gpsd_prop:s0\nctl.hilogcat\t\t\tu:object_r:logcat_prop:s0\nctl.inputlogcat\t\t\tu:object_r:system_prop:s0\nctl.isplogcat           u:object_r:logcat_prop:s0\nctl.kmsgcat_cp\t\t\tu:object_r:logcat_prop:s0\nctl.kmsglogcat\t\t\tu:object_r:logcat_prop:s0\nctl.lhd_4774\t\t\tu:object_r:gpsd_prop:s0\nctl.lhdcl_4774\t\t\tu:object_r:gpsd_prop:s0\nctl.logcat_service\t\tu:object_r:logcat_prop:s0\nctl.logctl_service\t\tu:object_r:logcat_prop:s0\nctl.logserver\t\t\tu:object_r:logserver_prop:s0\nctl.modematserver\t\tu:object_r:modemlogcat_prop:s0\nctl.modemlogcat_cdma\t\tu:object_r:modemlogcat_prop:s0\nctl.modemlogcat\t\tu:object_r:modemlogcat_prop:s0\nctl.modemlogcat_VIA\t\tu:object_r:modemlogcat_prop:s0\nctl.rillogcat\t\t\tu:object_r:logcat_prop:s0\nctl.shex\t\tu:object_r:shex_prop:s0\nctl.sleeplogcat\t\t\tu:object_r:logcat_prop:s0\nctl.start\t\tu:object_r:atcmdserver_prop:s0\nctl.stop\t\tu:object_r:atcmdserver_prop:s0\nctl.tcpdump_service\t\tu:object_r:tcpdump_prop:s0\nctl.telemntncat\t\tu:object_r:telemntncat_prop:s0\ndebug.gpu.enable_skipswap           u:object_r:gpu_skipswap_property:s0\ndump.feraw.flag         u:object_r:system_prop:s0\ndump.interval.flag      u:object_r:system_prop:s0\ndump.preview.flag       u:object_r:system_prop:s0\ndump.raw.flag           u:object_r:system_prop:s0\ndump.savekey.value      u:object_r:system_prop:s0\ndumptool.\t\t\t\tu:object_r:logcat_prop:s0\nfactory.recovery.prepare        u:object_r:recovery_prop:s0\nfactory.recovery.succssful_flg     u:object_r:recovery_prop:s0\nfactory_reset.stop_srv     u:object_r:recovery_prop:s0\ngoldeneye.\t\t\t\tu:object_r:goldeneye_prop:s0\nhal.hivrarddk.exist     u:object_r:vrar_ddk_property:s0\nhifi.watchdog.come     u:object_r:hifiwatchdog_prop:s0\nhisi.vowifi.start      u:object_r:hisivowifi_prop:s0\nhuawei.check_root.\t\tu:object_r:check_root_prop:s0\nhw_chargemonitor.log            u:object_r:logcat_prop:s0\nhw.factorystart \t\tu:object_r:logcat_prop:s0\nhw.factorytestresult\tu:object_r:logcat_prop:s0\nhw.flash.disabled.by.low_temp   u:object_r:powergenie_prop:s0\nhwlog.remotedebug      u:object_r:log_tag_prop:s0\nmodem_update     u:object_r:recovery_prop:s0\npersist.config.hw.lca.region\tu:object_r:logcat_prop:s0\npersist.cust_service.done        u:object_r:recovery_prop:s0\npersist.dbg.volte_avail_ovr u:object_r:ims_debug_prop:s0\npersist.hicam.halservice.mode\t\tu:object_r:cameradaemon_prop:s0\npersist.hw.power.shutdown       u:object_r:bootanim_prop:s0\npersist.ims.\t\t\tu:object_r:ims_prop:s0\npersist.sys.huawei.debug.on\tu:object_r:logcat_prop_debug:s0\npersist.sys.jankdb\t\tu:object_r:jankservice_prop:s0\npersist.sys.smart_power\t\tu:object_r:powergenie_prop:s0\npersist.thp.            u:object_r:aptouch_daemon_prop:s0\npersist.ut. \t\t\tu:object_r:ims_prop:s0\nrecovery.hw_resize_userdata_flg     u:object_r:recovery_prop:s0\nrecovery.start_all_srv u:object_r:recovery_prop:s0\nreduce.sar.imsi.mnc\t\tu:object_r:radio_prop:s0\nro.modem_update     u:object_r:recovery_prop:s0\nruntime.mmitest.isrunning u:object_r:mmi_prop:s0\nruntime.nfc.test\tu:object_r:mmi_prop:s0\nsensor.dual.mode\t\tu:object_r:cameradaemon_prop:s0\nsensor.otp.checksum\t\tu:object_r:cameradaemon_prop:s0\nservice.hdb.rand\t\tu:object_r:shell_prop:s0\nsetup_hi110x_modules        u:object_r:hi110x_prop:s0\nsf.lcd_density\t\tu:object_r:system_prop:s0\nsys.adb.authpass\t\tu:object_r:authpass_prop:s0\nsysteminfo.enable               u:object_r:systeminfo_prop:s0\nsys.usb.ffs_hdb.\tu:object_r:ffs_prop:s0\nthp.                    u:object_r:aptouch_daemon_prop:s0\nthread_ca_server_work_property  u:object_r:teecd_prop:s0", 4096) = 4096
read(3, "\ntrustedcore_sfs_property\tu:object_r:teecd_prop:s0\nupdate.auth.prop.pass u:object_r:recovery_prop:s0\nuser.language\t\t\tu:object_r:system_prop:s0\nuser.region\t\t\t\tu:object_r:system_prop:s0\nvold.cryptsd.keystate\tu:object_r:vold_prop:s0\nvold.cryptsd_progress\tu:object_r:vold_prop:s0\nvold.cryptsd.state\t\tu:object_r:vold_prop:s0\nvp9.dec.opt \t\tu:object_r:vp9decopt_property:s0\nvr.mode.enter           u:object_r:vr_mode_property:s0\nxcollie.               u:object_r:xcollie_prop:s0\n", 4096) = 472
read(3, "", 4096)                       = 0
close(3)                                = 0
openat(AT_FDCWD, "/dev/__properties__/properties_serial", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 3
fstat(3, {st_dev=makedev(0, 16), st_ino=4831, st_mode=S_IFREG|0444, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=8, st_size=131072, st_atime=1527094061 /* 2018-05-23T19:47:41.283998966+0300 */, st_atime_nsec=283998966, st_mtime=1526920458 /* 2018-05-21T19:34:18.527999999+0300 */, st_mtime_nsec=527999999, st_ctime=1526920458 /* 2018-05-21T19:34:18.527999999+0300 */, st_ctime_nsec=527999999}) = 0
mmap(NULL, 131072, PROT_READ, MAP_SHARED, 3, 0) = 0x759c938000
close(3)                                = 0
mprotect(0x759c855000, 4096, PROT_READ|PROT_WRITE) = 0
openat(AT_FDCWD, "/dev/__properties__/u:object_r:default_prop:s0", O_RDONLY|O_NOFOLLOW|O_CLOEXEC) = 3
fstat(3, {st_dev=makedev(0, 16), st_ino=4788, st_mode=S_IFREG|0444, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=120, st_size=131072, st_atime=1527093622 /* 2018-05-23T19:40:22.851999033+0300 */, st_atime_nsec=851999033, st_mtime=1526920463 /* 2018-05-21T19:34:23.815999999+0300 */, st_mtime_nsec=815999999, st_ctime=1526920463 /* 2018-05-21T19:34:23.815999999+0300 */, st_ctime_nsec=815999999}) = 0
mmap(NULL, 131072, PROT_READ, MAP_SHARED, 3, 0) = 0x759c905000
close(3)                                = 0
mprotect(0x759c855000, 4096, PROT_READ) = 0
prctl(PR_GET_DUMPABLE)                  = 1 (SUID_DUMP_USER)
openat(AT_FDCWD, "/data/data/com.termux/files/usr/lib/libnetd_client.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/system/lib64/libnetd_client.so", O_RDONLY|O_CLOEXEC) = 3
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c974000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c974000, 8192, "linker_alloc_lob") = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c972000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c972000, 8192, "linker_alloc_lob") = 0
readlinkat(AT_FDCWD, "/proc/self/fd/3", "/system/lib64/libnetd_client.so", 4096) = 31
munmap(0x759c972000, 8192)              = 0
munmap(0x759c974000, 8192)              = 0
fstat(3, {st_dev=makedev(253, 0), st_ino=6932, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=32, st_size=15224, st_atime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_atime_nsec=0, st_mtime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_mtime_nsec=0, st_ctime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_ctime_nsec=0}) = 0
fstatfs(3, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=1144162, f_bfree=405858, f_bavail=401762, f_files=295408, f_ffree=287234, f_fsid={val=[2357369951, 647479277]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_RELATIME}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c975000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c975000, 4096, "linker_alloc_small_objects") = 0
pread64(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\3704\0\0\0\0\0\0\0\0\0\0@\08\0\10\0@\0\32\0\31\0", 64, 0) = 64
mmap(NULL, 576, PROT_READ, MAP_PRIVATE, 3, 0) = 0x759c974000
mmap(NULL, 4208, PROT_READ, MAP_PRIVATE, 3, 0x3000) = 0x759c972000
mmap(NULL, 7232, PROT_READ, MAP_PRIVATE, 3, 0x2000) = 0x759c970000
mmap(NULL, 3732, PROT_READ, MAP_PRIVATE, 3, 0) = 0x759c96f000
openat(AT_FDCWD, "/data/data/com.termux/files/usr/lib/libcutils.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/system/lib64/libcutils.so", O_RDONLY|O_CLOEXEC) = 4
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c96d000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c96d000, 8192, "linker_alloc_lob") = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c96b000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c96b000, 8192, "linker_alloc_lob") = 0
readlinkat(AT_FDCWD, "/proc/self/fd/4", "/system/lib64/libcutils.so", 4096) = 26
munmap(0x759c96b000, 8192)              = 0
munmap(0x759c96d000, 8192)              = 0
fstat(4, {st_dev=makedev(253, 0), st_ino=6770, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=184, st_size=93496, st_atime=1523530716 /* 2018-04-12T13:58:36+0300 */, st_atime_nsec=0, st_mtime=1523530716 /* 2018-04-12T13:58:36+0300 */, st_mtime_nsec=0, st_ctime=1523530716 /* 2018-04-12T13:58:36+0300 */, st_ctime_nsec=0}) = 0
fstatfs(4, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=1144162, f_bfree=405858, f_bavail=401762, f_files=295408, f_ffree=287234, f_fsid={val=[2357369951, 647479277]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_RELATIME}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c96e000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c96e000, 4096, "linker_alloc") = 0
pread64(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\270f\1\0\0\0\0\0\0\0\0\0@\08\0\10\0@\0\32\0\31\0", 64, 0) = 64
mmap(NULL, 576, PROT_READ, MAP_PRIVATE, 4, 0) = 0x759c96d000
mmap(NULL, 5104, PROT_READ, MAP_PRIVATE, 4, 0x16000) = 0x759c96b000
mmap(NULL, 5184, PROT_READ, MAP_PRIVATE, 4, 0x15000) = 0x759c969000
mmap(NULL, 10099, PROT_READ, MAP_PRIVATE, 4, 0x1000) = 0x759c966000
openat(AT_FDCWD, "/data/data/com.termux/files/usr/lib/libc++.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/system/lib64/libc++.so", O_RDONLY|O_CLOEXEC) = 5
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c964000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c964000, 8192, "linker_alloc_lob") = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c962000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c962000, 8192, "linker_alloc_lob") = 0
readlinkat(AT_FDCWD, "/proc/self/fd/5", "/system/lib64/libc++.so", 4096) = 23
munmap(0x759c962000, 8192)              = 0
munmap(0x759c964000, 8192)              = 0
fstat(5, {st_dev=makedev(253, 0), st_ino=6748, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=1800, st_size=917696, st_atime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_atime_nsec=0, st_mtime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_mtime_nsec=0, st_ctime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_ctime_nsec=0}) = 0
fstatfs(5, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=1144162, f_bfree=405858, f_bavail=401762, f_files=295408, f_ffree=287234, f_fsid={val=[2357369951, 647479277]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_RELATIME}) = 0
pread64(5, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\300\371\r\0\0\0\0\0\0\0\0\0@\08\0\10\0@\0\34\0\33\0", 64, 0) = 64
mmap(NULL, 576, PROT_READ, MAP_PRIVATE, 5, 0) = 0x759c965000
mmap(NULL, 6784, PROT_READ, MAP_PRIVATE, 5, 0xdf000) = 0x759c963000
mmap(NULL, 6304, PROT_READ, MAP_PRIVATE, 5, 0xdb000) = 0x759c961000
mmap(NULL, 110453, PROT_READ, MAP_PRIVATE, 5, 0xd000) = 0x759c8ea000
openat(AT_FDCWD, "/data/data/com.termux/files/usr/lib/libm.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/system/lib64/libm.so", O_RDONLY|O_CLOEXEC) = 6
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c95f000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c95f000, 8192, "linker_alloc_lob") = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c95d000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c95d000, 8192, "linker_alloc_lob") = 0
readlinkat(AT_FDCWD, "/proc/self/fd/6", "/system/lib64/libm.so", 4096) = 21
munmap(0x759c95d000, 8192)              = 0
munmap(0x759c95f000, 8192)              = 0
fstat(6, {st_dev=makedev(253, 0), st_ino=6902, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=448, st_size=228656, st_atime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_atime_nsec=0, st_mtime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_mtime_nsec=0, st_ctime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_ctime_nsec=0}) = 0
fstatfs(6, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=1144162, f_bfree=405858, f_bavail=401762, f_files=295408, f_ffree=287234, f_fsid={val=[2357369951, 647479277]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_RELATIME}) = 0
pread64(6, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\360v\3\0\0\0\0\0\0\0\0\0@\08\0\10\0@\0\31\0\30\0", 64, 0) = 64
mmap(NULL, 576, PROT_READ, MAP_PRIVATE, 6, 0) = 0x759c960000
mmap(NULL, 5152, PROT_READ, MAP_PRIVATE, 6, 0x37000) = 0x759c95e000
mmap(NULL, 5360, PROT_READ, MAP_PRIVATE, 6, 0x36000) = 0x759c95c000
mmap(NULL, 9456, PROT_READ, MAP_PRIVATE, 6, 0x1000) = 0x759c959000
openat(AT_FDCWD, "/data/data/com.termux/files/usr/lib/liblog.so", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/system/lib64/liblog.so", O_RDONLY|O_CLOEXEC) = 7
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c936000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c936000, 8192, "linker_alloc_lob") = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c934000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c934000, 8192, "linker_alloc_lob") = 0
readlinkat(AT_FDCWD, "/proc/self/fd/7", "/system/lib64/liblog.so", 4096) = 23
munmap(0x759c934000, 8192)              = 0
munmap(0x759c936000, 8192)              = 0
fstat(7, {st_dev=makedev(253, 0), st_ino=6896, st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=200, st_size=100048, st_atime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_atime_nsec=0, st_mtime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_mtime_nsec=0, st_ctime=1523530715 /* 2018-04-12T13:58:35+0300 */, st_ctime_nsec=0}) = 0
fstatfs(7, {f_type=EXT2_SUPER_MAGIC, f_bsize=4096, f_blocks=1144162, f_bfree=405858, f_bavail=401762, f_files=295408, f_ffree=287234, f_fsid={val=[2357369951, 647479277]}, f_namelen=255, f_frsize=4096, f_flags=ST_VALID|ST_RDONLY|ST_RELATIME}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0) = 0x759c937000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c937000, 4096, "linker_alloc_small_objects") = 0
pread64(7, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\0\0\0\0\0\0\0@\0\0\0\0\0\0\0P\200\1\0\0\0\0\0\0\0\0\0@\08\0\10\0@\0\32\0\31\0", 64, 0) = 64
mmap(NULL, 576, PROT_READ, MAP_PRIVATE, 7, 0) = 0x759c936000
mmap(NULL, 1824, PROT_READ, MAP_PRIVATE, 7, 0x18000) = 0x759c935000
mmap(NULL, 5152, PROT_READ, MAP_PRIVATE, 7, 0x16000) = 0x759c933000
mmap(NULL, 6141, PROT_READ, MAP_PRIVATE, 7, 0x1000) = 0x759c931000
mmap(NULL, 520192, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c70a000
munmap(0x759c70a000, 245760)            = 0
munmap(0x759c77f000, 40960)             = 0
mmap(0x759c746000, 221764, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 6, 0) = 0x759c746000
mmap(0x759c77d000, 4256, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 6, 0x36000) = 0x759c77d000
mmap(NULL, 520192, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c6c7000
munmap(0x759c6c7000, 299008)            = 0
munmap(0x759c728000, 122880)            = 0
mmap(0x759c710000, 74716, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 4, 0) = 0x759c710000
mmap(0x759c724000, 12393, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0x13000) = 0x759c724000
mmap(NULL, 1306624, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c0c1000
munmap(0x759c0c1000, 262144)            = 0
munmap(0x759c1e4000, 114688)            = 0
mmap(0x759c101000, 874748, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 5, 0) = 0x759c101000
mmap(0x759c1d8000, 32848, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0xd6000) = 0x759c1d8000
mmap(0x759c1e1000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x759c1e1000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c1e1000, 12288, ".bss") = 0
mmap(NULL, 520192, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c691000
munmap(0x759c691000, 425984)            = 0
munmap(0x759c6fe000, 73728)             = 0
mmap(0x759c6f9000, 7668, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x759c6f9000
mmap(0x759c6fc000, 4104, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x2000) = 0x759c6fc000
mmap(NULL, 520192, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c67a000
munmap(0x759c67a000, 163840)            = 0
munmap(0x759c6bb000, 253952)            = 0
mmap(0x759c6a2000, 90204, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 7, 0) = 0x759c6a2000
mmap(0x759c6b9000, 5712, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 7, 0x16000) = 0x759c6b9000
mprotect(0x759c6fc000, 4096, PROT_READ) = 0
mprotect(0x759c724000, 12288, PROT_READ) = 0
mprotect(0x759c1d8000, 32768, PROT_READ) = 0
mprotect(0x759c77d000, 4096, PROT_READ) = 0
mprotect(0x759c6b9000, 4096, PROT_READ) = 0
close(3)                                = 0
close(4)                                = 0
close(5)                                = 0
close(6)                                = 0
close(7)                                = 0
munmap(0x759c931000, 6141)              = 0
munmap(0x759c933000, 5152)              = 0
munmap(0x759c935000, 1824)              = 0
munmap(0x759c936000, 576)               = 0
munmap(0x759c8ea000, 110453)            = 0
munmap(0x759c961000, 6304)              = 0
munmap(0x759c963000, 6784)              = 0
munmap(0x759c965000, 576)               = 0
munmap(0x759c966000, 10099)             = 0
munmap(0x759c969000, 5184)              = 0
munmap(0x759c96b000, 5104)              = 0
munmap(0x759c96d000, 576)               = 0
munmap(0x759c959000, 9456)              = 0
munmap(0x759c95c000, 5360)              = 0
munmap(0x759c95e000, 5152)              = 0
munmap(0x759c960000, 576)               = 0
munmap(0x759c96f000, 3732)              = 0
munmap(0x759c970000, 7232)              = 0
munmap(0x759c972000, 4208)              = 0
munmap(0x759c974000, 576)               = 0
munmap(0x759c975000, 4096)              = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e0080, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e34e0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e0080, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x759c1e0080, FUTEX_WAKE_PRIVATE, 2147483647) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x759c975000
prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, 0x759c975000, 4096, "atexit handlers") = 0
mprotect(0x759c975000, 4096, PROT_READ) = 0
prctl(PR_GET_DUMPABLE)                  = 1 (SUID_DUMP_USER)
prctl(PR_GET_DUMPABLE)                  = 1 (SUID_DUMP_USER)
prctl(PR_GET_DUMPABLE)                  = 1 (SUID_DUMP_USER)
prctl(PR_GET_DUMPABLE)                  = 1 (SUID_DUMP_USER)
futex(0x759c854050, FUTEX_WAKE_PRIVATE, 2147483647) = 0
mprotect(0x759c96e000, 4096, PROT_READ) = 0
mprotect(0x759c9c9000, 4096, PROT_READ) = 0
mprotect(0x759c9c6000, 4096, PROT_READ) = 0
mprotect(0x759c975000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c975000, 4096, PROT_READ) = 0
mprotect(0x759c975000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c975000, 4096, PROT_READ) = 0
write(2, "proot info: ", 12)            = 12
write(2, "binding = /", 11)             = 11
write(2, "\n", 1)                       = 1
getcwd("/data/data/com.termux/files", 4096) = 28
newfstatat(AT_FDCWD, "/data", {st_dev=makedev(179, 59), st_ino=3, st_mode=S_IFDIR|0771, st_nlink=61, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=24, st_size=4096, st_atime=1519994822 /* 2018-03-02T14:47:02+0200 */, st_atime_nsec=0, st_mtime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_mtime_nsec=600000000, st_ctime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_ctime_nsec=600000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data", {st_dev=makedev(179, 59), st_ino=9672, st_mode=S_IFDIR|0771, st_nlink=223, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=40, st_size=20480, st_atime=1526919090 /* 2018-05-21T19:11:30.690000000+0300 */, st_atime_nsec=690000000, st_mtime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_mtime_nsec=160000000, st_ctime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_ctime_nsec=160000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux", {st_dev=makedev(179, 59), st_ino=11533, st_mode=S_IFDIR|0700, st_nlink=6, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=16, st_size=3488, st_atime=1526919670 /* 2018-05-21T19:21:10.610000000+0300 */, st_atime_nsec=610000000, st_mtime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_mtime_nsec=450000000, st_ctime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_ctime_nsec=450000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files", {st_dev=makedev(179, 59), st_ino=2508, st_mode=S_IFDIR|0700, st_nlink=4, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_mtime_nsec=820000000, st_ctime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_ctime_nsec=820000000}, AT_SYMLINK_NOFOLLOW) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: translate(\"/data/data/com.termux/files\" + \"true\")", 57) = 57
write(2, "\n", 1)                       = 1
newfstatat(AT_FDCWD, "/data", {st_dev=makedev(179, 59), st_ino=3, st_mode=S_IFDIR|0771, st_nlink=61, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=24, st_size=4096, st_atime=1519994822 /* 2018-03-02T14:47:02+0200 */, st_atime_nsec=0, st_mtime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_mtime_nsec=600000000, st_ctime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_ctime_nsec=600000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data", {st_dev=makedev(179, 59), st_ino=9672, st_mode=S_IFDIR|0771, st_nlink=223, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=40, st_size=20480, st_atime=1526919090 /* 2018-05-21T19:11:30.690000000+0300 */, st_atime_nsec=690000000, st_mtime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_mtime_nsec=160000000, st_ctime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_ctime_nsec=160000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux", {st_dev=makedev(179, 59), st_ino=11533, st_mode=S_IFDIR|0700, st_nlink=6, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=16, st_size=3488, st_atime=1526919670 /* 2018-05-21T19:21:10.610000000+0300 */, st_atime_nsec=610000000, st_mtime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_mtime_nsec=450000000, st_ctime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_ctime_nsec=450000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files", {st_dev=makedev(179, 59), st_ino=2508, st_mode=S_IFDIR|0700, st_nlink=4, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_mtime_nsec=820000000, st_ctime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_ctime_nsec=820000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/true", 0x7fe201dce0, AT_SYMLINK_NOFOLLOW) = -1 ENOENT (No such file or directory)
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1:          -> \"/data/data/com.termux/files/true\"", 54) = 54
write(2, "\n", 1)                       = 1
newfstatat(AT_FDCWD, "/data/data/com.termux/files/true", 0x7fe2020f70, 0) = -1 ENOENT (No such file or directory)
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: translate(\"/\" + \"/data/data/com.termux/files/usr/bin/true\")", 67) = 67
write(2, "\n", 1)                       = 1
newfstatat(AT_FDCWD, "/data", {st_dev=makedev(179, 59), st_ino=3, st_mode=S_IFDIR|0771, st_nlink=61, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=24, st_size=4096, st_atime=1519994822 /* 2018-03-02T14:47:02+0200 */, st_atime_nsec=0, st_mtime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_mtime_nsec=600000000, st_ctime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_ctime_nsec=600000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data", {st_dev=makedev(179, 59), st_ino=9672, st_mode=S_IFDIR|0771, st_nlink=223, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=40, st_size=20480, st_atime=1526919090 /* 2018-05-21T19:11:30.690000000+0300 */, st_atime_nsec=690000000, st_mtime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_mtime_nsec=160000000, st_ctime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_ctime_nsec=160000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux", {st_dev=makedev(179, 59), st_ino=11533, st_mode=S_IFDIR|0700, st_nlink=6, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=16, st_size=3488, st_atime=1526919670 /* 2018-05-21T19:21:10.610000000+0300 */, st_atime_nsec=610000000, st_mtime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_mtime_nsec=450000000, st_ctime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_ctime_nsec=450000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files", {st_dev=makedev(179, 59), st_ino=2508, st_mode=S_IFDIR|0700, st_nlink=4, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_mtime_nsec=820000000, st_ctime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_ctime_nsec=820000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr", {st_dev=makedev(179, 59), st_ino=2493, st_mode=S_IFDIR|0700, st_nlink=10, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1526927976 /* 2018-05-21T21:39:36.380000000+0300 */, st_mtime_nsec=380000000, st_ctime=1526927976 /* 2018-05-21T21:39:36.380000000+0300 */, st_ctime_nsec=380000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin", {st_dev=makedev(179, 59), st_ino=3844, st_mode=S_IFDIR|0700, st_nlink=3, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=24, st_size=8192, st_atime=1526921547 /* 2018-05-21T19:52:27.760000000+0300 */, st_atime_nsec=760000000, st_mtime=1527107618 /* 2018-05-23T23:33:38.420000000+0300 */, st_mtime_nsec=420000000, st_ctime=1527107618 /* 2018-05-23T23:33:38.420000000+0300 */, st_ctime_nsec=420000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/true", 0x7fe201dce0, AT_SYMLINK_NOFOLLOW) = -1 ENOENT (No such file or directory)
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1:          -> \"/data/data/com.termux/files/usr/bin/true\"", 62) = 62
write(2, "\n", 1)                       = 1
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/true", 0x7fe2020f70, 0) = -1 ENOENT (No such file or directory)
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: translate(\"/\" + \"/data/data/com.termux/files/usr/bin/applets/true\")", 75) = 75
write(2, "\n", 1)                       = 1
newfstatat(AT_FDCWD, "/data", {st_dev=makedev(179, 59), st_ino=3, st_mode=S_IFDIR|0771, st_nlink=61, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=24, st_size=4096, st_atime=1519994822 /* 2018-03-02T14:47:02+0200 */, st_atime_nsec=0, st_mtime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_mtime_nsec=600000000, st_ctime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_ctime_nsec=600000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data", {st_dev=makedev(179, 59), st_ino=9672, st_mode=S_IFDIR|0771, st_nlink=223, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=40, st_size=20480, st_atime=1526919090 /* 2018-05-21T19:11:30.690000000+0300 */, st_atime_nsec=690000000, st_mtime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_mtime_nsec=160000000, st_ctime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_ctime_nsec=160000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux", {st_dev=makedev(179, 59), st_ino=11533, st_mode=S_IFDIR|0700, st_nlink=6, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=16, st_size=3488, st_atime=1526919670 /* 2018-05-21T19:21:10.610000000+0300 */, st_atime_nsec=610000000, st_mtime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_mtime_nsec=450000000, st_ctime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_ctime_nsec=450000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files", {st_dev=makedev(179, 59), st_ino=2508, st_mode=S_IFDIR|0700, st_nlink=4, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_mtime_nsec=820000000, st_ctime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_ctime_nsec=820000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr", {st_dev=makedev(179, 59), st_ino=2493, st_mode=S_IFDIR|0700, st_nlink=10, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1526927976 /* 2018-05-21T21:39:36.380000000+0300 */, st_mtime_nsec=380000000, st_ctime=1526927976 /* 2018-05-21T21:39:36.380000000+0300 */, st_ctime_nsec=380000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin", {st_dev=makedev(179, 59), st_ino=3844, st_mode=S_IFDIR|0700, st_nlink=3, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=24, st_size=8192, st_atime=1526921547 /* 2018-05-21T19:52:27.760000000+0300 */, st_atime_nsec=760000000, st_mtime=1527107618 /* 2018-05-23T23:33:38.420000000+0300 */, st_mtime_nsec=420000000, st_ctime=1527107618 /* 2018-05-23T23:33:38.420000000+0300 */, st_ctime_nsec=420000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/applets", {st_dev=makedev(179, 59), st_ino=1466, st_mode=S_IFDIR|0700, st_nlink=2, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=24, st_size=24576, st_atime=1526921551 /* 2018-05-21T19:52:31.460000000+0300 */, st_atime_nsec=460000000, st_mtime=1526924302 /* 2018-05-21T20:38:22.740000000+0300 */, st_mtime_nsec=740000000, st_ctime=1526924302 /* 2018-05-21T20:38:22.740000000+0300 */, st_ctime_nsec=740000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/applets/true", {st_dev=makedev(179, 59), st_ino=7441, st_mode=S_IFLNK|0777, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=18, st_atime=1526924302 /* 2018-05-21T20:38:22.670000000+0300 */, st_atime_nsec=670000000, st_mtime=1526924302 /* 2018-05-21T20:38:22.670000000+0300 */, st_mtime_nsec=670000000, st_ctime=1526924302 /* 2018-05-21T20:38:22.710000000+0300 */, st_ctime_nsec=710000000}, AT_SYMLINK_NOFOLLOW) = 0
readlinkat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/applets/true", "../busybox", 4096) = 10
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/busybox", {st_dev=makedev(179, 59), st_ino=4752, st_mode=S_IFREG|0700, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=1040, st_size=526056, st_atime=1526924302 /* 2018-05-21T20:38:22+0300 */, st_atime_nsec=0, st_mtime=1523230886 /* 2018-04-09T02:41:26+0300 */, st_mtime_nsec=0, st_ctime=1526924302 /* 2018-05-21T20:38:22.700000000+0300 */, st_ctime_nsec=700000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/busybox", {st_dev=makedev(179, 59), st_ino=4752, st_mode=S_IFREG|0700, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=1040, st_size=526056, st_atime=1526924302 /* 2018-05-21T20:38:22+0300 */, st_atime_nsec=0, st_mtime=1523230886 /* 2018-04-09T02:41:26+0300 */, st_mtime_nsec=0, st_ctime=1526924302 /* 2018-05-21T20:38:22.700000000+0300 */, st_ctime_nsec=700000000}, AT_SYMLINK_NOFOLLOW) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1:          -> \"/data/data/com.termux/files/usr/bin/busybox\"", 65) = 65
write(2, "\n", 1)                       = 1
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/busybox", {st_dev=makedev(179, 59), st_ino=4752, st_mode=S_IFREG|0700, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=1040, st_size=526056, st_atime=1526924302 /* 2018-05-21T20:38:22+0300 */, st_atime_nsec=0, st_mtime=1523230886 /* 2018-04-09T02:41:26+0300 */, st_mtime_nsec=0, st_ctime=1526924302 /* 2018-05-21T20:38:22.700000000+0300 */, st_ctime_nsec=700000000}, 0) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: translate(\"/\" + \"/data/data/com.termux/files/usr/bin/applets/true\")", 75) = 75
write(2, "\n", 1)                       = 1
newfstatat(AT_FDCWD, "/data", {st_dev=makedev(179, 59), st_ino=3, st_mode=S_IFDIR|0771, st_nlink=61, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=24, st_size=4096, st_atime=1519994822 /* 2018-03-02T14:47:02+0200 */, st_atime_nsec=0, st_mtime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_mtime_nsec=600000000, st_ctime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_ctime_nsec=600000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data", {st_dev=makedev(179, 59), st_ino=9672, st_mode=S_IFDIR|0771, st_nlink=223, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=40, st_size=20480, st_atime=1526919090 /* 2018-05-21T19:11:30.690000000+0300 */, st_atime_nsec=690000000, st_mtime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_mtime_nsec=160000000, st_ctime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_ctime_nsec=160000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux", {st_dev=makedev(179, 59), st_ino=11533, st_mode=S_IFDIR|0700, st_nlink=6, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=16, st_size=3488, st_atime=1526919670 /* 2018-05-21T19:21:10.610000000+0300 */, st_atime_nsec=610000000, st_mtime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_mtime_nsec=450000000, st_ctime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_ctime_nsec=450000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files", {st_dev=makedev(179, 59), st_ino=2508, st_mode=S_IFDIR|0700, st_nlink=4, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_mtime_nsec=820000000, st_ctime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_ctime_nsec=820000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr", {st_dev=makedev(179, 59), st_ino=2493, st_mode=S_IFDIR|0700, st_nlink=10, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1526927976 /* 2018-05-21T21:39:36.380000000+0300 */, st_mtime_nsec=380000000, st_ctime=1526927976 /* 2018-05-21T21:39:36.380000000+0300 */, st_ctime_nsec=380000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin", {st_dev=makedev(179, 59), st_ino=3844, st_mode=S_IFDIR|0700, st_nlink=3, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=24, st_size=8192, st_atime=1526921547 /* 2018-05-21T19:52:27.760000000+0300 */, st_atime_nsec=760000000, st_mtime=1527107618 /* 2018-05-23T23:33:38.420000000+0300 */, st_mtime_nsec=420000000, st_ctime=1527107618 /* 2018-05-23T23:33:38.420000000+0300 */, st_ctime_nsec=420000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/applets", {st_dev=makedev(179, 59), st_ino=1466, st_mode=S_IFDIR|0700, st_nlink=2, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=24, st_size=24576, st_atime=1526921551 /* 2018-05-21T19:52:31.460000000+0300 */, st_atime_nsec=460000000, st_mtime=1526924302 /* 2018-05-21T20:38:22.740000000+0300 */, st_mtime_nsec=740000000, st_ctime=1526924302 /* 2018-05-21T20:38:22.740000000+0300 */, st_ctime_nsec=740000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/applets/true", {st_dev=makedev(179, 59), st_ino=7441, st_mode=S_IFLNK|0777, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=18, st_atime=1526924302 /* 2018-05-21T20:38:22.670000000+0300 */, st_atime_nsec=670000000, st_mtime=1526924302 /* 2018-05-21T20:38:22.670000000+0300 */, st_mtime_nsec=670000000, st_ctime=1526924302 /* 2018-05-21T20:38:22.710000000+0300 */, st_ctime_nsec=710000000}, AT_SYMLINK_NOFOLLOW) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1:          -> \"/data/data/com.termux/files/usr/bin/applets/true\"", 70) = 70
write(2, "\n", 1)                       = 1
write(2, "proot info: ", 12)            = 12
write(2, "exe = /data/data/com.termux/files/usr/bin/applets/true", 54) = 54
write(2, "\n", 1)                       = 1
write(2, "proot info: ", 12)            = 12
write(2, "argv = true", 11)             = 11
write(2, "\n", 1)                       = 1
write(2, "proot info: ", 12)            = 12
write(2, "initial cwd = /data/data/com.termux/files", 41) = 41
write(2, "\n", 1)                       = 1
write(2, "proot info: ", 12)            = 12
write(2, "verbose level = 9", 17)       = 17
write(2, "\n", 1)                       = 1
openat(AT_FDCWD, "/proc/13125/fd", O_RDONLY|O_CLOEXEC|O_DIRECTORY) = 3
getdents64(3, [{d_ino=6997012, d_off=1, d_reclen=24, d_type=DT_DIR, d_name="."}, {d_ino=6945745, d_off=2, d_reclen=24, d_type=DT_DIR, d_name=".."}, {d_ino=6893551, d_off=3, d_reclen=24, d_type=DT_LNK, d_name="0"}, {d_ino=6893552, d_off=4, d_reclen=24, d_type=DT_LNK, d_name="1"}, {d_ino=6893553, d_off=5, d_reclen=24, d_type=DT_LNK, d_name="2"}, {d_ino=6997013, d_off=66, d_reclen=24, d_type=DT_LNK, d_name="3"}], 4200) = 144
readlinkat(AT_FDCWD, "/proc/13125/fd/.", 0x7fe2020fd0, 4096) = -1 EINVAL (Invalid argument)
readlinkat(AT_FDCWD, "/proc/13125/fd/..", 0x7fe2020fd0, 4096) = -1 EINVAL (Invalid argument)
readlinkat(AT_FDCWD, "/proc/13125/fd/0", "/dev/pts/0", 4096) = 10
write(2, "proot info: ", 12)            = 12
write(2, "pid 13125: access to \"/dev/pts/0\" (fd 0) won't be translated until closed", 73) = 73
write(2, "\n", 1)                       = 1
readlinkat(AT_FDCWD, "/proc/13125/fd/1", "/dev/pts/0", 4096) = 10
write(2, "proot info: ", 12)            = 12
write(2, "pid 13125: access to \"/dev/pts/0\" (fd 1) won't be translated until closed", 73) = 73
write(2, "\n", 1)                       = 1
readlinkat(AT_FDCWD, "/proc/13125/fd/2", "/dev/null", 4096) = 9
write(2, "proot info: ", 12)            = 12
write(2, "pid 13125: access to \"/dev/null\" (fd 2) won't be translated until closed", 72) = 72
write(2, "\n", 1)                       = 1
readlinkat(AT_FDCWD, "/proc/13125/fd/3", "/proc/13125/fd", 4096) = 14
write(2, "proot info: ", 12)            = 12
write(2, "pid 13125: access to \"/proc/13125/fd\" (fd 3) won't be translated until closed", 77) = 77
write(2, "\n", 1)                       = 1
getdents64(3, [], 4200)                 = 0
close(3)                                = 0
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x759cb2f9c0) = 13126
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=13126, si_uid=10131, si_status=SIGSTOP, si_utime=0, si_stime=0} ---
mprotect(0x759c975000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c975000, 4096, PROT_READ) = 0
rt_sigaction(SIG_0, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = -1 EINVAL (Invalid argument)
rt_sigaction(SIGHUP, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGINT, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGQUIT, {sa_handler=0x5c4c1071c4, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGILL, {sa_handler=0x5c4c1071c4, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGTRAP, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGABRT, {sa_handler=0x5c4c1071c4, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGBUS, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGFPE, {sa_handler=0x5c4c1071c4, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGKILL, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = -1 EINVAL (Invalid argument)
rt_sigaction(SIGUSR1, {sa_handler=0x5c4c107214, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGSEGV, {sa_handler=0x5c4c1071c4, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGUSR2, {sa_handler=0x5c4c107214, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGALRM, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGTERM, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGSTKFLT, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGURG, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGXCPU, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGXFSZ, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGVTALRM, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGPROF, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGWINCH, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGIO, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGPWR, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGSYS, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRTMIN, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_2, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_3, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_4, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_5, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_6, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_7, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_8, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_9, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_10, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_11, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_12, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_13, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_14, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_15, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_16, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_17, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_18, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_19, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_20, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_21, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_22, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_23, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_24, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_25, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_26, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_27, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_28, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_29, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_30, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_31, {sa_handler=SIG_IGN, sa_mask=~[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
wait4(-1, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGSTOP}], __WALL, NULL) = 13126
ptrace(PTRACE_SYSCALL, 13126, NULL, SIG_0) = 0
wait4(-1, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP}], __WALL, NULL) = 13126
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=13126, si_uid=10131, si_status=SIGTRAP, si_utime=0, si_stime=0} ---
ptrace(PTRACE_SETOPTIONS, 13126, NULL, PTRACE_O_TRACESYSGOOD|PTRACE_O_TRACEFORK|PTRACE_O_TRACEVFORK|PTRACE_O_TRACECLONE|PTRACE_O_TRACEEXEC|PTRACE_O_TRACEVFORKDONE|PTRACE_O_TRACEEXIT|PTRACE_O_TRACESECCOMP) = 0
ptrace(PTRACE_GETREGSET, 13126, NT_PRSTATUS, [{iov_base=0x759c233100, iov_len=272}]) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysenter start: prctl(0x26, 0x1, 0x0, 0x0, 0x0, 0x0) = 0x26 [0x7fe2021fc0, 0]", 85) = 85
write(2, "\n", 1)                       = 1
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysenter end: prctl(0x26, 0x1, 0x0, 0x0, 0x0, 0x0) = 0x26 [0x7fe2021fc0, 0]", 83) = 83
write(2, "\n", 1)                       = 1
ptrace(PTRACE_SYSCALL, 13126, NULL, SIG_0) = 0
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=13126, si_uid=10131, si_status=SIGTRAP, si_utime=0, si_stime=0} ---
wait4(-1, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP | 0x80}], __WALL, NULL) = 13126
ptrace(PTRACE_GETREGSET, 13126, NT_PRSTATUS, [{iov_base=0x759c233100, iov_len=272}]) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysexit start: prctl(0x0, 0x1, 0x0, 0x0, 0x0, 0x0) = 0x0 [0x7fe2021fc0, 0]", 82) = 82
write(2, "\n", 1)                       = 1
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysexit end: prctl(0x0, 0x1, 0x0, 0x0, 0x0, 0x0) = 0x0 [0x7fe2021fc0, 0]", 80) = 80
write(2, "\n", 1)                       = 1
ptrace(PTRACE_SYSCALL, 13126, NULL, SIG_0) = 0
wait4(-1, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP | 0x80}], __WALL, NULL) = 13126
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=13126, si_uid=10131, si_status=SIGTRAP, si_utime=0, si_stime=0} ---
ptrace(PTRACE_GETREGSET, 13126, NT_PRSTATUS, [{iov_base=0x759c233100, iov_len=272}]) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysenter start: prctl(0x16, 0x2, 0x7fe2021fd0, 0x0, 0x0, 0x0) = 0x16 [0x7fe2021fc0, 0]", 94) = 94
write(2, "\n", 1)                       = 1
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysenter end: prctl(0x16, 0x2, 0x7fe2021fd0, 0x0, 0x0, 0x0) = 0x16 [0x7fe2021fc0, 0]", 92) = 92
write(2, "\n", 1)                       = 1
ptrace(PTRACE_SYSCALL, 13126, NULL, SIG_0) = 0
wait4(-1, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP | 0x80}], __WALL, NULL) = 13126
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=13126, si_uid=10131, si_status=SIGTRAP, si_utime=0, si_stime=0} ---
ptrace(PTRACE_GETREGSET, 13126, NT_PRSTATUS, [{iov_base=0x759c233100, iov_len=272}]) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysexit start: prctl(0x0, 0x2, 0x7fe2021fd0, 0x0, 0x0, 0x0) = 0x0 [0x7fe2021fc0, 0]", 91) = 91
write(2, "\n", 1)                       = 1
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysexit end: prctl(0x0, 0x2, 0x7fe2021fd0, 0x0, 0x0, 0x0) = 0x0 [0x7fe2021fc0, 0]", 89) = 89
write(2, "\n", 1)                       = 1
ptrace(PTRACE_SYSCALL, 13126, NULL, SIG_0) = 0
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=13126, si_uid=10131, si_status=SIGTRAP, si_utime=0, si_stime=0} ---
wait4(-1, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP} | PTRACE_EVENT_SECCOMP << 16], __WALL, NULL) = 13126
write(2, "proot info: ", 12)            = 12
write(2, "ptrace acceleration (seccomp mode 2, old syscall order) enabled", 63) = 63
write(2, "\n", 1)                       = 1
ptrace(PTRACE_GETEVENTMSG, 13126, NULL, [0]) = 0
ptrace(PTRACE_GETREGSET, 13126, NT_PRSTATUS, [{iov_base=0x759c233100, iov_len=272}]) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysenter start: faccessat(0xffffff9c, 0x759c24a060, 0x1, 0x0, 0x2f, 0x8080808080808080) = 0xffffff9c [0x7fe2021ad0, 0]", 126) = 126
write(2, "\n", 1)                       = 1
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a060, [0x61642f617461642f]) = 0
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a068, [0x742e6d6f632f6174]) = 0
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a070, [0x69662f78756d7265]) = 0
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a078, [0x2f7273752f73656c]) = 0
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a080, [0x6c7070612f6e6962]) = 0
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a088, [0x657572742f737465]) = 0
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a090, [NULL]) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: translate(\"/\" + \"/data/data/com.termux/files/usr/bin/applets/true\")", 75) = 75
write(2, "\n", 1)                       = 1
newfstatat(AT_FDCWD, "/data", {st_dev=makedev(179, 59), st_ino=3, st_mode=S_IFDIR|0771, st_nlink=61, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=24, st_size=4096, st_atime=1519994822 /* 2018-03-02T14:47:02+0200 */, st_atime_nsec=0, st_mtime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_mtime_nsec=600000000, st_ctime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_ctime_nsec=600000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data", {st_dev=makedev(179, 59), st_ino=9672, st_mode=S_IFDIR|0771, st_nlink=223, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=40, st_size=20480, st_atime=1526919090 /* 2018-05-21T19:11:30.690000000+0300 */, st_atime_nsec=690000000, st_mtime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_mtime_nsec=160000000, st_ctime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_ctime_nsec=160000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux", {st_dev=makedev(179, 59), st_ino=11533, st_mode=S_IFDIR|0700, st_nlink=6, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=16, st_size=3488, st_atime=1526919670 /* 2018-05-21T19:21:10.610000000+0300 */, st_atime_nsec=610000000, st_mtime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_mtime_nsec=450000000, st_ctime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_ctime_nsec=450000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files", {st_dev=makedev(179, 59), st_ino=2508, st_mode=S_IFDIR|0700, st_nlink=4, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_mtime_nsec=820000000, st_ctime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_ctime_nsec=820000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr", {st_dev=makedev(179, 59), st_ino=2493, st_mode=S_IFDIR|0700, st_nlink=10, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1526927976 /* 2018-05-21T21:39:36.380000000+0300 */, st_mtime_nsec=380000000, st_ctime=1526927976 /* 2018-05-21T21:39:36.380000000+0300 */, st_ctime_nsec=380000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin", {st_dev=makedev(179, 59), st_ino=3844, st_mode=S_IFDIR|0700, st_nlink=3, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=24, st_size=8192, st_atime=1526921547 /* 2018-05-21T19:52:27.760000000+0300 */, st_atime_nsec=760000000, st_mtime=1527107618 /* 2018-05-23T23:33:38.420000000+0300 */, st_mtime_nsec=420000000, st_ctime=1527107618 /* 2018-05-23T23:33:38.420000000+0300 */, st_ctime_nsec=420000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/applets", {st_dev=makedev(179, 59), st_ino=1466, st_mode=S_IFDIR|0700, st_nlink=2, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=24, st_size=24576, st_atime=1526921551 /* 2018-05-21T19:52:31.460000000+0300 */, st_atime_nsec=460000000, st_mtime=1526924302 /* 2018-05-21T20:38:22.740000000+0300 */, st_mtime_nsec=740000000, st_ctime=1526924302 /* 2018-05-21T20:38:22.740000000+0300 */, st_ctime_nsec=740000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/applets/true", {st_dev=makedev(179, 59), st_ino=7441, st_mode=S_IFLNK|0777, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=18, st_atime=1526924302 /* 2018-05-21T20:38:22.670000000+0300 */, st_atime_nsec=670000000, st_mtime=1526924302 /* 2018-05-21T20:38:22.670000000+0300 */, st_mtime_nsec=670000000, st_ctime=1526924302 /* 2018-05-21T20:38:22.710000000+0300 */, st_ctime_nsec=710000000}, AT_SYMLINK_NOFOLLOW) = 0
readlinkat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/applets/true", "../busybox", 4096) = 10
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/busybox", {st_dev=makedev(179, 59), st_ino=4752, st_mode=S_IFREG|0700, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=1040, st_size=526056, st_atime=1526924302 /* 2018-05-21T20:38:22+0300 */, st_atime_nsec=0, st_mtime=1523230886 /* 2018-04-09T02:41:26+0300 */, st_mtime_nsec=0, st_ctime=1526924302 /* 2018-05-21T20:38:22.700000000+0300 */, st_ctime_nsec=700000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/busybox", {st_dev=makedev(179, 59), st_ino=4752, st_mode=S_IFREG|0700, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=1040, st_size=526056, st_atime=1526924302 /* 2018-05-21T20:38:22+0300 */, st_atime_nsec=0, st_mtime=1523230886 /* 2018-04-09T02:41:26+0300 */, st_mtime_nsec=0, st_ctime=1526924302 /* 2018-05-21T20:38:22.700000000+0300 */, st_ctime_nsec=700000000}, AT_SYMLINK_NOFOLLOW) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1:          -> \"/data/data/com.termux/files/usr/bin/busybox\"", 65) = 65
write(2, "\n", 1)                       = 1
ptrace(PTRACE_POKEDATA, 13126, 0x7fe2021aa4, 0x61642f617461642f) = -1 EIO (I/O error)
write(2, "proot warning: ", 15)         = 15
write(2, "ptrace(POKEDATA)", 16)        = 16
write(2, ": ", 2)                       = 2
writev(2, [{iov_base="I/O error", iov_len=9}, {iov_base="\n", iov_len=1}], 2) = 10
ptrace(PTRACE_SETREGSET, 13126, NT_ARM_SYSTEM_CALL, [{iov_base=0x7fe2020f08, iov_len=8}]) = 0
ptrace(PTRACE_SETREGSET, 13126, NT_PRSTATUS, [{iov_base=0x759c233100, iov_len=272}]) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysenter end: void(0xfffffffffffffff2, 0x759c24a060, 0x1, 0x0, 0x2f, 0x8080808080808080) = 0xfffffffffffffff2 [0x7fe2021ad0, 0]", 135) = 135
write(2, "\n", 1)                       = 1
ptrace(PTRACE_CONT, 13126, NULL, SIG_0) = 0
wait4(-1, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP} | PTRACE_EVENT_SECCOMP << 16], __WALL, NULL) = 13126
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=13126, si_uid=10131, si_status=SIGTRAP, si_utime=0, si_stime=0} ---
ptrace(PTRACE_GETEVENTMSG, 13126, NULL, [1]) = 0
ptrace(PTRACE_SYSCALL, 13126, NULL, SIG_0) = 0
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=13126, si_uid=10131, si_status=SIGTRAP, si_utime=0, si_stime=0} ---
wait4(-1, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP | 0x80}], __WALL, NULL) = 13126
ptrace(PTRACE_GETREGSET, 13126, NT_PRSTATUS, [{iov_base=0x759c233100, iov_len=272}]) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysenter start: execve(0x759c24a060, 0x7fe2024160, 0x7fe2024170, 0x759c8d1970, 0x0, 0x759c790871) = 0x759c24a060 [0x7fe2021ad0, 0]", 138) = 138
write(2, "\n", 1)                       = 1
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a060, [0x61642f617461642f]) = 0
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a068, [0x742e6d6f632f6174]) = 0
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a070, [0x69662f78756d7265]) = 0
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a078, [0x2f7273752f73656c]) = 0
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a080, [0x6c7070612f6e6962]) = 0
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a088, [0x657572742f737465]) = 0
ptrace(PTRACE_PEEKDATA, 13126, 0x759c24a090, [NULL]) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: translate(\"/\" + \"/data/data/com.termux/files/usr/bin/applets/true\")", 75) = 75
write(2, "\n", 1)                       = 1
newfstatat(AT_FDCWD, "/data", {st_dev=makedev(179, 59), st_ino=3, st_mode=S_IFDIR|0771, st_nlink=61, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=24, st_size=4096, st_atime=1519994822 /* 2018-03-02T14:47:02+0200 */, st_atime_nsec=0, st_mtime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_mtime_nsec=600000000, st_ctime=1526921317 /* 2018-05-21T19:48:37.600000000+0300 */, st_ctime_nsec=600000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data", {st_dev=makedev(179, 59), st_ino=9672, st_mode=S_IFDIR|0771, st_nlink=223, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=40, st_size=20480, st_atime=1526919090 /* 2018-05-21T19:11:30.690000000+0300 */, st_atime_nsec=690000000, st_mtime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_mtime_nsec=160000000, st_ctime=1527102663 /* 2018-05-23T22:11:03.160000000+0300 */, st_ctime_nsec=160000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux", {st_dev=makedev(179, 59), st_ino=11533, st_mode=S_IFDIR|0700, st_nlink=6, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=16, st_size=3488, st_atime=1526919670 /* 2018-05-21T19:21:10.610000000+0300 */, st_atime_nsec=610000000, st_mtime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_mtime_nsec=450000000, st_ctime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_ctime_nsec=450000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files", {st_dev=makedev(179, 59), st_ino=2508, st_mode=S_IFDIR|0700, st_nlink=4, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_mtime_nsec=820000000, st_ctime=1527107623 /* 2018-05-23T23:33:43.820000000+0300 */, st_ctime_nsec=820000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr", {st_dev=makedev(179, 59), st_ino=2493, st_mode=S_IFDIR|0700, st_nlink=10, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=3488, st_atime=1526921547 /* 2018-05-21T19:52:27.450000000+0300 */, st_atime_nsec=450000000, st_mtime=1526927976 /* 2018-05-21T21:39:36.380000000+0300 */, st_mtime_nsec=380000000, st_ctime=1526927976 /* 2018-05-21T21:39:36.380000000+0300 */, st_ctime_nsec=380000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin", {st_dev=makedev(179, 59), st_ino=3844, st_mode=S_IFDIR|0700, st_nlink=3, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=24, st_size=8192, st_atime=1526921547 /* 2018-05-21T19:52:27.760000000+0300 */, st_atime_nsec=760000000, st_mtime=1527107618 /* 2018-05-23T23:33:38.420000000+0300 */, st_mtime_nsec=420000000, st_ctime=1527107618 /* 2018-05-23T23:33:38.420000000+0300 */, st_ctime_nsec=420000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/applets", {st_dev=makedev(179, 59), st_ino=1466, st_mode=S_IFDIR|0700, st_nlink=2, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=24, st_size=24576, st_atime=1526921551 /* 2018-05-21T19:52:31.460000000+0300 */, st_atime_nsec=460000000, st_mtime=1526924302 /* 2018-05-21T20:38:22.740000000+0300 */, st_mtime_nsec=740000000, st_ctime=1526924302 /* 2018-05-21T20:38:22.740000000+0300 */, st_ctime_nsec=740000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/applets/true", {st_dev=makedev(179, 59), st_ino=7441, st_mode=S_IFLNK|0777, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=8, st_size=18, st_atime=1526924302 /* 2018-05-21T20:38:22.670000000+0300 */, st_atime_nsec=670000000, st_mtime=1526924302 /* 2018-05-21T20:38:22.670000000+0300 */, st_mtime_nsec=670000000, st_ctime=1526924302 /* 2018-05-21T20:38:22.710000000+0300 */, st_ctime_nsec=710000000}, AT_SYMLINK_NOFOLLOW) = 0
readlinkat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/applets/true", "../busybox", 4096) = 10
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/busybox", {st_dev=makedev(179, 59), st_ino=4752, st_mode=S_IFREG|0700, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=1040, st_size=526056, st_atime=1526924302 /* 2018-05-21T20:38:22+0300 */, st_atime_nsec=0, st_mtime=1523230886 /* 2018-04-09T02:41:26+0300 */, st_mtime_nsec=0, st_ctime=1526924302 /* 2018-05-21T20:38:22.700000000+0300 */, st_ctime_nsec=700000000}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/busybox", {st_dev=makedev(179, 59), st_ino=4752, st_mode=S_IFREG|0700, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=1040, st_size=526056, st_atime=1526924302 /* 2018-05-21T20:38:22+0300 */, st_atime_nsec=0, st_mtime=1523230886 /* 2018-04-09T02:41:26+0300 */, st_mtime_nsec=0, st_ctime=1526924302 /* 2018-05-21T20:38:22.700000000+0300 */, st_ctime_nsec=700000000}, AT_SYMLINK_NOFOLLOW) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1:          -> \"/data/data/com.termux/files/usr/bin/busybox\"", 65) = 65
write(2, "\n", 1)                       = 1
faccessat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/busybox", F_OK) = 0
faccessat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/busybox", X_OK) = 0
newfstatat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/busybox", {st_dev=makedev(179, 59), st_ino=4752, st_mode=S_IFREG|0700, st_nlink=1, st_uid=10131, st_gid=10131, st_blksize=4096, st_blocks=1040, st_size=526056, st_atime=1526924302 /* 2018-05-21T20:38:22+0300 */, st_atime_nsec=0, st_mtime=1523230886 /* 2018-04-09T02:41:26+0300 */, st_mtime_nsec=0, st_ctime=1526924302 /* 2018-05-21T20:38:22.700000000+0300 */, st_ctime_nsec=700000000}, AT_SYMLINK_NOFOLLOW) = 0
openat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/busybox", O_RDONLY) = 3
read(3, "\177E", 2)                     = 2
close(3)                                = 0
openat(AT_FDCWD, "/data/data/com.termux/files/usr/bin/busybox", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\240\200\0\0\0\0\0\0@\0\0\0\0\0\0\0(\1\10\0\0\0\0\0\0\0\0\0@\08\0\10\0@\0\27\0\26\0", 64) = 64
lseek(3, 64, SEEK_SET)                  = 64
read(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\300\1\0\0\0\0\0\0\300\1\0\0\0\0\0\0\10\0\0\0\0\0\0\0", 56) = 56
read(3, "\3\0\0\0\4\0\0\0\0\2\0\0\0\0\0\0\0\2\0\0\0\0\0\0\0\2\0\0\0\0\0\0\25\0\0\0\0\0\0\0\25\0\0\0\0\0\0\0\1\0\0\0\0\0\0\0", 56) = 56
pread64(3, "/system/bin/linker64\0", 21, 512) = 21
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: translate(\"/\" + \"/system/bin/linker64\")", 47) = 47
write(2, "\n", 1)                       = 1
newfstatat(AT_FDCWD, "/system", {st_dev=makedev(253, 0), st_ino=2, st_mode=S_IFDIR|0755, st_nlink=22, st_uid=0, st_gid=0, st_blksize=4096, st_blocks=8, st_size=4096, st_atime=0, st_atime_nsec=0, st_mtime=0, st_mtime_nsec=0, st_ctime=0, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/system/bin", {st_dev=makedev(253, 0), st_ino=590, st_mode=S_IFDIR|0755, st_nlink=3, st_uid=0, st_gid=2000, st_blksize=4096, st_blocks=16, st_size=8192, st_atime=1523530720 /* 2018-04-12T13:58:40+0300 */, st_atime_nsec=0, st_mtime=1523530720 /* 2018-04-12T13:58:40+0300 */, st_mtime_nsec=0, st_ctime=1523530720 /* 2018-04-12T13:58:40+0300 */, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(AT_FDCWD, "/system/bin/linker64", {st_dev=makedev(253, 0), st_ino=733, st_mode=S_IFREG|0755, st_nlink=1, st_uid=0, st_gid=2000, st_blksize=4096, st_blocks=2456, st_size=1256096, st_atime=1523530720 /* 2018-04-12T13:58:40+0300 */, st_atime_nsec=0, st_mtime=1523530720 /* 2018-04-12T13:58:40+0300 */, st_mtime_nsec=0, st_ctime=1523530720 /* 2018-04-12T13:58:40+0300 */, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1:          -> \"/system/bin/linker64\"", 42) = 42
write(2, "\n", 1)                       = 1
faccessat(AT_FDCWD, "/system/bin/linker64", F_OK) = 0
faccessat(AT_FDCWD, "/system/bin/linker64", X_OK) = 0
newfstatat(AT_FDCWD, "/system/bin/linker64", {st_dev=makedev(253, 0), st_ino=733, st_mode=S_IFREG|0755, st_nlink=1, st_uid=0, st_gid=2000, st_blksize=4096, st_blocks=2456, st_size=1256096, st_atime=1523530720 /* 2018-04-12T13:58:40+0300 */, st_atime_nsec=0, st_mtime=1523530720 /* 2018-04-12T13:58:40+0300 */, st_mtime_nsec=0, st_ctime=1523530720 /* 2018-04-12T13:58:40+0300 */, st_ctime_nsec=0}, AT_SYMLINK_NOFOLLOW) = 0
read(3, "\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \32\7\0\0\0\0\0 \32\7\0\0\0\0\0\0\0\1\0\0\0\0\0", 56) = 56
read(3, "\1\0\0\0\6\0\0\0000\344\7\0\0\0\0\0000\344\10\0\0\0\0\0000\344\10\0\0\0\0\0\367\33\0\0\0\0\0\0\10!\0\0\0\0\0\0\0\0\1\0\0\0\0\0", 56) = 56
read(3, "\2\0\0\0\6\0\0\0\240\364\7\0\0\0\0\0\240\364\10\0\0\0\0\0\240\364\10\0\0\0\0\0\0\2\0\0\0\0\0\0\0\2\0\0\0\0\0\0\10\0\0\0\0\0\0\0", 56) = 56
read(3, "\4\0\0\0\4\0\0\0\30\2\0\0\0\0\0\0\30\2\0\0\0\0\0\0\30\2\0\0\0\0\0\0\230\0\0\0\0\0\0\0\230\0\0\0\0\0\0\0\4\0\0\0\0\0\0\0", 56) = 56
read(3, "Q\345td\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0\0\0\0\0", 56) = 56
read(3, "R\345td\6\0\0\0000\344\7\0\0\0\0\0000\344\10\0\0\0\0\0000\344\10\0\0\0\0\0\320\33\0\0\0\0\0\0\320\33\0\0\0\0\0\0\20\0\0\0\0\0\0\0", 56) = 56
close(3)                                = 0
openat(AT_FDCWD, "/system/bin/linker64", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0\267\0\1\0\0\0\0\27\2\0\0\0\0\0@\0\0\0\0\0\0\0\340$\23\0\0\0\0\0\0\0\0\0@\08\0\10\0@\0\27\0\24\0", 64) = 64
lseek(3, 64, SEEK_SET)                  = 64
read(3, "\6\0\0\0\4\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\300\1\0\0\0\0\0\0\300\1\0\0\0\0\0\0\10\0\0\0\0\0\0\0", 56) = 56
read(3, "\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\2344\16\0\0\0\0\0\2344\16\0\0\0\0\0\0\20\0\0\0\0\0\0", 56) = 56
read(3, "\1\0\0\0\6\0\0\0\3009\16\0\0\0\0\0\300I\16\0\0\0\0\0\300I\16\0\0\0\0\0\260E\0\0\0\0\0\0\304j\7\0\0\0\0\0\0\20\0\0\0\0\0\0", 56) = 56
read(3, "\2\0\0\0\6\0\0\0\360h\16\0\0\0\0\0\360x\16\0\0\0\0\0\360x\16\0\0\0\0\0P\1\0\0\0\0\0\0P\1\0\0\0\0\0\0\10\0\0\0\0\0\0\0", 56) = 56
read(3, "\4\0\0\0\4\0\0\0\0\2\0\0\0\0\0\0\0\2\0\0\0\0\0\0\0\2\0\0\0\0\0\0 \0\0\0\0\0\0\0 \0\0\0\0\0\0\0\4\0\0\0\0\0\0\0", 56) = 56
read(3, "P\345td\4\0\0\0\350\0\16\0\0\0\0\0\350\0\16\0\0\0\0\0\350\0\16\0\0\0\0\0\2643\0\0\0\0\0\0\2643\0\0\0\0\0\0\4\0\0\0\0\0\0\0", 56) = 56
read(3, "Q\345td\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 56) = 56
read(3, "R\345td\6\0\0\0\3009\16\0\0\0\0\0\300I\16\0\0\0\0\0\300I\16\0\0\0\0\0@6\0\0\0\0\0\0@6\0\0\0\0\0\0\20\0\0\0\0\0\0\0", 56) = 56
close(3)                                = 0
getrandom("\xbd\x58\x63\xcc\x12\x65\x89\x2f\x83\x14\xb6\x44\xfa\x02\x83\x12\x1a\xa0\x7e\xa4\xad\xb9\xd3\xee\x86\x5f\x6a\xf5\x64\x02\x72\x34\x5a\x0c\x00\x11\x4a\xd0\x6e\x71", 40, GRND_NONBLOCK) = 40
openat(AT_FDCWD, "/data/data/com.termux/files/usr/tmp//prooted-13125-5yIU1N", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
fcntl(3, F_GETFL)                       = 0x20002 (flags O_RDWR|O_LARGEFILE)
write(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\2\0\267\0\1\0\0\0\260\0\0\0 \0\0\0@\0\0\0\0\0\0\0\210\5\0\0\0\0\0\0\0\0\0\0@\08\0\2\0@\0\6\0\5\0\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 \0\0\0\0\0\0\0 \0\0\0\354\4\0\0\0\0\0\0\354\4\0\0\0\0\0\0\0\0\1\0\0\0\0\0Q\345td\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\20\0\0\0\0\0\0\0\f\0\0\220\351\3\0\252\353\3\37\252\355\3\0002\n\0\200\222\214q\21\221\0\344\0o\17\0\0\24\350\7\0342)\1\10\213\f\0\0\24 \205@\251\"\r@\371\310\33\200RC\6\200R\4\0\200\222\345\3\37\252\1\0\0\324(\5@\371\37\0\10\353\200\376\377T\315\0\0\24(\1@\371\37\31\0\361(\30\0T\210y\250\270\10\1\f\213\0\1\37\326(\7\200R\340\3\n\252\1\0\0\324\300\30\3707!\5@\371\350\v\0352`\f\200\222\342\3\37\252\343\3\37\252\1\0\0\324\352\3\0\252\252\26\3707\350\3\0342\355\3\0002)\1\10\213\353\377\377\27 \205@\251\"\225A\251\310\33\200RC\2\200R\344\3\n\252\1\0\0\324(\5@\371\37\0\10\353\201\26\0T.\25@\371\16\v\0\264(\t@\371\10\1\0\213\22\1\16\313N\n@\222O\"\0\221\356\1\16\313_\n@\362O\2\216\232_\2\17\353\16\361}\222\302\3\0T\361\1\22\313?~\0\361\360\3\22\252\351\2\0T \352{\222\200\2\0\264P\2\0\213RB\0\221\341\3\0\252@\202?\255!\200\0\321R\202\0\221\241\377\377\265\37\0\21\353\201\1\0T\16\0\0\24 \5@\371\342\0\200RH\34\200R\341\3\0002\2 \240r\1\0\0\324\350\3\0342)\1\10\213\274\377\377\27\360\3\22\252\37\26\08\377\1\20\353\301\377\377T\377\1\16\353\2\3\0T\320\1\17\313\20\6\0\321\20\376C\323\21\6\0\221?\16\0\361\360\3\17\252\311\1\0T2\356~\222r\1\0\264\360\r\22\213\357A\0\221\340\3\22\252\340\201?\255\0\20\0\321\357\201\0\221\240\377\377\265?\2\22\353a\0\0T\5\0\0\24\360\3\17\252\37\206\0\370\37\2\16\353\303\377\377T\337\1\10\353\242\2\0T\20\1\16\313\37\202\0\361\357\3\16\252\303\1\0T\21\352{\222q\1\0\264\317\1\21\213\316A\0\221\362\3\21\252\300\201?\255R\202\0\321\316\201\0\221\262\377\377\265?\2\20\353a\0\0T\5\0\0\24\357\3\16\252\377\25\08\37\1\17\353\301\377\377TM\0\0006+\5@\371\355\3\37*w\377\377\27\354\3\0002\2\0\0\24\354\3\37\252.\5@\371(\7\200R\340\3\n\252\3175@\251\1\0\0\324\240\10\3707\310\r\17\213\10\201\0\221\n\1_\370\10!\0\221\312\377\377\265\16\1_\370\n\0\0\220J\341\21\221\316\r\0\321\337q\0\361\350\1\0TNy\256\270\317\1\n\213\356\3\v\252\340\1\37\326.\r@\371\10\0\0\24.\21@\371\6\0\0\24.\25@\371\4\0\0\24\356\3\r\252\2\0\0\24.\31@\371\16\201\37\370\16\5A\370\316\375\377\265(\35@\371\n\5\0\321K\35@8\353\377\3775_\1\10\353I\1\0TK\5\0\321\352\3\v\252M\365_8\277\275\0q\200\0\0T\177\1\10\353\353\3\n\252h\377\377TJ\5\0\221_\1\10\353\342\3\37\252\350\24\200RA\5\212\232\340\17\0002\1\0\0\324!\211@\251\214\0\0\265?\0\0\221\0\0\200\322@\0\37\326\250\33\200R\340\3\0002\343\3\0372\344\7\0002\345\3\0362\1\0\0\324\250\v\200R\300\26\200R\1\0\0\324\250\v\200R\300\26\200R\1\0\0\324\250\v\200R\300\26\200R\1\0\0\324\250\v\200R\300\26\200R\1\0\0\324\250\v\200R\300\26\200R\1\0\0\324\250\v\200R\300\26\200R\1\0\0\324\250\v\200R\300\26\200R\1\0\0\324\304\374\377\377\324\374\377\377\4\375\377\377\200\374\377\377\234\375\377\377\234\376\377\377\244\376\377\377\340\376\377\377\350\376\377\377\360\376\377\377\10\377\377\377\4\377\377\377\10\377\377\377\0\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\10\377\377\377\370\376\377\377\0Android clang version 5.0.300080  (based on LLVM 5.0.300080)\0\0\0\4\0\0\0\t\0\0\0\4\0\0\0GNU\0gold 1.12\0\0\0\0.shstrtab\0.text\0.rodata\0.comment\0.note.gnu.gold-version\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\v\0\0\0\1\0\0\0\6\0\0\0\0\0\0\0\260\0\0\0 \0\0\0\260\0\0\0\0\0\0\0\254\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\21\0\0\0\1\0\0\0\2\0\0\0\0\0\0\0\\\4\0\0 \0\0\0\\\4\0\0\0\0\0\0\220\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\31\0\0\0\1\0\0\0000\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\354\4\0\0\0\0\0\0>\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\0\0\0\0\1\0\0\0\0\0\0\0\"\0\0\0\7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0,\5\0\0\0\0\0\0\34\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0H\5\0\0\0\0\0\09\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 1800) = 1800
fchmod(3, 0500)                         = 0
readlinkat(AT_FDCWD, "/proc/13125/fd/3", "/data/data/com.termux/files/usr/tmp/prooted-13125-5yIU1N", 4096) = 56
faccessat(AT_FDCWD, "/data/data/com.termux/files/usr/tmp/prooted-13125-5yIU1N", X_OK) = 0
write(2, "proot info: ", 12)            = 12
write(2, "loader: /data/data/com.termux/files/usr/tmp/prooted-13125-5yIU1N", 64) = 64
write(2, "\n", 1)                       = 1
close(3)                                = 0
ptrace(PTRACE_POKEDATA, 13126, 0x7fe2021a97, 0x61642f617461642f) = -1 EIO (I/O error)
write(2, "proot warning: ", 15)         = 15
write(2, "ptrace(POKEDATA)", 16)        = 16
write(2, ": ", 2)                       = 2
writev(2, [{iov_base="I/O error", iov_len=9}, {iov_base="\n", iov_len=1}], 2) = 10
ptrace(PTRACE_SETREGSET, 13126, NT_ARM_SYSTEM_CALL, [{iov_base=0x7fe2020f08, iov_len=8}]) = 0
ptrace(PTRACE_SETREGSET, 13126, NT_PRSTATUS, [{iov_base=0x759c233100, iov_len=272}]) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysenter end: void(0xfffffffffffffff2, 0x7fe2024160, 0x7fe2024170, 0x759c8d1970, 0x0, 0x759c790871) = 0xfffffffffffffff2 [0x7fe2021a97, 0]", 146) = 146
write(2, "\n", 1)                       = 1
ptrace(PTRACE_SYSCALL, 13126, NULL, SIG_0) = 0
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=13126, si_uid=10131, si_status=SIGTRAP, si_utime=0, si_stime=0} ---
wait4(-1, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP | 0x80}], __WALL, NULL) = 13126
ptrace(PTRACE_GETREGSET, 13126, NT_PRSTATUS, [{iov_base=0x759c233100, iov_len=272}]) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysexit start: void(0xfffffffffffffff2, 0x7fe2024160, 0x7fe2024170, 0x759c8d1970, 0x0, 0x759c790871) = 0xfffffffffffffff2 [0x7fe2021a97, 0]", 147) = 147
write(2, "\n", 1)                       = 1
ptrace(PTRACE_SETREGSET, 13126, NT_PRSTATUS, [{iov_base=0x759c233100, iov_len=272}]) = 0
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: sysexit end: execve(0xfffffffffffffff2, 0x7fe2024160, 0x7fe2024170, 0x759c8d1970, 0x0, 0x759c790871) = 0xfffffffffffffff2 [0x7fe2021ad0, 0]", 147) = 147
write(2, "\n", 1)                       = 1
ptrace(PTRACE_CONT, 13126, NULL, SIG_0) = 0
wait4(-1, [{WIFSTOPPED(s) && WSTOPSIG(s) == SIGTRAP} | PTRACE_EVENT_EXIT << 16], __WALL, NULL) = 13126
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_TRAPPED, si_pid=13126, si_uid=10131, si_status=SIGTRAP, si_utime=0, si_stime=0} ---
ptrace(PTRACE_CONT, 13126, NULL, SIG_0) = 0
wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 1}], __WALL, NULL) = 13126
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=13126, si_uid=10131, si_status=1, si_utime=0, si_stime=0} ---
write(2, "proot info: ", 12)            = 12
write(2, "vpid 1: exited with status 1", 28) = 28
write(2, "\n", 1)                       = 1
ptrace(PTRACE_CONT, 13126, NULL, SIG_0) = -1 ESRCH (No such process)
wait4(-1, 0x7fe202200c, __WALL, NULL)   = -1 ECHILD (No child processes)
mprotect(0x759c975000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c975000, 4096, PROT_READ) = 0
mprotect(0x759c975000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c975000, 4096, PROT_READ) = 0
unlinkat(AT_FDCWD, "/data/data/com.termux/files/usr/tmp//prooted-13125-5yIU1N", 0) = 0
mprotect(0x759c975000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c975000, 4096, PROT_READ) = 0
mprotect(0x759c975000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x759c975000, 4096, PROT_READ) = 0
munmap(0x759c975000, 4096)              = 0
exit_group(1)                           = ?
+++ exited with 1 +++
0xc1c4da commented 6 years ago
proot true                                                                            proot warning: ptrace(POKEDATA): I/O error                                              proot warning: ptrace(POKEDATA): I/O error                                              proot error: execve("/data/data/com.termux/files/usr/bin/applets/true"): Bad address    proot info: possible causes:                                                              * the program is a script but its interpreter (eg. /bin/sh) was not found;              * the program is an ELF but its interpreter (eg. ld-linux.so) was not found;            * the program is a foreign binary but qemu was not specified;                           * qemu does not work correctly (if specified);                                          * the loader was not found or doesn't work.
fatal error: see `proot --help`.
$
0xc1c4da commented 6 years ago

Apologies for the straight dumps last night, was on device FastHub doesn't appear to have a upload feature and kept crashing when typing a comment alongside it.

michalbednarski commented 6 years ago

Looks like ptrace(PTRACE_POKEDATA, ...) (write memory from debugger) doesn't work at all on your device, as I see that page which is written to is used successfully before.

Please try if gdb is working on your device (able to set breakpoints and variables)

gdb ls
b write
r

Does it report something like following?

Warning:
Cannot insert breakpoint 1.
Cannot access memory at address 0x555b31a0c4
0xc1c4da commented 6 years ago

Yes

$ gdb ls
GNU gdb (GDB) 8.1
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 "aarch64-linux-android".
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 ls...(no debugging symbols found)...done.
(gdb) b write
Breakpoint 1 at 0x70c4
(gdb) r
Starting program: /data/data/com.termux/files/usr/bin/applets/ls
Warning:
Cannot insert breakpoint 1.
Cannot access memory at address 0x555555c0c4

(gdb)
michalbednarski commented 6 years ago

I've made a workaround for kernels with broken PTRACE_POKEDATA, through I think that case is too rare and workaround implementation not clean enough to add it to main proot.

Source at pokedata branch Binary: proot_5.1.107-11_aarch64-60b2de.deb.zip

mbsolutionscl commented 6 years ago

Hi

I have the same pokedata error with proot, so I installed that .deb file but proot failed too.

I tested it in a Huawei Mate 10 Pro, with android 8.0.0, kernel

uname -a
Linux localhost 4.4.23+ #1 SMP PREEMPT Mon Apr 9 18:22:37 CST 2018 aarch64 Android

This is the output of proot with different arguments:

$ proot true
proot warning: ptrace(POKEDATA): I/O error
./tracee/event.c:516: int handle_tracee_event(Tracee *, int): assertion "!IS_IN_SYSENTER(tracee)" failed
proot warning: signal 6 received from process 17172

$ PROOT_NO_SECCOMP=1 proot true
proot warning: ptrace(POKEDATA): I/O error
proot warning: ptrace(POKEDATA): I/O error
proot info: vpid 1: terminated with signal 7

$ proot -V
_____ _____              ___
|  __ \  __ \_____  _____|   |_
|   __/     /  _  \/  _  \    _|
|__|  |__|__\_____/\_____/\____| 60b2de40

built-in accelerators: process_vm = no, seccomp_filter = yes

Visit http://proot.me for help, bug reports, suggestions, patchs, ...
Copyright (C) 2015 STMicroelectronics, licensed under GPL v2 or later.

$ PROOT_VERBOSE=9 proot true                                proot info: binding = /
proot info: vpid 1: translate("/data/data/com.termux/files/home" + "true")
proot info: vpid 1:          -> "/data/data/com.termux/files/home/true"
proot info: vpid 1: translate("/" + "/data/data/com.termux/files/usr/bin/true")
proot info: vpid 1:          -> "/data/data/com.termux/files/usr/bin/true"
proot info: vpid 1: translate("/" + "/data/data/com.termux/files/usr/bin/applets/true")
proot info: vpid 1:          -> "/data/data/com.termux/files/usr/bin/busybox"
proot info: vpid 1: translate("/" + "/data/data/com.termux/files/usr/bin/applets/true")
proot info: vpid 1:          -> "/data/data/com.termux/files/usr/bin/applets/true"
proot info: exe = /data/data/com.termux/files/usr/bin/applets/true
proot info: argv = true
proot info: initial cwd = /data/data/com.termux/files/home
proot info: verbose level = 9
proot info: pid 17339: access to "/dev/pts/0" (fd 0) won't be translated until closed
proot info: pid 17339: access to "/dev/pts/0" (fd 1) won't be translated until closed
proot info: pid 17339: access to "/dev/pts/0" (fd 2) won't be translated until closed
proot info: pid 17339: access to "/proc/17339/fd" (fd 3) won't be translated until closed
proot info: vpid 1: sysenter start: prctl(0x26, 0x1, 0x0, 0x0, 0x0, 0x0) = 0x26 [0x7fcc425780, 0]
proot info: vpid 1: sysenter end: prctl(0x26, 0x1, 0x0, 0x0, 0x0, 0x0) = 0x26 [0x7fcc425780, 0]
proot info: vpid 1: sysexit start: prctl(0x0, 0x1, 0x0, 0x0, 0x0, 0x0) = 0x0 [0x7fcc425780, 0]
proot info: vpid 1: sysexit end: prctl(0x0, 0x1, 0x0, 0x0, 0x0, 0x0) = 0x0 [0x7fcc425780, 0]
proot info: vpid 1: sysenter start: prctl(0x16, 0x2, 0x7fcc425790, 0x0, 0x0, 0x0) = 0x16 [0x7fcc425780, 0]
proot info: vpid 1: sysenter end: prctl(0x16, 0x2, 0x7fcc425790, 0x0, 0x0, 0x0) = 0x16 [0x7fcc425780, 0]
proot info: vpid 1: sysexit start: prctl(0x0, 0x2, 0x7fcc425790, 0x0, 0x0, 0x0) = 0x0 [0x7fcc425780, 0]
proot info: vpid 1: sysexit end: prctl(0x0, 0x2, 0x7fcc425790, 0x0, 0x0, 0x0) = 0x0 [0x7fcc425780, 0]
proot info: ptrace acceleration (seccomp mode 2, old syscall order) enabled
proot info: vpid 1: sysenter start: faccessat(0xffffff9c, 0x72a6a4b100, 0x1, 0x0, 0x2f, 0x8080808080808080) = 0xffffff9c [0x7fcc425290, 0]
proot info: vpid 1: translate("/" + "/data/data/com.termux/files/usr/bin/applets/true")
proot info: vpid 1:          -> "/data/data/com.termux/files/usr/bin/busybox"
proot info: vpid 1: pokedata workaround: void(0xffffff9c, 0x61642f617461642f, 0x7fcc425264, 0x0, 0x2f, 0x8080808080808080) = 0xffffff9c [0x7fcc425264, 0]
proot info: pokedata wstatus=47f stub=cc2f2610 addr=cc425264 word=7461642f
proot info: vpid 1: pokedata workaround: void(0xffffff9c, 0x742e6d6f632f6174, 0x7fcc42526c, 0x0, 0x2f, 0x8080808080808080) = 0xffffff9c [0x7fcc425264, 0]
proot info: pokedata wstatus=47f stub=cc2f2610 addr=cc42526c word=632f6174
proot info: vpid 1: pokedata workaround: void(0xffffff9c, 0x69662f78756d7265, 0x7fcc425274, 0x0, 0x2f, 0x8080808080808080) = 0xffffff9c [0x7fcc425264, 0]
proot info: pokedata wstatus=47f stub=cc2f2610 addr=cc425274 word=756d7265
proot info: vpid 1: pokedata workaround: void(0xffffff9c, 0x2f7273752f73656c, 0x7fcc42527c, 0x0, 0x2f, 0x8080808080808080) = 0xffffff9c [0x7fcc425264, 0]
proot info: pokedata wstatus=47f stub=cc2f2610 addr=cc42527c word=2f73656c
proot info: vpid 1: pokedata workaround: void(0xffffff9c, 0x797375622f6e6962, 0x7fcc425284, 0x0, 0x2f, 0x8080808080808080) = 0xffffff9c [0x7fcc425264, 0]
proot info: pokedata wstatus=47f stub=cc2f2610 addr=cc425284 word=2f6e6962
proot warning: ptrace(POKEDATA): I/O error
./tracee/event.c:516: int handle_tracee_event(Tracee *, int): assertion "!IS_IN_SYSENTER(tracee)" failed
proot warning: signal 6 received from process 17339

$ PROOT_VERBOSE=9 PROOT_NO_SECCOMP=1 proot true
proot info: binding = /
proot info: vpid 1: translate("/data/data/com.termux/files/home" + "true")
proot info: vpid 1:          -> "/data/data/com.termux/files/home/true"
proot info: vpid 1: translate("/" + "/data/data/com.termux/files/usr/bin/true")
proot info: vpid 1:          -> "/data/data/com.termux/files/usr/bin/true"
proot info: vpid 1: translate("/" + "/data/data/com.termux/files/usr/bin/applets/true")
proot info: vpid 1:          -> "/data/data/com.termux/files/usr/bin/busybox"
proot info: vpid 1: translate("/" + "/data/data/com.termux/files/usr/bin/applets/true")
proot info: vpid 1:          -> "/data/data/com.termux/files/usr/bin/applets/true"
proot info: exe = /data/data/com.termux/files/usr/bin/applets/true
proot info: argv = true
proot info: initial cwd = /data/data/com.termux/files/home
proot info: verbose level = 9
proot info: pid 17373: access to "/dev/pts/0" (fd 0) won't be translated until closed
proot info: pid 17373: access to "/dev/pts/0" (fd 1) won't be translated until closed
proot info: pid 17373: access to "/dev/pts/0" (fd 2) won't be translated until closed
proot info: pid 17373: access to "/proc/17373/fd" (fd 3) won't be translated until closed
proot info: vpid 1: sysenter start: faccessat(0xffffff9c, 0x7966c4b100, 0x1, 0x0, 0x2f, 0x8080808080808080) = 0xffffff9c [0x7fd86ab110, 0]
proot info: vpid 1: translate("/" + "/data/data/com.termux/files/usr/bin/applets/true")
proot info: vpid 1:          -> "/data/data/com.termux/files/usr/bin/busybox"
proot info: vpid 1: pokedata workaround: void(0xffffff9c, 0x61642f617461642f, 0x7fd86ab0e4, 0x0, 0x2f, 0x8080808080808080) = 0xffffff9c [0x7fd86ab0e4, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=d86ab0e4 word=7461642f
proot info: vpid 1: pokedata workaround: void(0xffffff9c, 0x742e6d6f632f6174, 0x7fd86ab0ec, 0x0, 0x2f, 0x8080808080808080) = 0xffffff9c [0x7fd86ab0e4, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=d86ab0ec word=632f6174
proot info: vpid 1: pokedata workaround: void(0xffffff9c, 0x69662f78756d7265, 0x7fd86ab0f4, 0x0, 0x2f, 0x8080808080808080) = 0xffffff9c [0x7fd86ab0e4, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=d86ab0f4 word=756d7265
proot info: vpid 1: pokedata workaround: void(0xffffff9c, 0x2f7273752f73656c, 0x7fd86ab0fc, 0x0, 0x2f, 0x8080808080808080) = 0xffffff9c [0x7fd86ab0e4, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=d86ab0fc word=2f73656c
proot info: vpid 1: pokedata workaround: void(0xffffff9c, 0x797375622f6e6962, 0x7fd86ab104, 0x0, 0x2f, 0x8080808080808080) = 0xffffff9c [0x7fd86ab0e4, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=d86ab104 word=2f6e6962
proot warning: ptrace(POKEDATA): I/O error
proot info: vpid 1: sysenter start: void(0xfffffffffffffff2, 0x7966c4b100, 0x1, 0x0, 0x2f, 0x8080808080808080) = 0xfffffffffffffff2 [0x7fd86ab0e4, 0]
proot info: vpid 1: seccomp SIGSYS: void(0xfffffffffffffff2, 0x7966c4b100, 0x1, 0x0, 0x2f, 0x8080808080808080) = 0xfffffffffffffff2 [0x7fd86ab0e4, 0]
proot info: vpid 1: sysenter start: rt_sigaction(0x7, 0x0, 0x7967299be8, 0x8, 0x2f, 0x8080808080808080) = 0x7 [0x7967299be0, 0]
proot info: vpid 1: sysenter end: rt_sigaction(0x7, 0x0, 0x7967299be8, 0x8, 0x2f, 0x8080808080808080) = 0x7 [0x7967299be0, 0]
proot info: vpid 1: sysexit start: rt_sigaction(0x0, 0x0, 0x7967299be8, 0x8, 0x2f, 0x8080808080808080) = 0x0 [0x7967299be0, 0]
proot info: vpid 1: sysexit end: rt_sigaction(0x0, 0x0, 0x7967299be8, 0x8, 0x2f, 0x8080808080808080) = 0x0 [0x7967299be0, 0]
proot info: vpid 1: sysenter start: prctl(0x27, 0x0, 0x0, 0x0, 0x0, 0x8080808080808080) = 0x27 [0x7967299c50, 0]
proot info: vpid 1: sysenter end: prctl(0x27, 0x0, 0x0, 0x0, 0x0, 0x8080808080808080) = 0x27 [0x7967299c50, 0]
proot info: vpid 1: sysexit start: prctl(0x0, 0x0, 0x0, 0x0, 0x0, 0x8080808080808080) = 0x0 [0x7967299c50, 0]
proot info: vpid 1: sysexit end: prctl(0x0, 0x0, 0x0, 0x0, 0x0, 0x8080808080808080) = 0x0 [0x7967299c50, 0]
proot info: vpid 1: sysenter start: prctl(0x10, 0x7967299d20, 0x0, 0x0, 0x0, 0x8080808080808080) = 0x10 [0x7967299c50, 0]
proot info: vpid 1: sysenter end: prctl(0x10, 0x7967299d20, 0x0, 0x0, 0x0, 0x8080808080808080) = 0x10 [0x7967299c50, 0]
proot info: vpid 1: sysexit start: prctl(0x0, 0x7967299d20, 0x0, 0x0, 0x0, 0x8080808080808080) = 0x0 [0x7967299c50, 0]
proot info: vpid 1: sysexit end: prctl(0x0, 0x7967299d20, 0x0, 0x0, 0x0, 0x8080808080808080) = 0x0 [0x7967299c50, 0]
proot info: vpid 1: sysenter start: gettid(0x7967299a70, 0x0, 0x34633062, 0x7967299a7c, 0x7967299cf9, 0x6136386466377830) = 0x7967299a70 [0x7967299c50, 0]
proot info: vpid 1: sysenter end: gettid(0x7967299a70, 0x0, 0x34633062, 0x7967299a7c, 0x7967299cf9, 0x6136386466377830) = 0x7967299a70 [0x7967299c50, 0]
proot info: vpid 1: sysexit start: gettid(0x43de, 0x0, 0x34633062, 0x7967299a7c, 0x7967299cf9, 0x6136386466377830) = 0x43de [0x7967299c50, 0]
proot info: vpid 1: sysexit end: gettid(0x43de, 0x0, 0x34633062, 0x7967299a7c, 0x7967299cf9, 0x6136386466377830) = 0x43de [0x7967299c50, 0]
proot info: vpid 1: sysenter start: socket(0x1, 0x80802, 0x0, 0x7967342d00, 0x796735c5dc, 0x7967299865) = 0x1 [0x79672995c0, 0]
proot info: vpid 1: sysenter end: socket(0x1, 0x80802, 0x0, 0x7967342d00, 0x796735c5dc, 0x7967299865) = 0x1 [0x79672995c0, 0]
proot info: vpid 1: sysexit start: socket(0x3, 0x80802, 0x0, 0x7967342d00, 0x796735c5dc, 0x7967299865) = 0x3 [0x79672995c0, 0]
proot info: vpid 1: sysexit end: socket(0x3, 0x80802, 0x0, 0x7967342d00, 0x796735c5dc, 0x7967299865) = 0x3 [0x79672995c0, 0]
proot info: vpid 1: sysenter start: connect(0x3, 0x79672995d8, 0x6e, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x79672995c0, 0]
proot info: vpid 1: translate("/" + "/dev/socket/logdw")
proot info: vpid 1:          -> "/dev/socket/logdw"
proot info: vpid 1: pokedata workaround: void(0x3, 0x732f7665642f0001, 0x7967299552, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x7967299552, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=67299552 word=642f0001
proot info: vpid 1: pokedata workaround: void(0x3, 0x6f6c2f74656b636f, 0x796729955a, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x7967299552, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=6729955a word=656b636f
proot info: vpid 1: pokedata workaround: void(0x3, 0x776467, 0x7967299562, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x7967299552, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=67299562 word=776467
proot info: vpid 1: pokedata workaround: void(0x3, 0x0, 0x796729956a, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x7967299552, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=6729956a word=0
proot info: vpid 1: pokedata workaround: void(0x3, 0x0, 0x7967299572, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x7967299552, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=67299572 word=0
proot info: vpid 1: pokedata workaround: void(0x3, 0x0, 0x796729957a, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x7967299552, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=6729957a word=0
proot info: vpid 1: pokedata workaround: void(0x3, 0x0, 0x7967299582, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x7967299552, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=67299582 word=0
proot info: vpid 1: pokedata workaround: void(0x3, 0x0, 0x796729958a, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x7967299552, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=6729958a word=0
proot info: vpid 1: pokedata workaround: void(0x3, 0x0, 0x7967299592, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x7967299552, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=67299592 word=0
proot info: vpid 1: pokedata workaround: void(0x3, 0x0, 0x796729959a, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x7967299552, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=6729959a word=0
proot info: vpid 1: pokedata workaround: void(0x3, 0x0, 0x79672995a2, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x7967299552, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=672995a2 word=0
proot info: vpid 1: pokedata workaround: void(0x3, 0x0, 0x79672995aa, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x7967299552, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=672995aa word=0
proot info: vpid 1: pokedata workaround: void(0x3, 0x0, 0x79672995b2, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0x3 [0x7967299552, 0]
proot info: pokedata wstatus=47f stub=2b04e610 addr=672995b2 word=0
proot warning: ptrace(POKEDATA): I/O error
proot info: vpid 1: sysenter start: void(0xfffffffffffffff2, 0x79672995d8, 0x6e, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0xfffffffffffffff2 [0x7967299552, 0]
proot info: vpid 1: seccomp SIGSYS: void(0xfffffffffffffff2, 0x79672995d8, 0x6e, 0x7967342bc8, 0x7967299646, 0x7967299865) = 0xfffffffffffffff2 [0x7967299552, 0]
proot info: vpid 1: translate("/" + "/data/data/com.termux/files/usr/bin/applets/true")
proot info: vpid 1:          -> "/data/data/com.termux/files/usr/bin/applets/true"
proot info: vpid 1: terminated with signal 7

let me know if you need more information. cheers

michalbednarski commented 6 years ago

Sorry, looks like I've forgot one place in workaround. Fixed version:

Binary: proot_5.1.107-11_aarch64-ef90d4.deb.zip Source: ef90d48658981f3eb2d1774700aa20fdcfc1dc71

mbsolutionscl commented 6 years ago

Thanks, it works now.

however, I cant run bash or sh (from an ubuntu image extracted using termux-ubuntu).

uname and ls work fine.

$ proot --link2symlink -0 -r ubuntu-fs -b /dev -b /proc -w /root /usr/bin/env -i HOME=/root PATH=/usr/local/sbin:/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/games:/usr/local/games TERM=xterm-256color LANG=C.UTF-8 uname -a
Linux localhost 4.4.23+ #1 SMP PREEMPT Mon Apr 9 18:22:37 CST 2018 aarch64 aarch64 aarch64 GNU/Linux
$ proot --link2symlink -0 -r ubuntu-fs -b /dev -b /proc -w /root /usr/bin/env -i HOME=/root PATH=/usr/local/sbin:/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/games:/usr/local/games TERM=xterm-256color LANG=C.UTF-8 ls /
bin   dev  home  media  opt   root  sbin  sys  usr
boot  etc  lib   mnt    proc  run   srv   tmp  var

bash fails with error -14. Somehow a bash session is created, but I cant do anything, it keeps failing with error -14 and "bus error".

$ proot --link2symlink -0 -r ubuntu-fs -b /dev -b /proc -w /root /usr/bin/env -i HOME=/root PATH=/usr/local/sbin:/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/games:/usr/local/games TERM=xterm-256color LANG=C.UTF-8 bash
proot warning: ptrace(POKEDATA): Unknown error -14
proot warning: ptrace(POKEDATA): Unknown error -14
root@localhost:~# ls
proot warning: ptrace(POKEDATA): Unknown error -14
Bus error
root@localhost:~# echo $0
bash
root@localhost:~# exit

executing ls inside bash, using verbose=9:

proot info: vpid 1: sysenter start: faccessat(0xffffffffffffff9c, 0x7fde2405a7, 0x4, 0x3000145010, 0x0, 0x8080808000000000) = 0xffffffffffffff9c [0x7fde2405a7, 0]                  
proot info: vpid 1: sysexit start: faccessat(0x0, 0x7fde2405a7, 0x4, 0x3000145010, 0x0, 0x8080808000000000) = 0x0 [0x7fde2405a7, 0]                                                 
proot info: vpid 1: sysexit end: faccessat(0x0, 0x3000145010, 0x4, 0x3000145010, 0x0, 0x8080808000000000) = 0x0 [0x7fde2405e0, 0]                                                   
proot info: vpid 4: pid 24106                               
proot info: vpid 1: sysenter start: wait4(0xffffffffffffffff, 0x7fde240820, 0xa, 0x0, 0x8, 0x1) = 0xffffffffffffffff [0x7fde240770, 0]                                              
proot info: vpid 1: sysenter end: wait4(0xffffffffffffffff, 0x7fde240820, 0xa, 0x0, 0x8, 0x1) = 0xffffffffffffffff [0x7fde240770, 0]                                                
proot info: vpid 4: sysenter start: execve(0x3000145010, 0x30001450d0, 0x3000124eb0, 0x3f0002c7a8, 0x0, 0x7fde240848) = 0x3000145010 [0x7fde2407e0, 0]                              
proot info: vpid 4: translate("/" + "/bin/ls")              
proot info: vpid 4:          -> "/data/data/com.termux/files/home/ubuntu/ubuntu-fs/bin/ls"                              
proot info: vpid 4: translate("/" + "/lib/ld-linux-aarch64.so.1")                                                       
proot info: vpid 4:          -> "/data/data/com.termux/files/home/ubuntu/ubuntu-fs/lib/aarch64-linux-gnu/ld-2.27.so"    
proot info: vpid 4: pokedata workaround: void(0x3000145010, 0x61642f617461642f, 0x7fde2407a7, 0x3f0002c7a8, 0x0, 0x7fde240848) = 0x3000145010 [0x7fde2407a7, 0]                     
proot info: pokedata wstatus=b7f stub=8c297610 addr=de2407a7 word=7461642f                                              
proot warning: ptrace(POKEDATA): Unknown error -14          
proot info: vpid 4: sysenter start: void(0xfffffffffffffff2, 0x30001450d0, 0x3000124eb0, 0x3f0002c7a8, 0x0, 0x7fde240848) = 0xfffffffffffffff2 [0x7fde2407a7, 0]                    
proot info: vpid 4: seccomp SIGSYS: void(0xfffffffffffffff2, 0x30001450d0, 0x3000124eb0, 0x3f0002c7a8, 0x0, 0x7fde240848) = 0xfffffffffffffff2 [0x7fde2407a7, 0]                    
proot info: vpid 4: translate("/" + "/bin/bash")            
proot info: vpid 4:          -> "/data/data/com.termux/files/home/ubuntu/ubuntu-fs/bin/bash"                            
proot info: vpid 4: terminated with signal 7                
proot info: vpid 1: sysexit start: wait4(0x5e2a, 0x7fde240820, 0xa, 0x0, 0x8, 0x1) = 0x5e2a [0x7fde240770, 0]           
proot info: vpid 1: sysexit end: wait4(0x5e2a, 0x7fde240820, 0xa, 0x0, 0x8, 0x1) = 0x5e2a [0x7fde240770, 0]             

the full stacktrace is here: proot-bash-log.txt

michalbednarski commented 6 years ago

And another fixed version:

Binary: proot_5.1.107-11_aarch64-0601cb.deb.zip Source: 0601cb8147e9b22c2c5ea7d8bd7a1088582026fb

mbsolutionscl commented 6 years ago

wow, thanks for that fast reply and new deb. It now works fine!, I can start a bash session and run several commands.

unfortunately, when I tried apt update it failed with the following error:

proot info: vpid 40: pid 9250
proot info: vpid 40: sysenter start: close(0xa, 0x7de6f361a8, 0x8da8ff4add5b2600, 0x0, 0x7de6f37c80, 0x7de6f37bb0) = 0xa [0x7feddf3950, 0]
proot info: vpid 40: sysenter end: close(0xa, 0x7de6f361a8, 0x8da8ff4add5b2600, 0x0, 0x7de6f37c80, 0x7de6f37bb0) = 0xa [0x7feddf3950, 0]
proot info: vpid 40: sysexit start: close(0x0, 0x7de6f361a8, 0x8da8ff4add5b2600, 0x0, 0x7de6f37c80, 0x7de6f37bb0) = 0x0 [0x7feddf3950, 0]
proot info: vpid 40: sysexit end: close(0x0, 0x7de6f361a8, 0x8da8ff4add5b2600, 0x0, 0x7de6f37c80, 0x7de6f37bb0) = 0x0 [0x7feddf3950, 0]
proot info: vpid 41: pid 9251
proot info: vpid 41: exited with status 0
proot info: vpid 40: sysenter start: fstatat64(0xffffffffffffff9c, 0x3000045bc8, 0x7feddf3898, 0x0, 0x20, 0x6c00840074726f) = 0xffffffffffffff9c [0x7feddf3800, 0]
proot info: vpid 40: translate("/" + "/usr/local/sbin/sort")
proot info: vpid 40:          -> "/data/data/com.termux/files/home/ubuntu/ubuntu-fs/usr/local/sbin/sort"
proot info: vpid 40: pokedata workaround: void(0xffffffffffffff9c, 0x61642f617461642f, 0x7feddf37ba, 0x0, 0x20, 0x6c00840074726f) = 0xffffffffffffff9c [0x7feddf37ba, 0]
proot info: pokedata wstatus=117f stub=44c addr=eddf37ba word=7461642f
proot warning: ptrace(POKEDATA): Unknown error -14
proot info: vpid 40: sysenter start: void(0xfffffffffffffff2, 0x3000045bc8, 0x7feddf3898, 0x0, 0x20, 0x6c00840074726f) = 0xfffffffffffffff2 [0x7feddf37ba, 0]
proot info: vpid 40: seccomp SIGSYS: void(0xfffffffffffffff2, 0x3000045bc8, 0x7feddf3898, 0x0, 0x20, 0x6c00840074726f) = 0xfffffffffffffff2 [0x7feddf37ba, 0]
proot info: vpid 40: translate("/" + "/bin/dash")
proot info: vpid 40:          -> "/data/data/com.termux/files/home/ubuntu/ubuntu-fs/bin/dash"
proot info: vpid 40: terminated with signal 7

Well, it's weird, because the sort utility is in /usr/bin/sort, not in /usr/local/sbin/sort.

Then I tried with PROOT_NO_SEECOMP=1 and it failed immediately with error -14.


./tracee/event.c:516: int handle_tracee_event(Tracee *, int): assertion "!IS_IN_SYSENTER(tracee)" failed
proot warning: signal 6 received from process 6540```
michalbednarski commented 6 years ago

I think I'm getting there

Binary: proot_5.1.107-11_aarch64-90018e.deb.zip Source: 90018e8316ee08ab64e67fca7b97b0cf29da1c4d

mbsolutionscl commented 6 years ago

testing, so far so good!!, thanks a lot.

will let you know if I encounter any issues.

mbsolutionscl commented 6 years ago

I have experimented random crashes when using vncserver and lxde. When it happens, termux crashes too. I could get the crash log from logcat:

06-20 00:06:48.517 26521 26521 F DEBUG   : Build fingerprint: 'HUAWEI/BLA-L09/HWBLA:8.0.0/HUAWEIBLA-L09S/134(C605):user/release-keys'
06-20 00:06:48.518 26521 26521 F DEBUG   : Revision: '0'
06-20 00:06:48.519 26521 26521 F DEBUG   : ABI: 'arm64'
06-20 00:06:48.520 26521 26521 F DEBUG   : pid: 26521, tid: 26521, name: proot  >>> proot <<<
06-20 00:06:48.520 26521 26521 F DEBUG   : signal 7 (SIGBUS), code 1 (BUS_ADRALN), fault addr 0x7fc32af498
06-20 00:06:48.528 26521 26521 F DEBUG   :     x0   0000000000000026  x1   0000007fc32af4b8  x2   0000007fc32b1750  x3   0000000000000000
06-20 00:06:48.529 26521 26521 F DEBUG   :     x4   0000000040100401  x5   0000000000000000  x6   0000000000000000  x7   0000000000000000
06-20 00:06:48.529 26521 26521 F DEBUG   :     x8   ffffffffffffffff  x9   0000005ac2ac8d48  x10  0000000000000088  x11  7ff0000100000006
06-20 00:06:48.530 26521 26521 F DEBUG   :     x12  000000b101000015  x13  7ff0000100000006  x14  000000000000000d  x15  aaaaaaaaaaaaaaab
06-20 00:06:48.530 26521 26521 F DEBUG   :     x16  00000071cf74f4b0  x17  00000071cf6f0250  x18  00000000cd234ce2  x19  0000007fc32b1750
06-20 00:06:48.531 26521 26521 F DEBUG   :     x20  0000007fc32b1730  x21  00000071cf227160  x22  0000007fc32b16b8  x23  0000005ac2ac93b0
06-20 00:06:48.531 26521 26521 F DEBUG   :     x24  000000000000000f  x25  0000007fc32b1730  x26  0000007fc32b1d98  x27  0000005ac2aa28b5
06-20 00:06:48.532 26521 26521 F DEBUG   :     x28  000000000000000e  x29  0000007fc32af590  x30  00000071cf6a6dc0
06-20 00:06:48.532 26521 26521 F DEBUG   :     sp   0000007fc32af4b8  pc   00000071cf6afd4c  pstate 0000000020000000
06-20 00:06:48.552 26521 26521 F DEBUG   :
06-20 00:06:48.552 26521 26521 F DEBUG   : backtrace:
06-20 00:06:48.553 26521 26521 F DEBUG   :     #00 pc 0000000000028d4c  /system/lib64/libc.so
06-20 00:06:48.553 26521 26521 F DEBUG   :     #01 pc 000000000001fdbc  /system/lib64/libc.so
06-20 00:06:48.554 26521 26521 F DEBUG   :     #02 pc 0000000000013174  /data/data/com.termux/files/usr/bin/proot (launch_process+152)
06-20 00:13:03.965 26564 26564 F libc    : ./tracee/event.c:516: int handle_tracee_event(Tracee *, int): assertion "!IS_IN_SYSENTER(tracee)" failed
06-20 00:15:04.908 26990 26990 F libc    : ./tracee/event.c:516: int handle_tracee_event(Tracee *, int): assertion "!IS_IN_SYSENTER(tracee)" failed
06-20 00:16:40.522 27204 27204 F libc    : ./tracee/event.c:516: int handle_tracee_event(Tracee *, int): assertion "!IS_IN_SYSENTER(tracee)" failed

the full log: crash-logcat.txt

nicenemo commented 6 years ago

Honor View 10 which similar to Huawei Mate 10 Pro has the same issue.

The latest proot mentioned above. Works with proot yes. The one you get with pkg upgrade does not. Testing further with Termuxarch.

michalbednarski commented 6 years ago

@mbsolutionscl That stacktrace shows crash at start of first prooted process; it's probably leftover from previous attempts; If you really sometimes get crash at early startup you can try disabling ASLR:

setarch aarch64 --addr-no-randomize proot ...

Also, make sure that you don't nest proot. (for example by using both termux-chroot and distro script)

Generally I would need to know syscalls executed by process before it got out-of-sync (assertion "!IS_IN_SYSENTER(tracee)" failed). If you don't want log on screen but need interactive shell you can use following:

PROOT_VERBOSE=9 ./your-proot-launcher.sh 2> proot-log.txt
exec bash 2>&1

(If log becomes too long tail -n500 should be sufficient)

When it happens, termux crashes too.

If you really mean Termux (the terminal emulator) then it's probably just out-of-memory and not much can be done about it. If you wanted to write proot here then it's likely problem at proot side as prooted process entered state that was not expected by proot (which then caused assertion failure) in which case if you'd like to continue with fixes then please follow instructions above for gathering log.

@nicenemo Right, this fix isn't included in apt repo (If it ever will probably will depend on popularity of this bug, in current form fix cannot be included in normal release as it would introduce problems (e.g. nested strace doesn't work and whole workaround has performance cost) even on devices with non-broken kernels).

You can use following to prevent automatic updates from apt repo:

apt-mark hold proot

(Undo with unhold)

corbinlc commented 6 years ago

I have found this issue exists on all the latest Huawei devices. See the reference I added.

corbinlc commented 6 years ago

@michalbednarski what additional testing and work do you think is needed here? For right now, I might just compile and download a different proot for users of the latest Huawei devices which includes your work. It would be nice to have one answer that works for everyone, but I am looking to see if you have a sense of what the remaining work would be to make this solid.

nicenemo commented 6 years ago

I think you mean Kirin 970 processor based devices.

No idea about Mediatek based budget phones.

mbsolutionscl commented 6 years ago

@michalbednarski

If you really mean Termux (the terminal emulator) then it's probably just out-of-memory and not much can be done about it.

yeah, I really meant termux, because the process (with proot and everything) was dying, but upon further testing, I discovered that huawei EMUI has a really aggresive power manager

06-25 10:26:43.382 1000 1151 1598 I am_kill : [0,5737,com.termux,200,iAwareF[PowerGenie](fg-service)]

So termux nor proot were crashing, it was huawei "power genie" killing termux because it was in background while I was using vnc client (acquire lock didn't help).

I removed termux from all battery optimizations and it's working ok now. The last version of proot postes above (proot_5.1.107-11_aarch64-90018e.deb.zip) is working fine!,

for the records: Huawei Mate 10 Pro, Android 8.0, I'm running ubuntu lxde inside proot.

cheers.

michalbednarski commented 6 years ago

4d8a1d9bab2b63199fb382963f1fcbfec693e9d1 fixes strace inside proot (and adds nicer error messages for cases where workaround stub), gdb is currently unsupported on devices without native PTRACE_POKEDATA working (It doesn't work outside proot as well, it might be possible to work around that as well but right now this is out of scope).

Besides those there are mostly build related issues (version with workaround won't compile for non-aarch64), detection and automatic enabling/disabling of workaround and code cleanup. If you're okay with serving different binaries then I think it can work now. I think I'll be able to integrate workaround into main version in the future.

corbinlc commented 6 years ago

Two thoughts...

1) In ptrace_pokedata_or_via_stub could you test the arch there and only do the normal ptrace(PTRACE_POKEDATA ...) if not aarch64

2) In combination with that, in ptrace_pokedata_or_via_stub could you just try the ptrace(PTRACE_POKEDATA ...) and then see if it give the I/O error and then continue on only if it does?

Would those two make this a more robust solution for all architectures and not waste performance if pokedata is working just fine?

michalbednarski commented 6 years ago

Mostly like that. I was thinking about (Applying both, not as alternative): First is compile-time switch dependant on architecture (I was thinking about introducing switch in arch.h but it might actually be simplier to just base conditions on just architecture). Note that switching must also enable/disable loader-info.awk and offset_to_pokedata_workaround variable.

Second is runtime switch i'd base on whenever first call (when proot is launching first process) to ptrace(PTRACE_POKEDATA) failed (for any reason, at this point first execve hasn't finished) and then remember whenever PTRACE_POKEDATA works.

Anyway I'm currently on holiday with limited computer access so I might not fix this in upcoming week.

corbinlc commented 6 years ago

I did some work related to what we discussed in the last two comments... https://github.com/CypherpunkArmory/proot/commits/pokedata

I mainly guarded more code if defines and made it use the work around only if the pokedata fails. I did not add a more intelligent switch that remembers if things worked the first time, as you suggested.

This works fine on an arm64 with working pokedata, but still getting a failure when pokedata is broken.

Here is the piece of the proot log that might be interesting...

proot info: vpid 2: translate("/" + "./usr")
proot info: vpid 2:          -> "/data/data/tech.ula/files/1/usr"
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x61642f617461642f, 0x7fd908fc40, 0x0, 0x0, 0x1) = 0xffffffffffffff9c [0x7fd908fc40, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908fc40 word=61642f617461642f sigmask_result=0
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x2e686365742f6174, 0x7fd908fc48, 0x0, 0x0, 0x1) = 0xffffffffffffff9c [0x7fd908fc40, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908fc48 word=2e686365742f6174 sigmask_result=0
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x656c69662f616c75, 0x7fd908fc50, 0x0, 0x0, 0x1) = 0xffffffffffffff9c [0x7fd908fc40, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908fc50 word=656c69662f616c75 sigmask_result=0
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x7273752f312f73, 0x7fd908fc58, 0x0, 0x0, 0x1) = 0xffffffffffffff9c [0x7fd908fc40, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908fc58 word=7273752f312f73 sigmask_result=0
proot info: vpid 2: sysenter start: void(0xffffffffffffff9c, 0x7fd908fc40, 0x0, 0x0, 0x0, 0x1) = 0xffffffffffffff9c [0x7fd908fc40, 0]
proot info: vpid 2: seccomp SIGSYS: void(0xffffffffffffff9c, 0x7fd908fc40, 0x0, 0x0, 0x0, 0x1) = 0xffffffffffffff9c [0x7fd908fc40, 0]
proot info: vpid 2: sysenter start: fchmodat(0xffffffffffffff9c, 0x595ec0, 0x41ed, 0x595ec0, 0x0, 0x1) = 0xffffffffffffff9c [0x7fd908fc40, 0]
proot info: vpid 2: translate("/" + "./usr")
proot info: vpid 2:          -> "/data/data/tech.ula/files/1/usr"
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x61642f617461642f, 0x7fd908fc20, 0x595ec0, 0x0, 0x1) = 0xffffffffffffff9c [0x7fd908fc20, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908fc20 word=61642f617461642f sigmask_result=0
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x2e686365742f6174, 0x7fd908fc28, 0x595ec0, 0x0, 0x1) = 0xffffffffffffff9c [0x7fd908fc20, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908fc28 word=2e686365742f6174 sigmask_result=0
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x656c69662f616c75, 0x7fd908fc30, 0x595ec0, 0x0, 0x1) = 0xffffffffffffff9c [0x7fd908fc20, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908fc30 word=656c69662f616c75 sigmask_result=0
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x7273752f312f73, 0x7fd908fc38, 0x595ec0, 0x0, 0x1) = 0xffffffffffffff9c [0x7fd908fc20, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908fc38 word=7273752f312f73 sigmask_result=0
proot info: vpid 2: sysenter start: void(0xffffffffffffff9c, 0x7fd908fc20, 0x41ed, 0x595ec0, 0x0, 0x1) = 0xffffffffffffff9c [0x7fd908fc20, 0]
proot info: vpid 2: seccomp SIGSYS: void(0xffffffffffffff9c, 0x7fd908fc20, 0x41ed, 0x595ec0, 0x0, 0x1) = 0xffffffffffffff9c [0x7fd908fc20, 0]
proot info: vpid 2: sysenter start: utimensat(0xffffffffffffff9c, 0x595ec0, 0x7fd908fc00, 0x0, 0x0, 0x0) = 0xffffffffffffff9c [0x7fd908fc00, 0]
proot info: vpid 2: translate("/" + "./usr")
proot info: vpid 2:          -> "/data/data/tech.ula/files/1/usr"
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x61642f617461642f, 0x7fd908fbe0, 0x0, 0x0, 0x0) = 0xffffffffffffff9c [0x7fd908fbe0, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908fbe0 word=61642f617461642f sigmask_result=0
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x2e686365742f6174, 0x7fd908fbe8, 0x0, 0x0, 0x0) = 0xffffffffffffff9c [0x7fd908fbe0, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908fbe8 word=2e686365742f6174 sigmask_result=0
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x656c69662f616c75, 0x7fd908fbf0, 0x0, 0x0, 0x0) = 0xffffffffffffff9c [0x7fd908fbe0, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908fbf0 word=656c69662f616c75 sigmask_result=0
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x7273752f312f73, 0x7fd908fbf8, 0x0, 0x0, 0x0) = 0xffffffffffffff9c [0x7fd908fbe0, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908fbf8 word=7273752f312f73 sigmask_result=0
proot info: vpid 2: sysenter start: utimensat(0xffffffffffffff9c, 0x7fd908fbe0, 0x7fd908fc00, 0x0, 0x0, 0x0) = 0xffffffffffffff9c [0x7fd908fbe0, 0]
proot info: vpid 2: sysexit start: utimensat(0x0, 0x7fd908fbe0, 0x7fd908fc00, 0x0, 0x0, 0x0) = 0x0 [0x7fd908fbe0, 0]
proot info: vpid 2: sysexit end: utimensat(0x0, 0x595ec0, 0x7fd908fc00, 0x0, 0x0, 0x0) = 0x0 [0x7fd908fc00, 0]
proot info: vpid 2: sysenter start: openat(0xffffffffffffff9c, 0x536aa8, 0x902, 0x5f52, 0x10, 0x10) = 0xffffffffffffff9c [0x7fd908fab0, 0]
proot info: vpid 2: translate("/" + "/dev/tty")
proot info: vpid 2:          -> "/dev/tty"
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x7974742f7665642f, 0x7fd908faa7, 0x5f52, 0x10, 0x10) = 0xffffffffffffff9c [0x7fd908faa7, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908faa7 word=7974742f7665642f sigmask_result=0
proot info: vpid 2: pokedata workaround: void(0xffffffffffffff9c, 0x7fd908fbe000, 0x7fd908faaf, 0x5f52, 0x10, 0x10) = 0xffffffffffffff9c [0x7fd908faa7, 0]
proot info: pokedata wstatus=47f stub=200000045c addr=7fd908faaf word=7fd908fbe000 sigmask_result=0
proot info: vpid 2: sysenter start: openat(0xffffffffffffff9c, 0x7fd908faa7, 0x902, 0x5f52, 0x10, 0x10) = 0xffffffffffffff9c [0x7fd908faa7, 0]
proot info: vpid 2: sysexit start: openat(0xfffffffffffffffa, 0x7fd908faa7, 0x902, 0x5f52, 0x10, 0x10) = 0xfffffffffffffffa [0x7fd908faa7, 0]
proot info: vpid 2: sysexit end: openat(0xfffffffffffffffa, 0x536aa8, 0x902, 0x5f52, 0x10, 0x10) = 0xfffffffffffffffa [0x7fd908fab0, 0]
*** stack smashing detected ***: /support/busybox terminated
./
./usr/
proot info: vpid 2: translate("/" + "/support/busybox")
proot info: vpid 2:          -> "/data/data/tech.ula/files/1/support/busybox"
proot info: vpid 2: terminated with signal 6
tar: write: Broken pipe

It is interesting because my version of fake_id0, emulates file permissions and such via meta files, so fchmodat and fchownat get turned to PR_void calls before enter end, but then the poke data is restarting the call with it now modified to be PR_void, but that gets blocked by seccomp filtering. I am guessing that is related to the failure, but not sure why it is reported as stack smashing yet.

Enjoy your holiday!

corbinlc commented 6 years ago

Looking at this again, it appears that bad stuff happens if any extension or otherwise changes the sysnum to PR_void or any other system call that is blocked by seccomp filtering as the pokedata workaround will restore the registers with the now illegal sysnum. Any suggestion on the best way to handle that?

corbinlc commented 6 years ago

So, I switched to using PR_getpid and not PR_void and forcing the result at exit to be 0 to denote when I want a system call to progress, but that I have fully emulated it. That seems to work, but going to think through whether there is a better way to go about this.

michalbednarski commented 6 years ago

There is already mechanism that automatically skips SIGSYS if that is the case.

The flag is set in case SIGTRAP | 0x80:, but it seems that I missed case SIGTRAP | PTRACE_EVENT_SECCOMP << 8: (which is what you've probably observed, you can check that by running with PROOT_NO_SECCOMP=1 and seeing if problem persists, but either way it seems that you've found valid bug)

corbinlc commented 6 years ago

Ah great. I will look at this more. I didn't want to change the places I use PR_void.

SDRausty commented 6 years ago

Can it be built on device?

Ref: https://github.com/termux/proot/issues/19

SDRausty commented 6 years ago

I have tried to build it on device. The result is not built.

buguniaogu commented 6 years ago

Unfixed now?

michalbednarski commented 6 years ago

Yes, so far fix didn't make into official release (it stays on pokedata branch).

Currently you can build from source or grab binary posted above in this thread.

Anyway it appears that this issue is popular enough to make it into official releases (but that means I'll need to make sure workaround isn't active when it's not needed and doesn't break compilation on targets other than aarch64)

buguniaogu commented 6 years ago

Thanks for replying.:smile:

akoveysi commented 4 years ago

proot warning: can't sanitize binding "kali-fs/tmp": No such file or directory proot warning: can't chdir("/root/.") in the guest rootfs: No such file or directory proot info: default working directory is now "/" proot error: '/usr/bin/env' not found (root = /data/data/com.termux/files/home/kali-fs, cwd = /, $PATH=(null)) fatal error: see proot --help.

SDRausty commented 2 years ago

Pardon me for asking; Why are my comments minimized in this issue?