Package: schroot / 1.6.10-3+deb9u1

Metadata

Package Version Patches format
schroot 1.6.10-3+deb9u1 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
Add support for more compression formats.patch | (download)

etc/setup.d/05file | 18 18 + 0 - 0 !
man/schroot.conf.5.man | 13 7 + 6 - 0 !
2 files changed, 25 insertions(+), 6 deletions(-)

 add support for more compression formats

Add SESSION_SOURCE and CHROOT_SESSION_SOURCE.patch | (download)

man/schroot-setup.5.man | 4 4 + 0 - 0 !
sbuild/sbuild-chroot-facet-session-clonable.cc | 2 1 + 1 - 0 !
sbuild/sbuild-chroot-facet-session.cc | 28 23 + 5 - 0 !
sbuild/sbuild-chroot-facet-session.h | 29 27 + 2 - 0 !
sbuild/sbuild-chroot.cc | 4 4 + 0 - 0 !
sbuild/sbuild-chroot.h | 5 3 + 2 - 0 !
sbuild/sbuild-tr1types.h | 2 2 + 0 - 0 !
test/sbuild-chroot-block-device.cc | 24 24 + 0 - 0 !
test/sbuild-chroot-btrfs-snapshot.cc | 12 9 + 3 - 0 !
test/sbuild-chroot-custom.cc | 1 1 + 0 - 0 !
test/sbuild-chroot-directory.cc | 6 6 + 0 - 0 !
test/sbuild-chroot-file.cc | 5 5 + 0 - 0 !
test/sbuild-chroot-loopback.cc | 6 6 + 0 - 0 !
test/sbuild-chroot-lvm-snapshot.cc | 4 4 + 0 - 0 !
test/sbuild-chroot-plain.cc | 1 1 + 0 - 0 !
15 files changed, 120 insertions(+), 13 deletions(-)

 add session_source and chroot_session_source

10mount Move mount directory to var run.patch | (download)

CMakeLists.txt | 2 1 + 1 - 0 !
bin/schroot/CMakeLists.txt | 1 0 + 1 - 0 !
bin/schroot/Makefile.am | 1 0 + 1 - 0 !
etc/setup.d/10mount | 9 9 + 0 - 0 !
scripts/global.mk | 2 1 + 1 - 0 !
5 files changed, 11 insertions(+), 4 deletions(-)

 10mount: move mount directory to /var/run

Note that this patch merges multiple upstream commits.

Bug-Debian: http://bugs.debian.org/762597
Support union mounts with overlay as in Linux 4.0.patch | (download)

etc/setup.d/10mount | 3 3 + 0 - 0 !
man/schroot.conf.5.man | 4 2 + 2 - 0 !
sbuild/sbuild-chroot-facet-union.cc | 1 1 + 0 - 0 !
3 files changed, 6 insertions(+), 2 deletions(-)

 support union mounts with overlay, as in linux 4.0

Bug: https://github.com/codelibre-net/schroot/issues/1
Signed-off-by: Felipe Sateler <ffsateler@debian.org>
Signed-off-by: Antonio Terceiro <terceiro@debian.org>

GCC5 fixes on regexes.patch | (download)

cmake/regex-checks.cmake | 10 10 + 0 - 0 !
test/sbuild-keyfile.cc | 2 1 + 1 - 0 !
test/sbuild-regex.cc | 20 20 + 0 - 0 !
3 files changed, 31 insertions(+), 1 deletion(-)

 gcc5 fixes on regexes

schroot mount make bind mounts private.patch | (download)

bin/schroot-mount/schroot-mount-main.cc | 43 43 + 0 - 0 !
bin/schroot-mount/schroot-mount-main.h | 10 10 + 0 - 0 !
2 files changed, 53 insertions(+)

 [patch] schroot-mount: make bind mounts use private mount propagation

When creating a bind mount, on a Linux system, mark the target as
private. When creating a recursive bind mount, on a Linux system, mark
the target as recursively private.

This change fixes issues around shared mount points being bind mounted
into a schroot and then when the schroot session is tore down, the mount
point being unmounted in both the schroot and in the host environment.

For example, if the schroot fstab file contains the following line:

  /home           /home           none    rw,rbind        0       0

A user's home directory mounted at /home/$USER is unmounted in both the
schroot and host when the schroot sessions is ended without this change.

Signed-off-by: Tyler Hicks <tyhicks@canonical.com>

schroot mount resolve mount destinations while chrooted.patch | (download)

bin/schroot-mount/schroot-mount-main.cc | 139 117 + 22 - 0 !
bin/schroot-mount/schroot-mount-main.h | 29 24 + 5 - 0 !
2 files changed, 141 insertions(+), 27 deletions(-)

 [patch] schroot-mount: resolve mount destinations while chrooted

The schroot-mount binary was attempting to use realpath(3) from outside
of the chroot to resolve mount destination paths inside of the chroot.
It would then take the resolved path and prepend it with the path to the
chroot in an attempt to enforce that symlink resolution will always end
up inside of the chroot.

One example of why this approach isn't sufficient is that when
/<chroot>/dev/shm/ is the mount destination but it is a symlink to
/run/shm and the host's /run/shm is a symlink to /dev/shm. The resolved
path will end up being /<chroot>/dev/shm/ and, due to mount following
symlinks, the host's /dev/shm will be mounted over.

To fix the path resolution issue, this patch first resolves the path to
the chroot base path, then forks and calls chroot(2) on that path, then
resolves the path to the mount destination inside the chroot. Finally,
the resolved chroot base path and the resolved mount destination path
are combined to create the fully resolved path used for mounting.

Bug-Debian: https://bugs.debian.org/728096
Bug-Ubuntu: https://launchpad.net/bugs/1438942

Signed-off-by: Tyler Hicks <tyhicks@canonical.com>

fix test suite with usrmerge.patch | (download)

test/sbuild-util.cc | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 fix test suite when /bin is a symlink to /usr/bin
Unmount everything that we can instead of giving up.patch | (download)

etc/setup.d/10mount | 7 5 + 2 - 0 !
1 file changed, 5 insertions(+), 2 deletions(-)

 [patch] unmount everything that we can, instead of giving up at the
 first failure


fix killprocs.patch | (download)

etc/setup.d/15killprocs | 7 4 + 3 - 0 !
1 file changed, 4 insertions(+), 3 deletions(-)

 fix logic in 15killprocs
 The code that tried to identify processes running in a chroot
 was failing when the chroot path contained a symlink (/var/run)
 since the kernel reports a canonicalized name.
 .
 Thanks to Christoph Biedl <debian.axhn@manchmal.in-ulm.de> for the
 analysis.
fix bash completion.patch | (download)

etc/bash_completion/schroot | 5 2 + 3 - 0 !
1 file changed, 2 insertions(+), 3 deletions(-)

 fix bash completion