/etc/init.d/nviboot is in nvi 1.81.6-11.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 | #!/bin/sh
### BEGIN INIT INFO
# Provides: nviboot
# Required-Start: $remote_fs
# Required-Stop:
# Default-Start: S
# Default-Stop:
# Short-Description: Script to recover nvi edit sessions.
### END INIT INFO
# @(#)recover.script 8.7 (Berkeley) 8/16/94
PATH=/sbin:/usr/sbin:/bin:/usr/bin
RECDIR=/var/tmp/vi.recover
SENDMAIL=/usr/sbin/sendmail
[ ! -x "$SENDMAIL" ] && exit 0
[ ! -d "$RECDIR" ] && exit 0
case "$1" in
start)
echo -n 'Recovering nvi editor sessions...'
sessions_found=""
# Check editor backup files.
vibackup=`echo $RECDIR/vi.*`
if [ "$vibackup" != "$RECDIR/vi.*" ]; then
for i in $vibackup; do
# Make sure we didn't lose the leading directory. This
# would only happen if some loser is playing games with
# embedded spaces in vi recovery file names
i=$RECDIR/${i#$RECDIR/}
# Nvi editor backup files should not be symlinks.
# Delete them
if test -L $i ; then
rm -f $i
continue
fi
# Only test files that are readable.
if test ! -f $i -o ! -r $i; then
continue
fi
# Unmodified nvi editor backup files either have the
# execute bit set or are zero length. Delete them.
if test -x $i -o ! -s $i; then
rm -f $i
continue
fi
done
fi
# It is possible to get incomplete recovery files, if the editor crashes
# at the right time.
virecovery=`echo $RECDIR/recover.*`
if [ "$virecovery" != "$RECDIR/recover.*" ]; then
for i in $virecovery; do
# Make sure we didn't lose the leading directory. This
# would only happen if some loser is playing games with
# embedded spaces in vi recovery file names
i=$RECDIR/${i#$RECDIR/}
# Discard symlinks
if test -L $i ; then
rm -f $i
continue
fi
# Only test files that are readable.
if test ! -f $i -o ! -r $i; then
continue
fi
# Delete any recovery files that are zero length, corrupted,
# or that have no corresponding backup file. Else send mail
# to the user.
recfile=`awk '/^X-vi-recover-path:/{print $2}' < $i`
if test -n "$recfile" -a -s "$recfile"; then
sessions_found="yes"
owner=`stat --format='%U' $recfile`
(su - nobody -s /bin/sh -c "$SENDMAIL $owner < $i" &) </dev/null >/dev/null 2>&0
else
rm -f $i
fi
done
fi
if [ -n "$sessions_found" ] ; then
echo "done."
else
echo "none found."
fi
;;
stop|restart|reload|force-reload)
;;
esac
exit 0
|