1#!/bin/sh
2#
3# chroot LD_PRELOAD wrapper to safely chroot any application
4#
5# (C) 2004 Henrik Nordstrom <hno@marasystems.com>
6#
7# Permission is hereby granted, free of charge, to any person obtaining
8# a copy of this software and associated documentation files (the
9# "Software"), to deal in the Software without restriction, including
10# without limitation the rights to use, copy, modify, merge, publish,
11# distribute, sublicense, and/or sell copies of the Software, and to
12# permit persons to whom the Software is furnished to do so, subject
13# to the following conditions:
14#
15# The above copyright notice and this permission notice shall be
16# included in all copies or substantial portions of the Software.
17#
18# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
21# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
22# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
23# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
24# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25
26prefix="@prefix@"
27exec_prefix="@exec_prefix@"
28
29if [ $# -lt 3 ]; then
30	echo "Usage: $0 user rootdirectory application ..." >&2
31	exit 1
32fi
33
34CHROOT_USER="$1"; export CHROOT_USER
35CHROOT_ROOT="$2"; export CHROOT_ROOT
36shift ; shift
37LD_PRELOAD="@libexecdir@/chroot_safe/chroot_safe.so"; export LD_PRELOAD
38exec "$@"
39