summaryrefslogtreecommitdiff
path: root/lisp/mail/blessmail.el
diff options
context:
space:
mode:
authorKarl Heuer <kwzh@gnu.org>1994-04-20 05:22:51 +0000
committerKarl Heuer <kwzh@gnu.org>1994-04-20 05:22:51 +0000
commit9a8efe67cf7efb228882500b47f87dee68e8a126 (patch)
treed53b312558c776e2e2d74163ed14b9d8f81e80cd /lisp/mail/blessmail.el
parent925083d1c26e9973f3425a8be31965f046804c05 (diff)
downloademacs-9a8efe67cf7efb228882500b47f87dee68e8a126.tar.gz
Initial revision
Diffstat (limited to 'lisp/mail/blessmail.el')
-rw-r--r--lisp/mail/blessmail.el58
1 files changed, 58 insertions, 0 deletions
diff --git a/lisp/mail/blessmail.el b/lisp/mail/blessmail.el
new file mode 100644
index 00000000000..0218ec74981
--- /dev/null
+++ b/lisp/mail/blessmail.el
@@ -0,0 +1,58 @@
+;;; blessmail.el --- Decide whether movemail needs special privileges.
+
+;;; Copyright (C) 1994 Free Software Foundation, Inc.
+
+;; Maintainer: FSF
+;; Keywords: internal
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation; either version 2, or (at your option)
+;; any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs; see the file COPYING. If not, write to
+;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+
+;;; Commentary:
+
+;; This is loaded into a bare Emacs to create the blessmail script,
+;; which (on systems that need it) is used during installation
+;; to give appropriate permissions to movemail.
+;;
+;; It has to be done from lisp in order to be sure of getting the
+;; correct value of rmail-spool-directory.
+
+;;; Code:
+
+(message "Using load-path %s" load-path)
+(load "paths.el")
+(load "site-init" t)
+
+(let ((attr (file-attributes rmail-spool-directory))
+ modes)
+ (or (eq t (car attr))
+ (error "%s is not a directory" rmail-spool-directory))
+ (setq modes (nth 8 attr))
+ (cond
+ ((= ?w (aref modes 8))
+ nil)
+ ((= ?w (aref modes 5))
+ (insert "chgrp " (number-to-string (nth 3 attr))
+ " $* && chmod g+s $*\n"))
+ ((= ?w (aref modes 2))
+ (insert "chown " (number-to-string (nth 2 attr))
+ " $* && chmod u+s $*\n"))
+ (t
+ (insert "chown root $* && chmod u+s $*\n"))))
+(write-region (point-min) (point-max) "blessmail")
+(kill-emacs)
+
+;;; blessmail.el ends here