Skip to content

Conversation

@DrDaveD
Copy link
Collaborator

@DrDaveD DrDaveD commented Jan 12, 2026

This merges in all the changes from v5.4.0 upstream and then adapts the rootless-containers/PRoot modifications to conform to that version.

Since this merges on top of a modified base, the commits cannot be fast-forwarded from upstream and I believe that it will instead create a new commit for every one, making it more difficult to pick out exactly what has changed. An alternative (and my preference) is to force push everything from upstream to the rootlesscontainers branch and then cherry-pick the changes that had been applied there.

mickael-guene and others added 30 commits December 5, 2014 15:27
But will be better if it return a bytes array ...
When a process is cloned with CLONE_VM it shares
heap with its parent.

When a process is execve()d it is considered to
lose its VM, however the code didn't account for
that and bzero()d the heap. This could cause the parent
process to fail belongs_to_heap_prealloc() checks
in subsequent syscalls depending on the resulting
child heap size and child-parent code execution
ordering.

I've discovered this while trying to build
xz-5.1.3alpha (particularly when running
aclocal-1.15). m4 process would throw out one of:
Bad address (EFAULT), No such file (ENOENT) or
stack overflow errors consistently when trying to
open() foreach.m4 file (error depended on moonphase
and target system: debian-sid i386 and debian-sid
x86_64 on x86_64 host).

Signed-off-by: Michal Kazior <michal@plumewifi.com>
execve: realloc heap for CLONE_VM case
DESTDIR is a variable prepended to each installed target file,
You should not set the value of DESTDIR in your Makefile at all.
https://www.gnu.org/prep/standards/html_node/DESTDIR.html

Suggested-By: Guilhem Lettron <guilhem@barpilot.io>
Closes: proot-me#51
command line options: -I or --input-target, or -F or --target
command line options: -O or --output-target, or -F or --target
https://sourceware.org/binutils/docs-2.31/binutils/Target-Selection.html#Target-Selection
* Update event.c

* Update manual.txt

* Update man.1
oxr463 and others added 22 commits November 8, 2021 01:26
* Update DOI badge

* Update CHANGELOG.rst

* Delete changelog.rst for proot and care

* Update manual.rst

* Update proot.h
…tion. (proot-me#311)

proot currently does not even try to handle seccomp traps when running
ptrace emulation. Returning an error is better than misleading the ptracer
into expecting seccomp events.

This (sort of) fixes test-230f47ch.
)

This eliminates unexpected SIGTRAPs in newly forked processes,
allowing removal of ugly (and broken) workarounds in
the handle_tracee_event_kernel_4_8 event handler.

"Useless" seccomp traps still may happen if a tracee has
explicity disabled seccomp (like during ptrace emulation),
but handling these is much easier.

This fixes following tests: test-d92b57ca, test-2db65cd2.
Additionaly test-230f47ch is not skipped now, but it fails
under seccomp due to missing seccomp handling in handle_ptracee_event.
Also generate CARE dependency using pkgconfig.
* Create sonarcloud.yml

* Create sonar-project.properties

* Combine github actions files

* Fix syntax error with GitHub Actions

* Update clang-tools for GitHub Actions

* Simplify test matrix naming
Disable the check to see if the executable being executed
is the same ELF machine as the host system. This is to
support the case where ELF objects are run under a custom
QEMU emulator or LD_LIBRARY_PATH.

Bug: proot-me#343
Newer versions of glibc apparently enforce argv to contain at least one
argument, regardless of what what passed to execlp(). This behavioral
change resulted in test-0cf405b0 performing an endless loop.

This commit addresses this problem by setting an environment variable to
indicate, whether the execlp() call has already been performed.
Fix both tests in the same vein as [1].  Note that this behavior had been
changed by Linux's [2], not by glibc as suggested by [1].

[1] 10dd605
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=dcd46d897adb70d63e025f175a00a89797d31a43
Prepare for CARE release v2.3.0
@DrDaveD DrDaveD marked this pull request as draft January 12, 2026 23:09
…master branch

Signed-off-by: Dave Dykstra <2129743+DrDaveD@users.noreply.github.com>
Signed-off-by: Dave Dykstra <2129743+DrDaveD@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.