|
|
1.1 ! root 1: .\" This file is automatically generated. Do not edit! ! 2: .po +.75i ! 3: .de $c \" Major Heading printer ! 4: .ce ! 5: .b "\\s12\\n+(ch.\\ \\$1\\s0" \" 12 Point Bold Header ! 6: .(x ! 7: ! 8: \ \ \ \\n(ch.\\ \\ \\$1 ! 9: .)x ! 10: .sp 45p \" 45 point space or about 1/2 inch ! 11: .. ! 12: \".nr xs .15v \" Put index entries closer together ! 13: .(x ! 14: ! 15: Section ! 16: .)x _ ! 17: .de $0 \" Sub-Heading macro called AFTER printing the heading ! 18: .(x ! 19: .sp .3v ! 20: .ti .5i ! 21: \\$1 ! 22: .)x ! 23: .. ! 24: .de $s \" Macro to print footnote separator ! 25: \"\l'2i' \" No line drawn ! 26: .if n \ ! 27: . sp 1.3 \" But extra space to make up for it. ! 28: .. ! 29: .fc ^ ~ \" The characters ^ and ~ CANNOT BE USED ! 30: \" throughout this document except as field ! 31: \" delimiter & pad indicator! ! 32: .he ''-%-'' ! 33: .ll 32P \" 32 Picas or about 5+1/3 inch Line Length ! 34: .if n .ll 72m \" Use 72 ems for nroff ! 35: .nr ss 30p \" 30 point space before section titles ! 36: .nr fm 5v \" Rand likes bigger than normal [3v] bottom margins ! 37: .nr bm 7v \" ditto ! 38: .ds . \\fB.\\fP\\h'-(1m/3)' \" Bold period to stand out. ! 39: .ds << <\\h!-(\\w'<'/2)!< ! 40: .ds >> >\\h!-(\\w'>'/2)!> ! 41: .ds ** \v'-3p'\s+1*\s0\v'+3p' ! 42: .so version.rf ! 43: .tp ! 44: .(l C ! 45: \fIdiscard this page\fR ! 46: .sp 4 ! 47: The Rand \fIMH\fR ! 48: Message Handling ! 49: System: ! 50: Administrator's Guide ! 51: .sp ! 52: UCI Version ! 53: .sp 2 ! 54: \*(td ! 55: \*(MH ! 56: .)l ! 57: .++ C ! 58: .+c INTRODUCTION ! 59: ! 60: .uh "Scope of this document" ! 61: .pp ! 62: This is the Administrator's Guide to \fIMH\fR. ! 63: If you don't maintain an \fIMH\fR system, ! 64: don't read this; ! 65: the information is entirely too technical. ! 66: If you are a maintainer, ! 67: then read this guide until you understand it, ! 68: follow the advice it gives, ! 69: and then forget about the guide. ! 70: .pp ! 71: Before continuing, I'll point out two facts: ! 72: .sp 2 ! 73: .(l C ! 74: \fIThis document will never contain all the information ! 75: you need to maintain MH. ! 76: .sp ! 77: Furthermore, this document will never contain everything ! 78: I know about maintaining MH.\fR ! 79: .)l ! 80: .sp 2 ! 81: \fIMH\fR, ! 82: and mailsystems in general, ! 83: are more complex than most people realize. ! 84: A combination of experience, intuition, and tenacity is required to maintain ! 85: \fIMH\fR properly. ! 86: This document can provide only guidelines for bringing up an \fIMH\fR system ! 87: and maintaining it. ! 88: There is a sufficient amount of customization possible that not all events or ! 89: problems can be forseen. ! 90: ! 91: .uh "Summary" ! 92: .pp ! 93: During \fIMH\fR generation, ! 94: you specify several configuration constants to the \fImhconfig\fR program. ! 95: These directives take into consideration such issues as hardware and ! 96: operating system dependencies in the source code. ! 97: They also factor out some major mailsystem administrative decisions ! 98: that are likely to be made consistantly at sites with more than one host. ! 99: The manual entry \fImh\-gen\fR\0(8) describes all the static configuration ! 100: directives. ! 101: .pp ! 102: However, ! 103: when you install \fIMH\fR you may wish to make some site\-specific ! 104: or host\-specific changes which aren't hardware or even software related. ! 105: Rather, they are administrative decisions. ! 106: That's what this guide is for: it describes all of the dynamically tailorable ! 107: directives. ! 108: .pp ! 109: Usually, after installing \fIMH\fR, you'll want to edit the ! 110: \fB/usr/contrib/mh/lib/mtstailor\fR file. ! 111: This file fine-tunes the way \fIMH\fR interacts with the message transport ! 112: system (MTS). ! 113: Section 2 talks about the MTS interface and MTS tailoring. ! 114: .pp ! 115: After that, if you're running the UCI BBoards facility, ! 116: or the POP facility, ! 117: you'll need to know how to maintain those systems. ! 118: Sections 3 and 4 talk about these. ! 119: .pp ! 120: If for some reason ! 121: you're not running an MTS that can handle both Internet and \fIUUCP\fR traffic, ! 122: you should read\-up on mail filtering in Section 5. ! 123: Although this is considered \*(lqold technology\*(rq now, ! 124: the mechanisms described in Section 5 were really quite useful when ! 125: first introduced way back in 1981. ! 126: .pp ! 127: Finally, you may want to know how to modify the \fIMH\fR source tree. ! 128: Section 6 talks (a little bit) about that. ! 129: .pp ! 130: The last two sections describe a few hidden features in \fIMH\fR, ! 131: and the configuration options that were in effect when this guide was ! 132: generated. ! 133: .pp ! 134: After \fIMH\fR is installed, you should define the address \*(lqBug\-MH\*(rq ! 135: to map to either you or the \fIPostMaster\fR at your site. ! 136: .pp ! 137: In addition, ! 138: if you want to tailor the behavior of \fIMH\fR for new users, ! 139: you can create and edit the file \fB/usr/contrib/mh/lib/mh.profile\fR. ! 140: When the \fIinstall-mh\fR program is run for a user, ! 141: if this file exists, it will copy it into the user's \&.mh\(ruprofile ! 142: file. ! 143: ! 144: .\" macros for the .me/.man files ! 145: .de SC ! 146: .he '\\$1(\\$2)'-%-'\\$1(\\$2)' ! 147: .bp ! 148: .(x ! 149: .ti .8i ! 150: \\$1 ! 151: .)x ! 152: .. ! 153: .de NA ! 154: .b \\s-2NAME\\s0 ! 155: .ti .5i ! 156: .. ! 157: .de SY ! 158: .sp ! 159: .b \\s-2SYNOPSIS\\s0 ! 160: .in 1i ! 161: .ti .5i ! 162: .na ! 163: .. ! 164: .de DE ! 165: .ad ! 166: .sp ! 167: .in 0 ! 168: .b \\s-2DESCRIPTION\\s0 ! 169: .sp ! 170: .fi ! 171: .in .5i ! 172: .. ! 173: .de Hh ! 174: .ad ! 175: .sp ! 176: .in 0 ! 177: .b "\\s-2Helpful Hints\\s0" ! 178: .sp ! 179: .fi ! 180: .in .5i ! 181: .. ! 182: .de Fi ! 183: .(b L ! 184: .ti 0 ! 185: .b \\s-2Files\\s0 ! 186: .ta \w'/usr/contrib/mh/lib/ExtraBigFileName 'u ! 187: .. ! 188: .de Pr ! 189: .)b ! 190: .(b L F ! 191: .ta \w'ExtraBigProfileName 'u ! 192: .ti 0 ! 193: .b "\\s-2Profile Components\\s0" ! 194: .ti .5i ! 195: .. ! 196: .de Ps ! 197: .ti .5i ! 198: .. ! 199: .de Sa ! 200: .)b ! 201: .(b L F ! 202: .ti 0 ! 203: .b "\\s-2See Also\\s0" ! 204: .br ! 205: .. ! 206: .de De ! 207: .)b ! 208: .(b L ! 209: .in .5i ! 210: .ti 0 ! 211: .b \\s-2Defaults\\s0 ! 212: .. ! 213: .de Ds ! 214: .. ! 215: .de Co ! 216: .)b ! 217: .(b L F ! 218: .ti 0 ! 219: .b \\s-2Context\\s0 ! 220: .br ! 221: .. ! 222: .de Hi ! 223: .)b ! 224: .(b L F ! 225: .ti 0 ! 226: .b \\s-2History\\s0 ! 227: .br ! 228: .. ! 229: .de Bu ! 230: .)b ! 231: .(b L F ! 232: .ti 0 ! 233: .b \\s-2Bugs\\s0 ! 234: .br ! 235: .. ! 236: .de En ! 237: .)b ! 238: .in 0 ! 239: .. ! 240: ! 241: .+c "THE MTS INTERFACE" ! 242: .pp ! 243: The file \fB/usr/contrib/mh/lib/mtstailor\fR customizes ! 244: certain host\-specific parameters of \fIMH\fR ! 245: related primarily to interactions with the transport system. ! 246: The parameters in this file override the compiled\-in defaults given during ! 247: \fIMH\fR configuration. ! 248: Rather than recompiling \fIMH\fR on each host to make minor customizations, ! 249: it is easier simply to modify the \fBmtstailor\fR file. ! 250: All hosts at a given site normally use the same \fBmtstailor\fR file, ! 251: though this need not be the case. ! 252: .pp ! 253: It is a good idea to run the \fIconflict\fR\0(8) program each morning ! 254: under \fIcron\fR. ! 255: The following line usually suffices: ! 256: ! 257: .ti +.5i ! 258: 00 05 * * * /usr/uci/lib/mh/conflict -mail PostMaster ! 259: ! 260: .if t \{ ! 261: .ll 6.5i ! 262: .lt 6.5i ! 263: \} ! 264: .fo '[mh.6]'MH'UCI version' ! 265: .po -.50i ! 266: .so mh-tailor.me ! 267: .so mh-mts.me ! 268: .po +.50i ! 269: .he ''-%-'' ! 270: .fo '''' ! 271: .br ! 272: .if t \{ ! 273: .ll 32P ! 274: .lt 32P ! 275: \} ! 276: ! 277: .+c "BBOARDS" ! 278: .pp ! 279: If you enable the UCI BBoards facility during configuration, ! 280: then the initial environment for bboards ! 281: was set\-up during installation. ! 282: A BBoard called \*(lqsystem\*(rq is established, ! 283: which is the BBoard for general discussion. ! 284: .pp ! 285: To add more BBoards, become the \*(lqbboards\*(rq user, ! 286: and edit the \fB/usr/spool/bboards/BBoards\fR file. ! 287: The file \fBsupport/bboards/Example\fR is a copy of the ! 288: \fB/usr/spool/bboards/BBoards\fR file that we use at UCI. ! 289: When you add a BBoard, ! 290: you don't have to create the files associated with it, ! 291: the BBoards delivery system will do that automatically. ! 292: .pp ! 293: Private BBoards may be created. ! 294: To add the fictitious private BBoard \*(lqhacks\*(rq, ! 295: add the appropriate entry to the BBoards file, ! 296: create the empty file \fB/usr/spool/bboards/hacks.mbox\fR (or whatever), ! 297: change the mode of this file to 0640, ! 298: and change the group of the file to be the groupid of the people that you ! 299: want to be able to read it. ! 300: Also be sure to add the \*(lqbboards\*(rq user to this group ! 301: (in \fB/etc/group\fR), ! 302: so the archives can be owned correctly. ! 303: .pp ! 304: By using the special INVIS flag for a BBoard, ! 305: special purpose BBoards may be set\-up which are invisible to the \fIMH\fR ! 306: user. ! 307: For example, ! 308: if a site distributes a BBoard both locally to a number of machines and to a ! 309: number of distant machines. ! 310: It might be useful to have two distribution lists: ! 311: one for all machines on the list, and the other for local machines only. ! 312: This is actually very simple to do. ! 313: For the main list, ! 314: put the standard entry of information in the \fB/usr/spool/bboards/BBoards\fR file, ! 315: with the complete distribution list. ! 316: For the local machines list, ! 317: and add a similar entry to the \fB/usr/spool/bboards/BBoards\fR file. ! 318: All the fields should be the same except three: ! 319: the BBoard name should reflect a local designation (e.g., \*(lql\-hacks\*(rq), ! 320: the distribution list should contain only machines at the local site, ! 321: and the flags field should contain the INVIS flag. ! 322: Since the two entries share the same primary and archive files, ! 323: messages sent to either list are read by local users, ! 324: while only thoses messages sent to the main list are read by all users. ! 325: .pp ! 326: Two automatic facilities for dealing with BBoards exist: ! 327: automatic archiving and automatic aliasing. ! 328: The file \fBsupport/bboards/crontab\fR contains some entries that you ! 329: should add to your \fB/usr/lib/crontab\fR file to run the specified programs ! 330: at times that are convenient for you. ! 331: The \fBbboards.daily\fR file is run once a day and generates an alias file ! 332: for \fIMH\fR. ! 333: By using this file, users of \fIMH\fR can use, for example, ! 334: \*(lqunix\-wizards\*(rq instead of \*(lqunix\-wizards@brl\-vgr\*(rq ! 335: when they want to send a message to the \*(lqunix\-wizards\*(rq ! 336: discussion group. ! 337: This is a major win, since you just have to know the name of the group, ! 338: not the address where it's located. ! 339: .pp ! 340: The \fBbboards.weekly\fR file is run once a week and handles old ! 341: messages (those received more than 12 days ago) in the BBoards area. ! 342: In short, ! 343: those BBoards which are marked for automatic archiving ! 344: will have their old messages placed in the \fB/usr/spool/bboards/archive/\fR area, ! 345: or have their old messages removed. ! 346: Not only does this make BBoards faster to read, ! 347: but it conveniently partitions the new messages from the old messages ! 348: so you can easily put the old messages on tape and then remove them. ! 349: It turns out that this automatic archiving capability is also a major ! 350: win. ! 351: .pp ! 352: At UCI, ! 353: our policy is to save archived messages on tape (every two months or so). ! 354: We use a program called \fIbbtar\fR to implement our particular policy. ! 355: Since some BBoards are private (see above), ! 356: we save the archives on two tapes: ! 357: one containing the world\-readable archives ! 358: (this tape is read-only accessible to all users by calling the operator), ! 359: and the other containing the non\-world\-readable ones ! 360: (this tape is kept locked\-up somewhere). ! 361: .pp ! 362: If POP is enabled with BBoards, ! 363: a third directive, POPBBoards, may be enabled. ! 364: This allows the \fIMH\fR user to read BBoards on a server machine ! 365: instead of the local host (thus saving disk space). ! 366: For completely transparent behavior, ! 367: the administrator may set certain variables in the \fBmtstailor\fR file ! 368: on the client host. ! 369: The variable \*(lqpopbbhost\*(rq indicates the host where BBoards are ! 370: kept ! 371: (it doesn't have to be the POP service host, ! 372: but this host must run both a POP server and the BBoards system). ! 373: The variable \*(lqpopbbuser\*(rq indicates the guest account on this host ! 374: for BBoards. ! 375: This username should not be either the POP user or the BBoards user. ! 376: Usually the anonymous FTP user (ftp) is the best choice. ! 377: Finally, the variable \*(lqpopbblist\*(rq indicates the name of a file which ! 378: contains a list of hosts (one to a line, official host names only) which ! 379: should be allowed to use the POP facility to access BBoards via the guest ! 380: account. ! 381: (If the file is not present, then no check is made.) ! 382: .pp ! 383: The \*(lqpopbbuser\*(rq variable should be set on both the client and service ! 384: host. ! 385: The \*(lqpopbbhost\*(rq variable need be set only on the client host ! 386: (the value, of course, is the name of the service host). ! 387: The \*(lqpopbblist\*(rq variable need be set only on the service host. ! 388: .pp ! 389: Finally, ! 390: on the client host, ! 391: if a POP service host is not explicitly given by the user ! 392: (i.e., \*(lqpopbbhost\*(rq is implicitly used), ! 393: then \fIbbc\fR will explicitly check the local host prior to contacting ! 394: the service host. ! 395: This allows each POP client host to have a few local BBoards ! 396: (e.g., each host could have one called \*(lqsystem\*(rq), ! 397: and then have the POP service host used for all the rest ! 398: (a site\-wide BBoard might be known as \*(lqgeneral\*(rq). ! 399: .if t \{ ! 400: .ll 6.5i ! 401: .lt 6.5i ! 402: \} ! 403: .fo '[mh.6]'MH'UCI version' ! 404: .po -.50i ! 405: .so bboards5.me ! 406: .so bbaka.me ! 407: .so bbexp.me ! 408: .so bboards8.me ! 409: .so bbtar.me ! 410: .po +.50i ! 411: .he ''-%-'' ! 412: .fo '''' ! 413: .br ! 414: .if t \{ ! 415: .ll 32P ! 416: .lt 32P ! 417: \} ! 418: ! 419: .+c "POP" ! 420: .pp ! 421: For POP (Post Office Protocol) client hosts, ! 422: you need to edit the \fB/usr/contrib/mh/lib/mtstailor\fR file to know about two ! 423: hosts: ! 424: the SMTP service host and the POP service host. ! 425: Normally, these are the same. ! 426: Change the \*(lqlocalname\*(rq field of the \fBmtstailor\fR file ! 427: of \fIMH\fR in the file to be the name of the POP service host. ! 428: This makes replies to mail generated on the POP client host possible, ! 429: since \fIMH\fR will consider use the hostname of the POP service host as the ! 430: local hostname for outgoing mail. ! 431: Also set the value of \*(lqpophost\*(rq to this value. ! 432: This tells \fIinc\fR and \fImsgchk\fR to use POP instead of looking for mail ! 433: locally. ! 434: Finally, ! 435: make sure the value of \*(lqservers\*(rq includes the name of the SMTP ! 436: service host. ! 437: The recommended value for \*(lqservers\*(rq is: ! 438: ! 439: .ti +.5i ! 440: servers:\ SMTP\-service\-host localhost \\01localnet ! 441: .pp ! 442: If you want more information on the Post Office Protocol used by \fIMH\fR, ! 443: consult the file \fBsupport/pop/pop.rfc\fR, ! 444: which is the \fIMH\fR revision to RFC918. ! 445: .pp ! 446: For POP service hosts, ! 447: you need to run a daemon, \fIpopd\fR\0(8). ! 448: The daemon should start at multi\-user boot time, ! 449: so adding the lines: ! 450: .sp ! 451: .nf ! 452: .in +.5i ! 453: if [ \-f /etc/popd ]; then ! 454: /etc/popd & echo \-n ' pop' >/dev/console ! 455: fi ! 456: .in \-.5i ! 457: .fi ! 458: to the \fB/etc/rc.local\fR file is sufficient. ! 459: In addition, ! 460: on both the POP client and service hosts, ! 461: you need to define the port that the POP service uses. ! 462: Add the line ! 463: .nf ! 464: .in +.5i ! 465: pop 109/tcp # experimental ! 466: .in \-.5i ! 467: .fi ! 468: to the \fB/etc/services\fR file (if it's not already there). ! 469: .pp ! 470: There are two ways to administer POP: ! 471: In \*(lqnaive\*(rq mode, ! 472: each user-id in the \fIpasswd\fR\0(5) file is considered a POP subscriber. ! 473: No changes are required for the mailsystem on the POP service host. ! 474: However, ! 475: this method requires that each POP subscriber have an entry in the password ! 476: file. ! 477: The POP server will fetch the user's mail from wherever maildrops are kept on ! 478: the POP service host. ! 479: This means that if maildrops are kept in the user's home directory, ! 480: then each POP subscriber must have a home directory. ! 481: ! 482: In \*(lqsmart\*(rq mode ! 483: (enabled via \*(lqDPOP\*(rq being given as a configuration option), ! 484: the list of POP subscribers and the list of ! 485: login users are completely separate name spaces. ! 486: A separate database (simple file similar to the \fIBBoards\fR\0(5) file) ! 487: is used to record information about each POP subscriber. ! 488: Unfortunately, ! 489: the local mailsystem must be changed to reflect this. ! 490: This requires two changes (both of which are simple): ! 491: First, ! 492: the aliasing mechanism is augmented so that POP subscriber addresses ! 493: are diverted to a special delivery mechanism. ! 494: \fIMH\fR comes with a program, \fIpopaka\fR\0(8), ! 495: which generates the additional information to be put in the mailsystem's ! 496: alias file. ! 497: Second, ! 498: a special POP channel (for MMDF-II) or POP mailer (for SendMail) ! 499: performs the actual delivery (\fImh.6\fR supplies both). ! 500: All it really does is just place the mail in the POP spool area. ! 501: .pp ! 502: These two different philosophies are not compatible on the same POP service ! 503: host: one or the other, but not both may be run. ! 504: Clever mailsystem people will note that ! 505: the POP mechanism is really a special case of the more general ! 506: BBoards mechanism. ! 507: .pp ! 508: In addition, there is one user-visible difference, ! 509: which the administrator controls the availability of. ! 510: The difference is whether the POP subscriber must supply a password to the POP ! 511: server: ! 512: The first method uses the standard ARPA technique of sending a username and a ! 513: password. ! 514: The appropriate programs (\fIinc\fR, \fImsgchk\fR, and possibly \fIbbc\fR\0) ! 515: will prompt the user for this information. ! 516: .pp ! 517: The second method ! 518: (which is enabled via \*(lqRPOP\*(rq being given as a configuration option) ! 519: uses the Berkeley UNIX reserved port method for authentication. ! 520: This requires that the two or three mentioned above programs be ! 521: \fIsetuid\fR to root. ! 522: (There are no known holes in any of these programs.) ! 523: .pp ! 524: These two different philosophies are compatible on the same POP service host: ! 525: to selectively disable RPOP for hosts which aren't trusted, ! 526: either modify the \fI\&.rhosts\fR file in the case of POP subscribers being ! 527: UNIX logins, ! 528: or zero the contents of network address field of the \fIpop\fR\0(5) file for ! 529: the desired POP subscribers. ! 530: .if t \{ ! 531: .ll 6.5i ! 532: .lt 6.5i ! 533: \} ! 534: .fo '[mh.6]'MH'UCI version' ! 535: .po -.50i ! 536: .so pop5.me ! 537: .so pop8.me ! 538: .so popaka.me ! 539: .so popd.me ! 540: .so popwrd.me ! 541: .po +.50i ! 542: .he ''-%-'' ! 543: .fo '''' ! 544: .br ! 545: .if t \{ ! 546: .ll 32P ! 547: .lt 32P ! 548: \} ! 549: ! 550: .+c "MAIL FILTERING" ! 551: .pp ! 552: There was a time when users on a UNIX host might have had two maildrops: ! 553: one from \fIMMDF\fR and the other from \fIUUCP\fR. ! 554: This was really a bad problem since it prevented using a single ! 555: user\-interface on all of your mail. ! 556: Furthermore, ! 557: if you wanted to send a message to addresses on different mailsystems, ! 558: you couldn't send just one message. ! 559: To solve all these problems, ! 560: the notion of \fImail filtering\fR was developed that allowed sophisticated ! 561: munging and relaying between the two pseudo\-domains. ! 562: .pp ! 563: \fIMH\fR will perform mail filtering, transparently, if given the MF ! 564: configuration option. ! 565: However, ! 566: with the advent of \fISendMail\fR and further maturation of \fIMMDF\fR, ! 567: \fIMH\fR doesn't really need to do this anymore, ! 568: since these message transport agents handle it. ! 569: .pp ! 570: The mail\-filtering stuff is too complicated. ! 571: It should be simpler, but, protocol translation really \fIis\fR difficult. ! 572: .if t \{ ! 573: .ll 6.5i ! 574: .lt 6.5i ! 575: \} ! 576: .fo '[mh.6]'MH'UCI version' ! 577: .po -.50i ! 578: .so mf.me ! 579: .so rmail.me ! 580: .po +.50i ! 581: .he ''-%-'' ! 582: .fo '''' ! 583: .br ! 584: .if t \{ ! 585: .ll 32P ! 586: .lt 32P ! 587: \} ! 588: ! 589: .+c "MH HACKING" ! 590: .pp ! 591: Finally, here's a little information on modifying the \fIMH\fR sources. ! 592: A word of advice however: ! 593: .sp 2 ! 594: .ce ! 595: .b \s+4DON'T\s0 ! 596: .sp 2 ! 597: .lp ! 598: If you really want new \fIMH\fR capabilities, ! 599: write a shell script instead. ! 600: After all, ! 601: that's what UNIX is all about, isn't it? ! 602: .pp ! 603: Here's the organization of the \fIMH\fR source tree. ! 604: .sp ! 605: .nf ! 606: .in +.5i ! 607: .ta \w'miscellany/ 'u +\w'sendmail/ 'u ! 608: conf/ configurator tree ! 609: config/ compiled configuration constants ! 610: dist/ distributor ! 611: doc/ manual entries ! 612: h/ include files ! 613: miscellany/ various sundries ! 614: mts/ MTS\-specific areas ! 615: mh/ standalone delivery ! 616: mmdf/ MMDF\-I, MMDF\-II ! 617: sendmail/ SendMail, SMTP ! 618: papers/ papers about \fIMH\fR ! 619: sbr/ subroutines ! 620: support/ support programs and files ! 621: bboards/ UCI BBoards facility ! 622: general/ templates ! 623: pop/ POP facility ! 624: tma/ Trusted Mail Agent (not present in all distributions) ! 625: uip/ programs ! 626: zotnet/ MTS\-independent areas ! 627: bboards/ UCI BBoards facility ! 628: mf/ Mail Filtering ! 629: mts/ MTS constants ! 630: tws/ date routines ! 631: .re ! 632: .in -.5i ! 633: .fi ! 634: .if t \{ ! 635: .ll 6.5i ! 636: .lt 6.5i ! 637: \} ! 638: .fo '[mh.6]'MH'UCI version' ! 639: .po -.50i ! 640: .so mh-hack.me ! 641: .po +.50i ! 642: .he ''-%-'' ! 643: .fo '''' ! 644: .br ! 645: .if t \{ ! 646: .ll 32P ! 647: .lt 32P ! 648: \} ! 649: ! 650: .+c "HIDDEN FEATURES" ! 651: .pp ! 652: The capabilities discussed here should not be used on a production basis, ! 653: as they are either experimental or are useful for debugging \fIMH\fR. ! 654: ! 655: .uh "Debug Facilities" ! 656: .pp ! 657: The \fImark\fR command has a `\-debug' switch which essentially prints out ! 658: all the internal \fIMH\fR data structures for the folder you're looking at. ! 659: .pp ! 660: The \fIpost\fR command has a `\-debug' switch which does everything but ! 661: actually post the message for you. ! 662: Instead of posting the draft, it sends it to the standard output. ! 663: Similarly, ! 664: \fIsend\fR has a `\-debug' switch which gets passed to \fIpost\fR. ! 665: .pp ! 666: Some \fIMH\fR commands look at envariables to determine debug\-mode operation ! 667: of certain new facilities. ! 668: The current list of envariables is: ! 669: .sp ! 670: .nf ! 671: .in +.5i ! 672: .ta \w'MHLPOPDEBUG 'u ! 673: ^MHFDEBUG~^OVERHEAD facility ! 674: ^MHLDEBUG~^mhl ! 675: ^MHPDEBUG~^pick ! 676: ^MHPOPDEBUG~^POP transactions ! 677: ^MHVDEBUG~^window management transactions ! 678: ^MHWDEBUG~^alternate\-mailboxes ! 679: .re ! 680: .in -.5i ! 681: .fi ! 682: ! 683: .uh "Send" ! 684: .pp ! 685: The \fIsend\fR command has two switches, `\-unique' and `\-nounique', ! 686: which are useful to certain individuals who, for obscure reasons, ! 687: do not use draft\-folders. ! 688: ! 689: .uh "Posting Mail" ! 690: .pp ! 691: If you're running a version of \fIMH\fR which talks directly to an ! 692: \fISMTP\fR server (or perhaps an advanced \fIMMDF\fR submit process), ! 693: there are lots of interesting switches for your amusement which \fIsend\fR ! 694: and \fIpost\fR understand: ! 695: .nf ! 696: .in +.5i ! 697: .ta \w'-server host 'u ! 698: ^-mail~^Use the \fIMAIL\fR command (default) ! 699: ^-saml~^Use the \fISAML\fR command ! 700: ^-send~^Use the \fISEND\fR command ! 701: ^-soml~^Use the \fISOML\fR command ! 702: ^-snoop~^Watch the \fISMTP\fR transaction ! 703: ^-client host~^Claim to be \*(lqhost\*(rq when posting mail ! 704: ^-server host~^Post mail with \*(lqhost\*(rq ! 705: .re ! 706: .in -.5i ! 707: .fi ! 708: .pp ! 709: The last switch is to be useful when \fIMH\fR resides on small ! 710: workstations (or PC:s) in a network\-\-they can post their outgoing mail with ! 711: a local relay, ! 712: and reduce the load on the local system. ! 713: On POP client hosts, ! 714: the `\-server\ host' switch is defaulted appropriately using the SMTP ! 715: search\-list mechanism. ! 716: The \fIwhom\fR command understands the last three switches. ! 717: ! 718: .+c "CONFIGURATION OPTIONS" ! 719: .pp ! 720: This manual was generated with the following configuration options in ! 721: effect: ! 722: .sp 2 ! 723: .hl ! 724: .nf ! 725: .in +1.25i ! 726: .ta \w'BBoards Home Directory 'u ! 727: ^Generation Date~^\*(td ! 728: ^Primary Directory~^/usr/contrib/mh/bin/ ! 729: ^Secondary Directory~^/usr/contrib/mh/lib/ ! 730: ^Maildrop Location~^/var/mail/$USER ! 731: ^Transport System~^SendMail \*(SM ! 732: .re ! 733: .in -1.5i ! 734: .fi ! 735: .hl ! 736: .\" table of contents ! 737: .he '''' ! 738: .fo '''' ! 739: .bp ! 740: .ce ! 741: .b \\s12CONTENTS\\s0 ! 742: .sp 3 ! 743: .xp y ! 744: .xp x ! 745: .bp ! 746: .\" And now the COVER sheet ! 747: .po +.325i ! 748: .ll 32P ! 749: .nf ! 750: ! 751: .sp 1.5in ! 752: .ps 24 ! 753: .vs 32 ! 754: .ft B ! 755: .ce 4 ! 756: THE RAND MH ! 757: MESSAGE HANDLING ! 758: SYSTEM: ! 759: ADMINISTRATOR'S GUIDE ! 760: .ft R ! 761: .sp .8i ! 762: .ps 20 ! 763: .vs 24 ! 764: .ce ! 765: UCI Version ! 766: .sp 0.7i ! 767: .ce 2 ! 768: Marshall T. Rose ! 769: .sp 0.5i ! 770: .ft I ! 771: .ce 3 ! 772: First Edition: ! 773: MH Classic ! 774: \s-2(Not to be confused with a well\-known soft drink)\s+2 ! 775: .ft R ! 776: .vs ! 777: .sp 1i ! 778: .ps 18 ! 779: .vs 22 ! 780: .ce 2 ! 781: \*(td ! 782: \*(MH
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.