]> diplodocus.org Git - nmh/blob - docs/historical/mh-jun-1982/Wishlist
Added several historical source archives from the early days of MH.
[nmh] / docs / historical / mh-jun-1982 / Wishlist
1 11/14/79
2 Allow complex boolean expressions in "pick"
3
4 11/14/79
5 Add profile switches that will "answer" prompts,
6 sa "Draft exists, delete?"
7
8 11/14/79
9 Have the stand-alone "anno" prompt for component and text.
10
11 3/19/80
12 More elaborate "<command> -help". (But see objections in
13 /r/phyl/Mail/MH/2)
14
15 10/6/80
16 MH should be able to pass the terminal type to the editor.
17
18 10/23/80
19 Mail sent to mailing list aliases should also be sent to "news"
20 (Complex problem--but see BSB's msg /r/phyl/Mail/MH/134)
21
22 11/21/80
23 Allow a "delete-after: <date>" component to MH; have a
24 daemon go thru everyone's MH folders and delete stale
25 messages. (see /r/phyl/Mail/MH/45...)
26
27 11/21/81
28 Add a -noformat option to mhl--to get rid of " at RAND-UNIX"
29 when the message is listed.
30
31 1/13/81
32 Have a file "/etc/Newsgroups" with lists of people
33 who should see certain news, so that systems personnel
34 can decide who should see certain topics and not have to
35 alter .mh_profiles.
36
37 1/15/81
38 "ali -user" to give the reverse info from "ali aliasname";
39 viz, given a user, what aliases will send mail to him.
40
41 1/20/81
42 "repl -form formfile"
43
44 or
45
46 There could .mh_profile entries that specify the
47 defaults for the various components for messages,
48 and all programs like comp & forw could look to
49 those instead of looking to a 'compform' or the like.
50
51 Examples:
52 From-Component: dave-yost
53 Fcc-Component: inbox
54
55 1/26/81
56 Link messages instead of copying them
57
58 1/29/81
59 Have "news -folder" change your current folder to the 1st unread
60 news folder, thus allowing you to use all the usual MH commands on it.
61
62 2/3/81
63 "news -inc"
64
65 2/9/81
66 "All plain files that now reside in 'Mail' should live in a
67 subdirectory like 'Mail/M'. Now I can unprotect the 'Mail'
68 directory, so that I can selectively grant snoop permission on any
69 folder without fear of making my other miscellaneous files like
70 'draft' vulnerable. All I have to do is protect 'Mail/M'." --Dave
71
72 2/16/81 FROM BERKELEY
73
74
75 Date: 3 Feb 1981 15:57:05-PST
76 From: CSVAX.kas at Berkeley
77 Message-ID: <601.350091987@CSVAX.Berkeley>
78 To: Day@Rand-Unix, Urban@Rand-Unix
79 Subject: Re: Updated MH to run in 4bsd environment
80 In-reply-to: Your message of 27 Jan 1981 2011-PST (Tuesday).
81 Fcc: mh
82
83 I have finished making the new version of MH run in our 4bsd
84 environment. That is, our version of MH runs compatibly with
85 the standard v7 mail program, the Berkeley Mail, UNIX sndmsg, msg,
86 and others. Some of the things I encountered may be of use to
87 you in making your distribution of MH easier to install in 4bsd systems.
88
89 So here they are:
90
91 ali.c Changed to use a #define for the MailAlias file.
92 Should really have created a new strings file for it.
93
94 annotate.c Now uses the character defined by CBACKUP instead of ,
95 for the backup convention. We have a line of the form:
96
97 40 4 * * * find / -name '#*' -atime +3 -exec rm -f {} \;
98
99 in /usr/lib/crontab and it seemed easier to make MH
100 obey that than to convince users to use ,
101
102 conflict.c Used to reference ``struct dir'' which in our system at
103 least is defined in /usr/include/sys/dir.h as
104 ``struct direct''
105
106 dist.c Changed to use CBACKUP, instead of comma
107
108 folder.c Removed fflush(stdout) after each line of output. This makes
109 the program appear to run faster.
110
111 forw.c Changed to use CBACKUP, not comma
112
113 inc.c Changed to call a program unixtomh (described later) which
114 reads mail in standard unix format and converts it to MH
115 format. Now has -file filename flag to read messages
116 from a file (many users already have mbox files full of
117 unix format mail. they can do inc -file mbox +mbox to
118 convert this to an MH folder). Also has -keep to
119 prefer close(creat(mailboxname, 0600)) to unlink to
120 help users preserve a non-publically readable mode on
121 their mail drop.
122
123 mail.c Renamed mhmail.c to avoid confusion
124
125 mhl.c Changed to use termlib to clear terminal screen correctly.
126 Fixed its argument processing so it won't try to open flag
127 arguments as files.
128
129 news.c s/struct dir/struct direct/
130
131 rmf.c Uses CBACKUP instead of comma
132
133 rmm.c Uses CBACKUP instead of comma
134
135 scan.c Has -reverse flag to look at headers newest first. A user
136 with a HUGE inbox demanded this.
137
138 send.c Uses CBACKUP instead of comma
139
140 unixtomh.c Created program to read unix format mail and put it in MH
141 format. This is invoked by inc.
142
143 mh.h Although this is the wrong place to do it, added CBACKUP
144 #define to give backup character. Should really be in
145 strings.
146
147 mailsys.h Changed path names to end with / to satisfy the assumption
148 in inc.c that they look that way.
149
150 deliver.c Now makes temporary file in /tmp, not /usr/tmp/mh,
151 doesn't check validity of network addressees,
152 Only outputs From: and Date: in fcc copy of message,
153 invokes /etc/delivermail on all recipients to actually
154 deliver the mail, removed putdate() routine in favor
155 of shared (with unixtomh) version in subs, and now
156 uses #define MAILALIASES.
157
158 Also, a couple of minor notes: we do not have a strings.h file in
159 /usr/include, which I assume gave the return types of routines like
160 rindex() and friends. A number of files include system files as, eg:
161
162 #include <types.h>
163 #include <stat.h>
164
165 this requires that you give the preprocessor flag -I/usr/include/sys
166 for it to be found. This creates problems for the make depend stuff
167 since include files are not necessarily in /usr/include. I got around
168 this by simply editing out the header file dependencies from the
169 Makefiles.
170
171 Finally, to get around the conflict between /usr/bin/file and the MH file
172 command, I made a program fakefile which examines its arguments. If any
173 begin with +, it invokes MH file, else /usr/bin/file. This seems to
174 work fine.
175
176 I have everything sccs'd so I can send you sccs source, diffs, new source
177 or whatever if you like.
178
179 Kurt Shoens
180
181
182 2/17/81
183 Sort folders by time-received.
184
185 2/17/81
186 Whenever a news topic is created, a suitable message to news.everyone
187 should announce that fact and try to sell users on the new topic.
188
189 2/18/81
190 "... I've been hacking up an MH to
191 put the attributes in the file names, format n-aaa, where n is
192 the message number, and the a's are the attribute characters,
193 initially, only 's' for 'seen' being implemented. This is VERY
194 efficient, and only runs into the original problems Norm pointed
195 out...the name is difficult to guess from an environment which
196 does not allow wild-cards, such as inside the editor.
197
198 "Personally, I think the advantage gained is well worth the
199 messiness. I would like to be able to say "scan unseen",
200 or "file seen +handled", etc. This can't be done in ANY
201 other fashion under UNIX without losing lots of other important
202 features, such as preservation on copy."
203
204 /Bruce
205
206 2/18/81
207 Allow personal alias files.
208
209 Except---
210 "No personal aliases because there ain't no way to reply!
211 The 733 syntax is totally botched on "file inclusion".
212 There should be a meta-syntax for using a file as an
213 address, which deliver programs ALL AROUND THE NET could
214 use for replies."
215 /B
216
217 But---
218 "You could have personal aliases if they were expanded into the
219 message."
220 --dave
221
222 2/19/81
223 "Screw -time and -numdate. How about a -display <string> option,
224 where <string> is a printf-like format that dictates exactly the
225 way you want the scan to look. Something like:
226
227 scan -display '%3(num) %2(mo)/%2(day)/%2(yr) \
228 %2(hour):%2(min)-(timezone) \
229 %10(from) %40(subject)%(incl)(body)'
230
231 "It has been suggested that the 'ls' command should have an option
232 like this, too."
233
234 --dave
235
236 2/19/81
237 Scan and inc should display control characters in readable form.
238 (Except, for example, ^G, ^I)
239
240 2/23/81
241 encrypted mail
242
243 2/23/81
244 Integrate MH file naming conventions with Unix naming conventions.
245 So, for example, when in the editor, you could reference
246 "last" or "+junk/14"
247
248 2/24/81
249 "Replied-to" Subject fields should somehow keep track of
250 the "generation" of the replied-to message.
251
252 2/26/81 Dave Clemans, SDC
253
254 Because the ISC system is a UNIX V6 variant, and MH is set up for
255 V7, there are a few differences:
256
257 Because of name conflicts between MH programs and ISC programs,
258 mail
259 news
260 file
261 are in the directory /misc/bin. The version of file in /misc/bin
262 is a preprocessor; if its argument list has an argument with a '+'
263 as its first character, it calls /usr/bin/file.msg, otherwise it
264 calls /bin/file.
265
266 MH wants to look at a few environment variables, which don't exist
267 on UNIX V6. They are simulated using the global shell variables of
268 the SDC-extended "Harvard" shell. For people who use the "Harvard"
269 shell (hsh), this procedure is handled automatically. For people
270 who use the Berkeley C shell (csh) or people who use the ISC shell,
271 a special command has to be run at least once, and possible every
272 time that you log in, depending on how often you change things.
273 What follows is a short description of that command:
274
275 /misc/bin/mhsetup <login name> <home directory> <search path>
276
277 Environment Variable
278 <login name> is your actual login name USER
279 <home directory> is your login directory HOME
280 <search path> is the PWB/UNIX style path PATH
281
282 There also has been a few extensions made to MH at SDC. A short
283 list of these are:
284
285 a. Registered mail: send has a -register and a -noregister switch.
286 A receipt is sent back to the sending user when the receiving
287 user types "inc" and a registered message is received. (Done by
288 adding a "Registered" component to the message)
289
290 b. Fcc: Multiple folder names are accepted in this component and
291 handled correctly.
292
293 c. Personal mailing lists: In addition to the mailing lists
294 accepted by the /etc/MailAliases file, users can maintain
295 private mailing lists. These are referenced by addresses of the
296 form "<path", where path is the name of the mailing list. It is
297 looked for first in the current directory, and then in the users
298 Mail directory. It should have the same format as a list of
299 addresses typed in by hand.
300
301 d. Automatic forwarding: If a user has accounts on multiple
302 machines, but only uses one of them on a regular basis, it is
303 possible to have all messages from those other machines
304 automatically forwarded to the machine that is used regularly.
305 The same database hook used by this is also used to provide full
306 names in addresses:
307 (i.e., Full Name <user at host>)
308 (Done by having a file with one line for each user, of the format:
309 <user> <flag> <address> :<Full Name>
310 <user> is the local user name
311 <flag> says whether or not to forward
312 <address> is the forwarding address
313 <Full Name> is the users full name)
314
315 e. Msg/Sndmsg: There are msg/sndmsg programs in /misc/bin that
316 look very similar to normal ARPAnet msg/sndmsg programs, but
317 which interface to MH.
318
319 f. Repl: repl has "-fccme" and "-nofccme" switches for making file
320 copies of replies to messages.
321
322 g. Next/Prev: next and prev have "-pr" and "-nopr" switches. They
323 have the same effect as the "-pr" and "-nopr" switches in show.
324
325 The "onstruct is recognized and handled correctly. The only
326 transport mechanism available currently is the Berkeley network (from
327 2BSD).
328 (Hooks do exist to add others, specifically UUCP). Currently defined
329 host names are:
330 sdc-70 the R&D 11/70 system
331 sdc-net the 11/45 network support machine
332
333 Two other host names exist for sending mail into the ISC mail system.
334 These are "sdc-70x" and "local".
335
336 For any problems, or for more information, send a message to dgc
337 dgc
338
339 Dave Clemans
340 -----
341
342 3/2/81
343 repl -use
344
345 3/17/81
346 Delayed mail delivery: add a "Deliver-date:" header containing
347 the delivery date...
348
349 3/18/81
350 "send" in the background
351
352 4/5/81
353 Mail to terminals
354
355 "... the sender would decide which of the four possible
356 options to select:
357 1. mail only
358 2. send to terminal only
359 3. send to terminal and also mail
360 4. send to terminal if possible, otherwise mail
361
362 "Furthermore, messages added to your mailbox would indicate whether
363 they were sent as mail or tty messages, so you could discard
364 messages which were intended to be displayed on the the terminal."
365
366 --greep
367
368 4/17/81
369 Automatic mail agents, per Dave Farber
370
371 4/23/81
372 <command> -nochangedir
373
374 5/7/81
375 bcc recipients should SEE the bcc header in their copy of
376 the message
377
378
379 5/14/81
380 Repl should have an option that includes
381 the replied-to message in the body of the
382 new message, indented one tabstop, so you
383 can intersperse answers with original text.
384 (But see objections in mail subsequent to the
385 suggestion)
386
387 5/26/81
388 scan -name; folder -name
389 to return full path names of message files
390
391 6/1/81
392 You should be able to anti-alias a login id,
393 making the user unknown for mail delivery purposes.
394 username:<NUL>
395
396 7/30/81
397 Scansub should insert ">>" if msg body all fits on the scan line.
398
399 7/30/81
400 Speed MH up by having 2 interfaces: a monolithic environment
401 for speed in commonly used commands, and the current MH
402 environment for generality.
403
404 8/4/81
405 Move all the scattered mail alias files to /usr/MailLists.
406 Also move /etc/MailAliases and /etc/mh to /usr.
407
408 8/17/81
409 add a -noreorder switch to request that MH process the msg
410 list in the GIVEN order, not in sorted order.
411
412 8/20/81
413 There should be a common LOGFILE to be written by srvrftp,
414 rmail, and deliver.
415
416 8/20/81
417 An environment variable should be set so that MH can choose
418 an editor based on your terminal type.
419
420
421
422
423 MAIL ROUTING
424
425 Modularize the delivery process so that new networks can
426 be easily incorporated (e.g., SU-DSN is on the arpanet as well as
427 the ethernet)
428
429 Host table lookup: "joe at destination"
430
431 Etc...
432
433 9/12/81
434 From: wales at UCLA-Security (Rich Wales)
435 Subject: mail security and mailing to files/pipes
436
437 9/16/81
438 From: greep at SU-DSN
439
440 How about an option in comp (along with "list", "edit", "quit", and
441 "send") to get a new shell? Sometimes I'm in the middle of composing
442 a message and realize there's some program I want to run.
443
444 11/3/81
445 From: Dave-Yost at RAND-UNIX
446 Subject: 'message does not exist'
447
448 If I do something with cur and the message pointed to doesn't
449 exist, I think mh should automatically look for the next message.
450 Or at least it should be something I can opt for with an entry in
451 .mh_profile.
452
453 This I don't need:
454 % show # look at the current message
455 % rmm # decide to junk it
456 % ... # do some other work
457 % show # show current message if not deleted, else next
458 Message 18 doesn't exist.
459
460 --dave
461
462 11/4/81
463 From: Dave-Yost at RAND-UNIX
464 Subject: mh vs mail or msg or ms or Berkmail or ...
465
466 I'll tell ya, I'm a fan of mh and everything, but
467 mh has GOT to be optionally available as a
468 monolithic program within which you give mh
469 commands.
470
471 (See /r/phyl/Mail/MH for discussion)
472
473 11/24/81
474 SUBJECT: An mh argument to specify the profile file
475 From: norm at RAND-UNIX
476
477 What the world needs is for every mh command to have an optional
478 flag, say "-profile", which introduces an alternative file to be
479 used, for all purposes, instead of .mh_profile.
480
481 This capability has a number of obvious and less obvious
482 consequences that would make mh a much more powerful system and
483 seems to have little adverse impact when not used.
484
485
486 1/24/82
487 Subject: mail aliases and automatic forwarding
488
489 MH should provide facilities for a user to
490 forward/unforward his mail somewhere easily.
491 This does NOT mean telling him that all he has
492 to do is write a shell procedure and install it
493 in his .mh_receive file. The MH command I am
494 proposing would do that for you, and do the
495 appropriate locking against race conditions.
496 You need to be able to divert your incoming mail,
497 and to set up other aliases to your login name--
498 in this case, the command should send a message
499 to a system administrator requresting the alias.
500
501 Bell mail allows a user to write, for example,
502 Forward to harpo!ber
503 in the beginning of your mail spool file to
504 forward mail. (Brian also points out that that is
505 also the ONLY aliasing that they provide.)
506 I don't think this is such a good idea, since
507 it requires knowledge of where the mail spool file is,
508 and is susceptible to a race condition if incoming mail
509 comes in while you are messing with the spool