From: Daniel Kahn Gillmor Date: Fri, 20 Feb 2009 02:04:47 +0000 (-0500) Subject: diagnostics should now check for cruft from old versions of the monkeysphere. X-Git-Tag: monkeysphere_0.23~38 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=8a5413ed44737b39ea132d4670512043593820b2;p=monkeysphere.git diagnostics should now check for cruft from old versions of the monkeysphere. --- diff --git a/src/share/common b/src/share/common index bfe73a3..05c917f 100644 --- a/src/share/common +++ b/src/share/common @@ -1160,3 +1160,35 @@ list_primary_fingerprints() { awk -F: '/^fpr:/{ print $10 }' rm -rf "$fake" } + + +check_cruft_file() { + local loc="$1" + local version="$2" + + if [ -e "$loc" ] ; then + printf "The file '%s' is no longer used by\nmonkeysphere (as of version %s), and can be removed.\n" "$loc" "$version" | log info + fi +} + +check_upgrade_dir() { + local loc="$1" + local version="$2" + + if [ -d "$loc" ] ; then + printf "The presence of directory '%s' indicates that you have\nnot yet completed a monkeysphere upgrade.\nYou should probably run the following script:\n %s/transitions/%s\n" "$loc" "$SYSSHAREDIR" "$version" | log info +} + +## look for cruft from old versions of the monkeysphere, and notice if +## upgrades have not been run: +report_cruft() { + check_upgrade_dir "${SYSCONFIGDIR}/gnupg-host" 0.23 + check_upgrade_dir "${SYSCONFIGDIR}/gnupg-authentication" 0.23 + + check_cruft_file "${SYSCONFIGDIR}/gnupg-authentication.conf" 0.23 + check_cruft_file "${SYSCONFIGDIR}/gnupg-host.conf" 0.23 + + if ls "${SYSDATADIR}/backup-from-"*"-transition" 2>/dev/null ; then + printf "The directories above are backups left over from a monkeysphere transition.\nThey may contain copies of sensitive data (host keys, certifier lists), but\nthey are no longer needed by monkeysphere.\nYou may remove them at any time.\n" | log info + fi +} diff --git a/src/share/ma/diagnostics b/src/share/ma/diagnostics index 0411080..7810c56 100644 --- a/src/share/ma/diagnostics +++ b/src/share/ma/diagnostics @@ -28,6 +28,8 @@ local badhostkeys local sshd_config local problemsfound=0 +report_cruft + if ! id monkeysphere >/dev/null ; then echo "! No monkeysphere user found! Please create a monkeysphere system user with bash as its shell." problemsfound=$(($problemsfound+1)) diff --git a/src/share/mh/diagnostics b/src/share/mh/diagnostics index d774723..51530e3 100644 --- a/src/share/mh/diagnostics +++ b/src/share/mh/diagnostics @@ -28,6 +28,8 @@ local badhostkeys local sshd_config local problemsfound=0 +report_cruft + # FIXME: what's the correct, cross-platform answer? sshd_config=/etc/ssh/sshd_config seckey=$(gpg_host --list-secret-keys --fingerprint --with-colons --fixed-list-mode)