Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
210 commits
Select commit Hold shift + click to select a range
f3fd832
Base skeleton of python extension framework
mickael-guene Dec 5, 2014
4516103
Allow to call an external python script
mickael-guene Dec 9, 2014
4aa8a8d
Try to improve python interface
mickael-guene Dec 12, 2014
53be2c7
Make read_data more pythonic
mickael-guene Dec 12, 2014
5c73f01
make write_data usable
mickael-guene Dec 13, 2014
5ae6c5a
Use string instead of bytearray
mickael-guene Dec 14, 2014
ef60843
Embbed python code inside proot
mickael-guene Jan 30, 2015
eab1127
Tweak makefile
mickael-guene Feb 2, 2015
2c1b6a2
Tweak makefile again before reworking it
mickael-guene Feb 2, 2015
a559e90
Build python extension if we have tools to do it
mickael-guene Feb 2, 2015
f8d4a43
set python extension support as experimental
mickael-guene Feb 18, 2015
7a04beb
Add python extension test that also give an example of usage
mickael-guene Feb 18, 2015
a72dea6
execve: realloc heap for CLONE_VM case
kazikcz Mar 7, 2017
d189b53
fix tmp cleanup on non ext fs
jorge-lip Nov 8, 2017
ca57ca5
Merge pull request #131 from jorge-lip/bugfix-removetemp
jopasserat Jan 11, 2018
f763a49
Fix "expect" -> "except" typo
hcpl Feb 6, 2018
886a78b
Merge pull request #139 from hcpl/expect-except-typo-fix
jopasserat Feb 6, 2018
fb95032
Merge pull request #119 from kazikcz/master
vincenthage Jun 1, 2018
af0bc70
Follow GNU Standards regarding DESTDIR
oxr463 Nov 29, 2018
f0867ed
Fix ambiguous objcopy parameters
oxr463 Nov 29, 2018
0d49d34
Get rid of enum __ptrace_request if __GLIBC__ is not defined
ronchaine May 13, 2018
a50718a
Disable support for GCC function instrumentation if not __GLIBC__
ronchaine May 13, 2018
2f7e532
Add missing #include
ronchaine May 13, 2018
74099b1
Use memset instead of nonstandard bzero
ronchaine May 13, 2018
3db6277
Add missing include for strcpy
ronchaine May 13, 2018
48af931
Use PTRACE_REQUEST_TYPE instead of enum __ptrace_request
ronchaine May 13, 2018
48f8d24
Add __W_STOPCODE if it's not already defined
ronchaine May 13, 2018
e9fbcfb
Fix typo in PTRACE_REQUEST_TYPE
ronchaine May 13, 2018
5bb196e
Support for musl libc
oxr463 Nov 29, 2018
db321c6
Purge remaining references to "proot.me" #152 (#154)
oxr463 Dec 11, 2018
3d192a0
Update README links (#153)
oxr463 Dec 11, 2018
f83371b
[skip travis-ci] remove notification email
oxr463 Dec 11, 2018
49ddab2
Fix seccomp for Linux >= 4.8
oxr463 Dec 13, 2018
28c4401
Merge branch 'jorge-lip-bugfix-seccomp'
oxr463 Dec 13, 2018
7ac3387
Properly filter the renameat2 syscall introduced in Linux v3.15.
KimonHoffmann Oct 10, 2018
09a0c3c
Removed erroneous syscall entry from arm64 table.
KimonHoffmann Oct 10, 2018
6444484
Merge branch 'Lawo-Ext-renameat2'
oxr463 Dec 13, 2018
2b43fdf
Update Travis build (#126)
jopasserat Dec 13, 2018
860cd9e
Explicitly define project scope as Linux-only
oxr463 Dec 13, 2018
11972c0
Add link to gitter
oxr463 Dec 13, 2018
c02f824
Fix "Fonctional" -> "Functional" typo
oxr463 Feb 13, 2019
f01ace5
Merge branch 'python-dev' of https://github.com/mickael-guene/PRoot i…
oxr463 Feb 22, 2019
a34fda9
Merge branch 'python-dev'
oxr463 Feb 22, 2019
1fc2739
Support chroot to a relative path to current root (#166)
cpixl Mar 5, 2019
26b64ca
Add proot.static target to GNUmakefile (#168)
cpixl Mar 6, 2019
a6db874
Fix binary loader _start/_end pointer types (#158) (#167)
cpixl Mar 6, 2019
ff61c86
Enable Gitlab CI (#169)
oxr463 Mar 6, 2019
6694d34
Create .mailmap
oxr463 Mar 11, 2019
cf447eb
Run GitLab-CI on all branches
oxr463 Apr 1, 2019
a1f3281
Ignore generated binaries from tests
oxr463 Apr 1, 2019
fe84110
Disable failing test-230f47cf
oxr463 Apr 1, 2019
b38a767
Update build status references
oxr463 Apr 1, 2019
40f18a1
Convert repo name to lowercase
oxr463 Apr 1, 2019
04e7edc
Ignore files generated from python extension
oxr463 Apr 2, 2019
88437e9
Add contributing guide
oxr463 Feb 13, 2019
388e01c
Generate website via docutils
oxr463 Apr 6, 2019
d50b0c7
Update Rootfs references in PRoot manual
oxr463 Apr 16, 2019
ed8a8cc
Provide instruction regarding private disclosures
oxr463 Apr 17, 2019
07e1f11
Require all shell scripts to pass shellcheck
oxr463 Apr 18, 2019
49b51af
add: script updating an already existing CARE Archive
jopasserat Dec 21, 2016
b8bd203
add: script converting CARE archives to Docker images
jopasserat Dec 21, 2016
c5590fa
Add CARE utility scripts
oxr463 Apr 18, 2019
b90d690
Add "top" convenience link for webpages
oxr463 Apr 18, 2019
c21786f
Warn extensions if fd exists on launch
oxr463 Apr 19, 2019
289823c
Remove FHS assumtions from tests
oxr463 Dec 11, 2018
e90e006
Revert "Support chroot to a relative path to current root (#166)"
wkz May 7, 2019
729f357
Allow trivial chroot using a relative path (#166)
wkz May 7, 2019
42f440e
Add test for chroot using relative path (#166)
wkz May 8, 2019
6ec44d5
Revert "Add proot.static target to GNUmakefile (#168)"
oxr463 May 9, 2019
7ff64a8
Remove cross-build-env scripts
oxr463 May 9, 2019
3cf062f
Drop Coverity and after_success steps from travis
oxr463 May 9, 2019
d406aec
Fix permissions for certain tests
oxr463 Apr 15, 2019
9c42ff7
Run gcov/lcov via GitLab CI/CD
oxr463 Apr 15, 2019
803e54d
Merge link2symlink changes into master
oxr463 May 11, 2019
037e77e
Added Void Linux to Ecosystem
eredisg Oct 2, 2019
df9c519
Fixed issue #165. Wrong version number.
Apr 17, 2019
5e6aa2d
Update GNUmakefile
neverrend Apr 17, 2019
a49ac91
Minor fixup for git versioning
oxr463 Nov 15, 2019
902189a
Fix GIT_VERSION
oxr463 Nov 15, 2019
dfe87e8
Replace mktemp with mkstemp
Aug 29, 2019
c69a5cf
Document compiling static binaries
oxr463 Nov 25, 2019
fa646e1
Document static-binaries via GitLab CI/CD
oxr463 Nov 25, 2019
3620f4e
Update RCC link
oxr463 Dec 13, 2019
34fa3e0
Update man page and rpm-spec
oxr463 Dec 13, 2019
a3eefac
Fix CI/CD pipelines
oxr463 May 13, 2019
cf89dfd
Include redirect template locally
oxr463 Dec 14, 2019
8bb51c0
Use local template
oxr463 Dec 14, 2019
77ce4ba
Auto-deploy to GitHub Pages
oxr463 Dec 14, 2019
bbd45b3
Add compiling instructions to README
oxr463 Dec 17, 2019
62e03fa
[skip ci] Fix typo
oxr463 Dec 17, 2019
20d619d
Replace .exe with .elf for loader binaries
oxr463 Dec 18, 2019
9002ed2
Rename tests to test
oxr463 Dec 19, 2019
05bdc8b
Actually renames tests
oxr463 Dec 19, 2019
2658363
Fix missing GNUmakefile
oxr463 Dec 19, 2019
e993e61
Update remaining instances of tests in project
oxr463 Dec 20, 2019
4a63026
Break out complex CI/CD steps
oxr463 Dec 20, 2019
1ba2887
Delete test-230f47cg.sh.deprecated
oxr463 Jan 7, 2020
f99e2ff
Delete test-230f47cf.sh.disabled
oxr463 Jan 7, 2020
883decd
Delete test-77777777.c.unreliable
oxr463 Jan 7, 2020
2e796c5
Prevent tracees from becoming undumpable
michalbednarski Sep 5, 2019
238d1ed
patch for seccomp
jorge-lip Nov 7, 2017
17b1b3f
Reformat is_kernel_4_8() function
oxr463 Jan 8, 2020
cddfc34
Fix missing parenthesis
oxr463 Jan 8, 2020
6d9391b
Ignore test artifacts
oxr463 Jan 8, 2020
ffd03af
Temporarily disable tests
oxr463 Jan 8, 2020
d2428af
Fix error-code handling in substitute_binding_stat.
Jan 9, 2020
414eef1
Fix shellcheck issues on CI/CD helper scripts
oxr463 Jan 10, 2020
948071f
Fix static binary distribution
oxr463 Jan 12, 2020
5c05acf
Implement Vagrant for kernel testing
oxr463 Jan 13, 2020
1873082
Update and rename howto-release.txt to howto-release.rst
oxr463 Feb 13, 2020
25c925e
Rename security.txt to security.rst
oxr463 Feb 13, 2020
f421d8f
Move articles and graphs to blog
oxr463 Feb 15, 2020
a23fcf1
Fix git clone for site deployment
oxr463 Feb 27, 2020
6b9776f
Update site.sh
oxr463 Feb 27, 2020
510c215
Update README.rst
oxr463 Mar 31, 2020
cc7ef37
Update AUTHORS
oxr463 Mar 31, 2020
8ef7ee5
Update README.rst
oxr463 Mar 31, 2020
43cb665
Add Termux to third-party packages
oxr463 Mar 31, 2020
ed146c1
Update manual.txt
oxr463 Mar 31, 2020
65cce8a
Migrate extension to Python3
akamathdev Mar 30, 2020
d51d629
Limit testsuite to five minutes
oxr463 Dec 20, 2019
d9c1e1d
Update README.rst
oxr463 Apr 11, 2020
e35d158
Collapse badges
oxr463 Apr 11, 2020
a4db645
Prepare documentation for release
oxr463 Apr 11, 2020
345761a
Update README.rst
oxr463 Apr 14, 2020
e6266f9
Add DOI Badge (#219)
oxr463 Apr 14, 2020
27a5519
Add image hashes for integrity (#220)
oxr463 Apr 16, 2020
72f6605
Disable failing pipeline notifications (#221)
oxr463 Apr 16, 2020
f2c6a3a
Add reference to Infinite Omicron, LLC.
oxr463 Apr 17, 2020
7a8726d
Fix references to manuals
oxr463 Apr 19, 2020
80930ca
Document vagrant (#224)
oxr463 May 3, 2020
8173d0a
Update Vagrantfile
oxr463 May 4, 2020
d7475d4
Update Vagrantfile
oxr463 May 4, 2020
39276fc
Fix missing directory in command
oxr463 Jun 2, 2020
afbde91
Add Dockerfiles for testing (#228)
oxr463 Jun 9, 2020
1ccf419
Update howto-devel.rst
oxr463 Jun 9, 2020
f0e3bfc
Fix typo in help output
oxr463 Jun 9, 2020
4a7ed61
Fix manual link on website
oxr463 Aug 30, 2020
0a9bbd6
Fix manual link on website
oxr463 Aug 30, 2020
ab43a25
docs: fix simple typo, othrwise -> otherwise (#237)
timgates42 Dec 11, 2020
8c0ccf7
Clarify dependency on uthash
oxr463 Jan 22, 2021
62e9ef7
Document pre-built binary location
oxr463 Jun 3, 2021
58cfd86
Prepare for release
oxr463 Jul 22, 2021
7dd2bb8
fake_id0: Fix POKE_MEM_ID to call poke_uint32 instead of poke_uint16
bcribas Sep 7, 2021
6265aee
Fix indentation
jzakrzew Aug 28, 2021
83b213a
Add a testcase.
jzakrzew Aug 28, 2021
bfe2c38
Fix an issue in seccomp event handling logic, that could cause
jzakrzew Aug 28, 2021
d5a796e
Make kernel version detection work for kernels 5.0+ and fix indentation.
jzakrzew Aug 28, 2021
252a824
Remove preprocessor directives and associated code,
jzakrzew Aug 28, 2021
b8aa35e
Pin Debian 8 for Docker
oxr463 Sep 11, 2021
4de38a7
Remove Travis CI (#270)
oxr463 Sep 14, 2021
64ceb34
Add support for statx syscall (#272)
yuyichao Oct 1, 2021
595585d
Make sure `/bin` is in PATH during test (#274)
yuyichao Oct 1, 2021
4f431c6
Fix handling of fstatat on new kernels (#275)
yuyichao Oct 1, 2021
18e4c77
Fix test failure due to increased shebang limit (#276)
yuyichao Oct 1, 2021
51b9796
Fix test caused by shell optimization (#277)
yuyichao Oct 1, 2021
267efd6
Fix regression in socket name shortening (#278)
yuyichao Oct 1, 2021
d9198cd
Allow a higher initial heap size in test (#279)
yuyichao Oct 1, 2021
f5b81a9
Python 3 support in test (#280)
yuyichao Oct 1, 2021
806bb62
Make sure the stack is aligned (#282)
yuyichao Oct 1, 2021
b0afb6b
Make sure not to fake too old an kernel release (#281)
yuyichao Oct 1, 2021
a577a36
Access sockfd in the chained getsocketname via the original version (…
yuyichao Oct 1, 2021
af689de
canon: call bindings substitution on '/' component of user path (#100)
guillon Oct 1, 2021
6baaa27
A few fixes for the python extension (#285)
yuyichao Oct 1, 2021
295768c
Delete roadmap.rst
oxr463 Oct 1, 2021
a70023a
Delete roadmap.rst
oxr463 Oct 1, 2021
d0a8b69
Fix event handling on newer kernels (#288)
yuyichao Oct 2, 2021
9e40f58
Fix and improve docker test skip detection (#289)
yuyichao Oct 2, 2021
e5a1af0
Enable github action for testing (#287)
yuyichao Oct 2, 2021
3bd4a3c
Do not treat libarchive warnings as errors (#293)
yuyichao Oct 4, 2021
248bcda
Install LZOP on CI for CARE archive extraction (#296)
yuyichao Oct 4, 2021
47fc3a3
Fix archive suffix handling (#294)
yuyichao Oct 4, 2021
cc6bac2
Fix extraction of wrapped file (#295)
yuyichao Oct 4, 2021
464d242
Fix waitpid on zombies (#291)
yuyichao Oct 4, 2021
d8bf141
Change restart_original_syscall to not use chained syscall (#297)
yuyichao Oct 5, 2021
d69b41a
Fix handling of receiving seccomp after normal ptrace event (#298)
yuyichao Oct 5, 2021
ba3cb34
Fix include in tests (#299)
yuyichao Oct 6, 2021
dd57b59
Allow the value of AT_HWCAP to be empty (#305)
yuyichao Nov 5, 2021
53191c5
Remove special handling of syscall avoider number on ARM (#304)
yuyichao Nov 5, 2021
1a9609d
Support utimensat_time64 on 32bit architectures (#303)
yuyichao Nov 5, 2021
f81a72d
Fix test compilation on ARM (#302)
yuyichao Nov 5, 2021
eb8b77a
Do not unconditionally use PTRACE_CONT when recieving a useless SECCO…
yuyichao Nov 5, 2021
185f6fd
Some printing tweaks (#300)
yuyichao Nov 5, 2021
db16f34
Fix fchmod permissions for loader (#268)
oxr463 Nov 5, 2021
45fecd7
Add link to repository on website (#273)
oxr463 Nov 8, 2021
f6f4300
Update wording in manual regarding rootfs
oxr463 Nov 8, 2021
96e5a8b
Prepare for v5.3.0 release (#316)
oxr463 Jan 5, 2022
dde79f8
Remove changelog from doc makefile (#317)
oxr463 Jan 6, 2022
d92431a
Error out when trying to set PTRACE_O_TRACESECCOMP under ptrace emula…
jzakrzew Jan 22, 2022
9e9cd23
Set the restart_how field in a newly created child tracee. (#308)
jzakrzew Jan 22, 2022
0a1d0b4
Remove unnecessary dependency of proot on libarchive. (#309)
orent Jan 22, 2022
dabcc6f
Fix incorrect year for 5.3.0 release
oxr463 Apr 24, 2022
99a8417
Prepare for v5.3.1 release
oxr463 Apr 24, 2022
f23459e
Add: faccess2(2) syscall
Oct 24, 2022
a0dc181
Remove extra tab for PR_faccessat2
oxr463 Oct 29, 2022
c8401b1
Add link to usage survey
oxr463 Jan 27, 2023
1ced010
Enable SonarCloud (#347)
oxr463 Apr 16, 2023
3d512fe
Android compatibility in temp.c
oxr463 Apr 19, 2023
ae17d78
Update copyright year
oxr463 Apr 19, 2023
41d78d4
Add uthash submodule
oxr463 Apr 19, 2023
d8b2dcf
Pin lib/uthash at v2.3.0
oxr463 Apr 19, 2023
6cd6da9
Include lib directory in Makefile
oxr463 Apr 22, 2023
8d94d2a
Add option --mixed-mode to disable mixed execution
Feb 13, 2023
10dd605
Fix test-0cf405b0 for newer versions of glibc.
KimonHoffmann Jan 16, 2023
c5a465e
Rename test-0cf405b0.c
oxr463 Apr 23, 2023
a5ee0b7
Fix test-25069c12 and test-25069c13 for new kernels.
jpoiret Apr 28, 2023
bd5a5f6
Prepare for PRoot release v5.4.0
oxr463 May 13, 2023
e8f3ee6
Merge tag 'v5.4.0' into merge-5.4.0
DrDaveD Jan 13, 2026
e7976c5
fix problems with rootlesscontainer support after update to upstream …
DrDaveD Dec 30, 2025
20888f1
remove broken actions
DrDaveD Dec 30, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
AUTHORS
contrib
COPYING
doc
ISSUE_TEMPLATE
test/docker
*.rst
25 changes: 20 additions & 5 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,10 +1,25 @@
*.d
*.gcda
*.gcno
*.html
*.info
*.o
*.1
doc/*.h
*rpm-spec
doc/public_html/
gcov-latest/
public/
src/.check_process_vm.res
src/.check_seccomp_filter.res
src/build.h
src/care
src/loader/loader
src/loader/loader-m32
src/proot

src/care*
src/loader*
src/proot*
test/*
!test/*.sh.*
!test/*.sh
!test/*.c
!test/*.py
!test/*.mk
!test/docker
71 changes: 71 additions & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
image: gcc:7.4.0

stages:
- check
- dist
- coverage
- static-analysis
- deploy

before_script:
- apt-get update -qq
- apt-get install -qq clang-tools-6.0 curl docutils-common gdb lcov libarchive-dev libtalloc-dev strace swig uthash-dev xsltproc

check:
stage: check
script:
- make -C src proot care
- timeout --signal=SIGKILL 5m make -C test
allow_failure: true

dist:
stage: dist
script:
- LDFLAGS="${LDFLAGS} -static" make -C src proot GIT=false
after_script:
- mkdir -p dist
- cp src/proot dist/
- cd dist
- sha256sum ./proot > proot.sha256sum
- md5sum ./proot > proot.md5sum
artifacts:
paths:
- dist

gcov:
stage: coverage
script:
- /bin/sh ./util/coverage.sh
artifacts:
paths:
- gcov-latest

scan-build:
stage: static-analysis
script:
- scan-build-6.0 make -C src proot
after_script:
- cp -R /tmp/scan-build-* scan-build-latest
artifacts:
paths:
- scan-build-latest

pages:
stage: deploy
script:
- /bin/sh ./util/dist.sh
dependencies:
- dist
- gcov
- scan-build
artifacts:
paths:
- public

site:
stage: deploy
script:
- /bin/sh ./util/site.sh
only:
- master
allow_failure: true
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "lib/uthash"]
path = lib/uthash
url = https://github.com/proot-me/uthash
2 changes: 2 additions & 0 deletions .mailmap
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Lucas Ramage <ramage.lucas@protonmail.com> <43783393+oxr463@users.noreply.github.com>
Lucas Ramage <ramage.lucas@protonmail.com> <oxr463@gmx.us>
10 changes: 0 additions & 10 deletions .travis.yml

This file was deleted.

5 changes: 4 additions & 1 deletion AUTHORS
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
The copyright holder for PRoot and CARE is STMicroelectronics, these
tools are developed in the Compilation Expertise Center by:
tools were originally developed in the Compilation Expertise Center by:

Cédric VINCENT <cedric.vincent@st.com>
Original author, maintainer.
Expand Down Expand Up @@ -30,3 +30,6 @@ Denis FERRANTI <denis.ferranti@st.com>

Paul GHALEB <paul.ghaleb@st.com>
User manual review.

Lucas Ramage <ramage.lucas@protonmail.com>
Website re-design, documentation, maintainer.
249 changes: 249 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,249 @@
Changelog
=========

All notable changes to this project will be documented in this file.

The format is based on `Keep a Changelog`_, and this project adheres to
`Semantic Versioning`_.

Unreleased
----------

Please see `Unreleased Changes`_ for more information.

5.4.0 - 2023-05-13
------------------

Added
~~~~~

- faccessat2 syscall
- Enable SonarCloud for GitHub Actions
- Include uthash v2.3.0 as submodule
- Disable mixed execution with new --mixed-mode option

Changed
~~~~~~~

- Rename test-0cf405b0.c to fix_memory_corruption_execve_proc_self_exe.c

Fixed
~~~~~

- Android compatibility with cwd
- Running test-0cf405b0 for newer versions of glibc
- Running test-25069c12 and test-25069c13 on newer kernels

5.3.1 - 2022-04-24
------------------

Changed
~~~~~~~

- Error out when trying to set PTRACE_O_TRACESECCOMP under ptrace emulation.
- Set the restart_how field in a newly created child tracee.

Removed
~~~~~~~

- Unnecessary dependency of PRoot on libarchive.
- Changelog target from doc makefile.

Fixed
~~~~~

- Incorrect year for 5.3.0 release in changelog and manual.

5.3.0 - 2022-01-04
------------------

Added
~~~~~

- Link to repository on website.

- Support for utimensat_time64 on 32bit architectures.

- Install LZOP on CI for CARE archive extraction.

- Enable GitHub Actions for testing.

- Message for stopping and starting of tracees.

- Python 3 support in tests.

- Support for statx syscall.

- Test case for sysexit handler.

Changed
~~~~~~~

- Update wording in manual regarding rootfs.

- Change restart_original_syscall to not use chained syscall.

- Access sockfd in the chained getsocketname via the original version.

- Pin Debian 8 for docker image.

- Make sure not to fake too old an kernel release.

- Ensure the stack is aligned for AArch64 and X86 for SIMD code.

- Include /bin in PATH during tests.

- Kernel version detection for kernels 5.0 and newer.

- Allow a higher initial heap size in test.

- Allow the value of AT_HWCAP to be empty.

- Do not unconditionally use PTRACE_CONT when recieving a useless SECCOMP event.

- Do not treat libarchive warnings as errors.

- canon: call bindings substitution on '/' component of user path.

Removed
~~~~~~~

- Remove special handling of syscall avoider number on ARM.

- Delete roadmap.rst file.

- Remove Travis CI configuration.

- Remove preprocessor directives and associated code.

Fixed
~~~~~

- Fchmod permissions for loader.

- Test compilation on ARM.

- Includes in tests.

- Handling of receiving seccomp after normal ptrace event.

- Waitpid on zombies.

- Extraction of wrapped file.

- Archive suffix handling.

- Improve docker test skip detection.

- Event handling on newer kernels.

- Command line handler for the python extension.

- Linking against the swig generated symbol for the python extension.

- Linking on python 3.8 and newer.

- Regression in socket name shortening.

- Test caused by shell optimization.

- Test failure due to increased shebang limit.

- Handling of fstatat on new kernels.

- Seccomp event handling logic causing sysexit events to be missed.

- fake_id0: Fix POKE_MEM_ID to call poke_uint32 instead of poke_uint16.

5.2.0 - 2021-09-01
------------------

Added
~~~~~

- GitLab CI/CD pipelines for static binaries.

- Python extension.

- Secure disclosure instructions.

- Vagrantfiles for kernel-specific testing.

- Support for Musl libc.

- Use shellcheck for scripts.

- link2symlink extension.

- Contributor scripts care2docker.sh, and care_rearchiver.sh

- Clang scan-build and gcov/lcov for source code analysis.

- Trivial chroot using relative paths.

- port_mapper extension.

- Commandline option --kill-on-exit.

- Hidden PROOT_TMPDIR option.

- Support for sudo via fake_id0 extension.

Changed
~~~~~~~

- Started using top-level changelog instead of individual ones.

- Limit testsuite to five minutes.

- Updated release instructions.

- Renamed tests to test.

- Replace .exe file extension with .elf for loader binaries.

- Use LC_ALL instead of LANG.

- Semantics for HOST_PATH extension event arguments.

Removed
~~~~~~~

- Disabled, deprecated, or unreliable tests.

- Drop Coverity from Travis CI.

- Cross-compiling scripts for Slackware.

- FHS assumptions from tests.

- References to proot.me domain.

Fixed
~~~~~

- Error-code handling in substitute_binding_stat.

- Prevent tracees from becoming undumpable.

- Merged patches for detecting kernels >= 4.8.

- GIT_VERSION for development binaries.

- Replace mktemp with mkstemp.

- File permissions for test scripts.

- Filter renamteat2 syscall.

- Honor GNU standards regarding DESTDIR variable.

- Cleanup tmp on non-ext file systems.

- Reallocation of heap for CLONE_VM on execve syscall.

- Non-executable stack for binaries.

.. _Unreleased Changes: https://github.com/proot-me/proot/compare/v5.4.0...master
.. _Keep a Changelog: https://keepachangelog.com/en/1.0.0
.. _Semantic Versioning: https://semver.org/spec/v2.0.0.html
Loading