- Replace autoconf/make build system with CMake (installs to /opt/archie) - Add CPack DEB packaging for Debian Trixie (non-free/net, postinst creates archie user, extracts DB skeleton, sets setuid bits, enables systemd units) - Add Gitea Actions workflow building .deb + binary/source tarballs on tag push - Add portable archie_init.py for non-Debian post-install setup - Port all scripts to Linux: getent passwd, systemctl, tail -n +N, gzip - Add SFTP (libssh2) and FTPS (OpenSSL) scrapers alongside anonftp - Add Flask web frontend (archie-web.service) - Fix filter scripts (exec cat replaces broken sed s///g) - Update all manpages: paths, contacts, add SFTP/FTPS section - Update etc/: enable gzip, add webindex catalog, fix localhost refs - Remove: AIX-2/SunOS-4.1.4/SunOS-5.4 dirs, tcl7.6/, tcl-dp/, tk4.2/, berkdb/, old Makefile.in/pre/post fragments, build.sh, unwrap scripts - Add .gitignore Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
73 lines
1.4 KiB
Bash
Executable File
73 lines
1.4 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# Invoke the script that mails output back to the user.
|
|
# If any errors are generated by this script, collect them
|
|
# and mail them to `recipient'.
|
|
#
|
|
# Modified by Lee McLoughlin for Solaris 2.3 <lmjm@doc.ic.ac.uk>
|
|
#
|
|
# The path must include:
|
|
#
|
|
# - the `mail_receiver' shell script
|
|
# - a mail program that takes the -s option
|
|
# - rm
|
|
# - whoami
|
|
|
|
PATH=/bin:bin
|
|
#PATH=/bin:/archie/src/3.0/telnet-client/archie-client/mail_back_end
|
|
|
|
# ---------------- Configure ----------------
|
|
# the address, at your site, to which to mail errors generated
|
|
# when attepmting to send mail
|
|
recipient=archie-errors
|
|
#
|
|
# temporary file in which to collect any error messages
|
|
err=/tmp/mailerr$$
|
|
# -------------- End Configure --------------
|
|
|
|
> $err
|
|
# lmjm:
|
|
exec 2> $err
|
|
if [ $# -ge 1 ] ; then
|
|
if [ "$1" != "-d" ] ; then
|
|
args=""
|
|
else
|
|
exec 2> $err
|
|
set -x
|
|
args="-d"
|
|
fi
|
|
fi
|
|
|
|
fatal()
|
|
{
|
|
echo ""
|
|
echo "${prog}: $1"
|
|
exit 1
|
|
}
|
|
|
|
get_home()
|
|
{
|
|
if [ $# -ne 1 ] ; then
|
|
fatal "get_home: bad number of arguments"
|
|
fi
|
|
if p=$(getent passwd "$1") ; then
|
|
echo "$p" | awk -F: '{print $6}'
|
|
else
|
|
fatal "get_home: can't find home directory for $1"
|
|
fi
|
|
}
|
|
|
|
prog=`basename $0`
|
|
if cd `get_home \`whoami\`` ; then
|
|
:
|
|
else
|
|
fatal "can't change to home directory!"
|
|
fi
|
|
|
|
umask 077
|
|
bin/mail_receiver $args 2>> $err
|
|
if [ -f $err -a -s $err ] ; then
|
|
mail -s "error from mail_receiver $err" $recipient < $err
|
|
fi
|
|
rm -f $err
|