ezmlm-web/suid-wrapper/ezmlm-web-make-suid
lars ee33aaf182 improve performance of specific file accesses (e.g. for check_interface_language) through caching
allow to reset "owner"
update language files
update packaging scripts
only build i386 debian package
clarified some copyright stuff
move URL of data files from /ezmlm-web-data/ to /ezmlm-web/ (debian policy)
add example config file for apache
fixed 'usr/local/' to 'usr/local/' patch for debian
moved "confirmation selection" from "easy" to "expert"
ezmlm-web version number for web interface footer is retrieved from the SPOT ezmlm-web.cgi
2007-08-07 22:48:40 +00:00

39 lines
1.1 KiB
Bash
Executable file

#!/bin/sh
#
# This file is part of ezmlm-web.
#
# it creates user-specific suid binaries for calling ezmlm-web.cgi
#
# parameters: [USERNAME] DESTINATION_FILE
# e.g.: john ~john/public_html/cgi-bin/ezmlm-web
# only root may choose a USERNAME
#
# Copyright (C) 2006-2007, Lars Kruse, All Rights Reserved.
#
# ezmlm-web is distributed under a BSD-style license. Please refer to
# the copyright file included with the release for details.
#
set -eu
EZMLM_WEB_SUID_WRAPPER=/usr/local/bin/ezmlm-web.wrapper
[ $(id -u) -ne 0 ] && [ $# -ne 1 ] && echo "Syntax (for non-root): $(basename $0) DESTINATION_FILE" >&2 && exit 1
[ $(id -u) -eq 0 ] && [ $# -gt 2 -o $# -lt 1 ] && echo "Syntax (for root): $(basename $0) [USERNAME] DESTINATION_FILE" >&2 && exit 1
if [ $# -eq 1 ]
then EZ_USER=$(id -un)
EZ_FILE=$1
else EZ_USER=$1
EZ_FILE=$2
fi
cp "$EZMLM_WEB_SUID_WRAPPER" "$EZ_FILE"
if [ $(id -u) -eq 0 ]
then chown "$EZ_USER". "$EZ_FILE" || { echo "the user '$EZ_USER' does not exist" >&2; rm "$EZ_FILE"; exit 1; }
fi
chmod u+s "$EZ_FILE"
echo "Successfully created '$EZ_FILE' for user '$EZ_USER'."