annotate lisp/efs/efs-report.el @ 118:7d55a9ba150c r20-1b11

Import from CVS: tag r20-1b11
author cvs
date Mon, 13 Aug 2007 09:24:17 +0200
parents 9f59509498e1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
22
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
1 ;; -*-Emacs-Lisp-*-
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
2 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
3 ;;
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
4 ;; File: efs-report.el
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
5 ;; Release: $efs release: 1.15 $
116
9f59509498e1 Import from CVS: tag r20-1b10
cvs
parents: 114
diff changeset
6 ;; Version: #Revision: 1.9 $
22
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
7 ;; RCS:
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
8 ;; Description: Function to report efs bugs in a usable way.
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
9 ;; Author: Andy Norman, Dawn
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
10 ;; Created: Tue May 18 08:34:45 1993
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
11 ;; Language: Emacs-Lisp
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
12 ;;
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
13 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
14
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
15 (provide 'efs-report)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
16 (require 'efs)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
17 (autoload 'reporter-submit-bug-report "reporter")
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
18 (defvar reporter-version) ; For the byte-compiler
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
19
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
20 ;;; Variables
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
21
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
22 (defconst efs-report-version
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
23 (concat (substring "$efs release: 1.15 $" 14 -2)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
24 "/"
116
9f59509498e1 Import from CVS: tag r20-1b10
cvs
parents: 114
diff changeset
25 (substring "#Revision: 1.9 $" 11 -2)))
22
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
26
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
27 (defconst efs-report-salutations
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
28 ["Dear bug team:"
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
29 "Ciao bug team:"
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
30 "Salut bug team:"
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
31 "Gruss bug team:"
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
32 "To whom it may concern:"
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
33 "Fellow efs'ers:"
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
34 "Greetings earthlings:"])
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
35
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
36 (defvar efs-bug-address "efs-bugs@cuckoo.hpl.hp.com")
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
37
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
38 (defconst efs-report-other-vars
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
39 ;; List of variables needed for efs-report, that aren't generated below.
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
40 '(efs-ftp-program-name
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
41 efs-ftp-program-args
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
42 efs-local-host-regexp
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
43 efs-ftp-local-host-regexp
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
44 efs-gateway-host
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
45 efs-gateway-type
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
46 reporter-version
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
47 features))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
48
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
49 (defconst efs-report-avoid-vars
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
50 ;; List of variables we don't want to see.
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
51 '(efs-netrc-filename
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
52 efs-default-password
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
53 efs-default-account
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
54 efs-default-user))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
55
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
56 ;; Dynamically bound. Used to pass data to hooks.
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
57 (defvar efs-report-default-host nil)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
58 (defvar efs-report-default-user nil)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
59 (defvar efs-report-blurb nil)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
60
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
61 ;;; Functions
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
62
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
63 (defun efs-report-get-host-type-regexps ()
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
64 "Return a list of host type regexp's which are non-nil."
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
65 (let ((list efs-host-type-alist)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
66 ent result)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
67 (while (setq ent (car list))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
68 (if (symbol-value (cdr ent))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
69 (setq result (cons (cdr ent) result)))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
70 (setq list (cdr list)))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
71 result))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
72
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
73 (defun efs-report-get-versions ()
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
74 ;; Return a list of efs versions variables.
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
75 (mapcar
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
76 'intern
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
77 (sort
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
78 (let (completion-ignore-case)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
79 (all-completions
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
80 "efs-" obarray
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
81 (function
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
82 (lambda (sym)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
83 (and (boundp sym)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
84 (let ((name (symbol-name sym)))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
85 (and (>= (length name) 8)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
86 (string-equal (substring name -8) "-version"))))))))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
87 'string-lessp)))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
88
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
89 (defun efs-report-get-user-vars ()
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
90 ;; Return a list of efs user variables.
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
91 (mapcar
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
92 'intern
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
93 (sort
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
94 (let (completion-ignore-case)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
95 (all-completions "efs-" obarray 'user-variable-p))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
96 'string-lessp)))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
97
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
98 (defun efs-report-pre-hook ()
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
99 ;; efs-report-default-host, efs-report-default-user, and
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
100 ;; efs-report-blurb are dynamically bound.
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
101 (save-excursion
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
102 (let ((end (progn (mail-position-on-field "subject") (point))))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
103 (beginning-of-line)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
104 (search-forward ":" end)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
105 (delete-region (point) end)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
106 (insert
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
107 " EFS "
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
108 (or (and (boundp 'efs-version) (string-match "/" efs-version)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
109 (concat (substring efs-version 0 (match-beginning 0))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
110 " "))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
111 "")
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
112 "bug: ")))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
113 (let ((host (read-string "Bug occurred for remote host: "
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
114 efs-report-default-host))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
115 (user (read-string "Logged in as: "
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
116 efs-report-default-user))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
117 buff-name)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
118 (if (string-match "^ *$" host) (setq host nil))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
119 (if (string-match "^ *$" user) (setq user nil))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
120 (if host
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
121 (insert "\nefs believes that the host type of " host " is "
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
122 (symbol-name (efs-host-type host))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
123 ".\n"))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
124 (if efs-report-blurb
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
125 (insert "\n" efs-report-blurb "\n"))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
126 (if (and host
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
127 user
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
128 (get-buffer (setq buff-name (efs-ftp-process-buffer host user)))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
129 (save-window-excursion
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
130 (y-or-n-p
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
131 (progn
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
132 (with-output-to-temp-buffer "*Help*"
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
133 (princ
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
134 (format
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
135 "The contents of %s
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
136 will likely very useful for identifying any bugs.
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
137
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
138 You will be given a chance to edit out any sensitive information.
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
139 Passwords are never written into this buffer." buff-name)))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
140 (format "Insert contents of %s? "
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
141 buff-name)))))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
142 (let ((header-1 (concat "Contents of " buff-name ":"))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
143 (header-2 "Please edit sensitive or irrelevant information."))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
144 (insert "\n" header-1 "\n" header-2 "\n")
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
145 (insert-char ?= (max (length header-1) (length header-2)))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
146 (insert "\n\n")
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
147 (insert-buffer-substring buff-name)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
148 (insert "\n")))))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
149
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
150 (defun efs-report-post-hook ()
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
151 ;; Post hook run by report-submit-bug-report.
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
152 (save-excursion
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
153 (mail-position-on-field "subject")
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
154 (let ((subj (read-string "Subject header: ")))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
155 (if (string-equal subj "")
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
156 (subst-char-in-region
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
157 (point)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
158 (progn
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
159 (insert
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
160 (if (or (fboundp 'yow) (load "yow" t t)) (yow) ""))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
161 (point))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
162 ?\n ?\ )
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
163 (insert subj)))))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
164
114
8619ce7e4c50 Import from CVS: tag r20-1b9
cvs
parents: 22
diff changeset
165 ;;;###autoload
22
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
166 (defun efs-report-bug (&optional default-host default-user blurb no-confirm)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
167 "Submit a bug report for efs."
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
168 (interactive)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
169 (let (;; reporter-confirm-p and reporter-package-abbrev appeared once
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
170 ;; as fluid vars in reporter.el. They aren't used any longer,
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
171 ;; but we let-bind them anyway in case the user has an old version
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
172 ;; of reporter.
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
173 (reporter-confirm-p nil)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
174 (reporter-prompt-for-summary-p nil)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
175 (reporter-package-abbrev "efs"))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
176 ;; Look out for old reporter versions.
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
177 (or (boundp 'reporter-version)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
178 (setq reporter-version
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
179 "Your version of reporter is obsolete. Please upgrade."))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
180 (if (or no-confirm
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
181 (y-or-n-p "Do you want to submit a bug report on efs? "))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
182 (let ((efs-report-default-host default-host)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
183 (efs-report-default-user default-user)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
184 (efs-report-blurb blurb)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
185 (vars (nconc (efs-report-get-versions)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
186 (efs-report-get-user-vars)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
187 efs-report-other-vars
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
188 (efs-report-get-host-type-regexps)))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
189 (avoids efs-report-avoid-vars)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
190 path)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
191 (cond
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
192 ((or efs-report-default-host efs-report-default-user))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
193 (efs-process-host
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
194 (setq efs-report-default-host efs-process-host
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
195 efs-report-default-user efs-process-user))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
196 ((setq path (or buffer-file-name
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
197 (and (eq major-mode 'dired-mode)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
198 dired-directory)))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
199 (let ((parsed (efs-ftp-path path)))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
200 (setq efs-report-default-host (car parsed)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
201 efs-report-default-user (nth 1 parsed)))))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
202 (while avoids
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
203 (setq vars (delq (car avoids) vars))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
204 (setq avoids (cdr avoids)))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
205 (reporter-submit-bug-report
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
206 efs-bug-address
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
207 "efs"
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
208 vars
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
209 (function efs-report-pre-hook)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
210 (function efs-report-post-hook)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
211 (aref efs-report-salutations
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
212 (% (+ (% (random) 1000) 1000)
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
213 (length efs-report-salutations))))))))
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
214
8fc7fe29b841 Import from CVS: tag r19-15b94
cvs
parents:
diff changeset
215 ;;; end of efs-report.el