* Added SIGSYS handler for waitpid (Required for bash on Android 10)
* Added SIGSYS handler for sendmmsg on x86 (for DNS when using emulator)
* Fixed void syscall handling on 32 bit ARM
* Prevent tracees from setting SUID_DUMP_DISABLE
* Canonicalize tmp dir (termux/proot#40 by @tomty89)
* Merge changes from UserLAnd (althrough most are off
by default, termux/proot#39 by @corbinlc)
* Puting loader in libexec instead of extracting
it on every run
* Fixes running on broken Huawei devices (termux/proot#15)
* Mapping of uids coming from getsockopt(SO_PEERCRED) (termux/proot#36)
* Fixed results of `strace` after SIGSYS was suppressed
* Don't fail on removing broken link2symlink (termux/proot#31)
The check for a changed shell (e.g. by chsh) was correctly using $HOME/.termux/shell, but $HOME was being hardcoded to "/home" prior to the check.
Since most likely, $HOME is not yet "/home" (since the user is invoking termux-chroot) this test was failing to recognize changed shells (e.g. this failed with zsh).
Moving the assignment of HOME to /home after the shell has been read fixes this.
* Added arguments for proot to enable the use of MagiskSU from within termux-chroot.
* Restore original shebang to termux-chroot for pull-request.
* Added folder existence check to ensure MagiskSU changes don't break termux-chroot on later versions of Android, just in case.
* proot: Update for accept -> accept4 translation
Fixes the following warning when running termux-chroot on Android 8:
proot warning: can't sanitize binding "/property_contexts":
No such file or directory
Allow a command to be specified when running termux-chroot.
Example:
```
$ termux-chroot ls /
bin data dev etc home lib proc property_contexts share storage system tmp usr var vendor
```
This makes it possible to run scripts that include a part that needs to
be run in a chrooted environment, like a compile script.
```
./configure
make
termux-chroot make install
```
Previously it had to be done like this:
```
./configure
make
termux-chroot
cd program
make install
exit
```