The Elm Alias System Users Guide _W_h_a_t _a_l_i_a_s_e_s _a_r_e _a_n_d _h_o_w _t_o _u_s_e _t_h_e_m _i_n _t_h_e Elm _m_a_i_l _s_y_s_t_e_m The Elm Mail System (Version 2.4) Syd Weinstein, Elm Coordinator Datacomp Systems, Inc. 3837 Byron Road Huntingdon Valley, PA 19006-2320 email: elm@DSI.COM or dsinc!elm 8c9 Copyright 1986,1987 by Dave Taylor 8c9 Copyright 1988-1992 by The USENET Community Trust 9 The Elm Alias System Users Guide 9 (The Elm Mail System, Version 2.4) October 1, 1992 Syd Weinstein Datacomp Systems, Inc. 3837 Byron Road Huntingdon Valley, PA 19006-2320 email: elm@DSI.COM or dsinc!elm Derived from "The Elm Mail System, Version 2.0" by Dave Taylor Intuitive Systems Mountain View, California email: taylor@intuitive.com or limbo!taylor This document is intended as a supplement to the _E_l_m _U_s_e_r_s _G_u_i_d_e and is only of interest to those users desiring more knowledge about how aliases work and how to create strange and exciting aliases for their systems (okay, so maybe it's not _t_h_a_t exciting!) This document is broken up into the following sections; user aliases, group aliases, system aliases, editing and installing new aliases, general warnings and other chit-chat. 1. User Aliases The simplest type of aliases in the Elm system are individual user aliases. These are made up of three parts; _a_l_i_a_s_n_a_m_e _l_i_s_t = _u_s_e_r_n_a_m_e = _a_d_d_r_e_s_s __________ 1. aliasnames can be any combination of letters, numbers, dashes (`-'), periods (`.'), or underscores (`_'). Letter case is not significant. That is `FRED' Alias Users Guide Version 2.4 9 Alias Users Guide Version 2.4 9 Where the _a_l_i_a_s_n_a_m_e _l_i_s_t is either a single aliasname819 or a list of aliasnames separated by commas. Aliasnames are case insensi- tive and will be converted to all lower case by the alias system. _U_s_e_r_n_a_m_e is used to indicate the full `real name' of the user. For example, if you had an alias for `taylor' to get to me, the _u_s_e_r_n_a_m_e field would contain `Dave Taylor' or perhaps `Dave Taylor at HP' or some other permutation. The name can op- tionally be entered in the format of `Taylor; Dave'. When this is done, the alias system can sort aliases on a last name basis for presentation on the alias menu within elm. Elm uses this in- formation to add the users full name to the addresses of outbound mail to get more readable addresses. No matter which format a name is entered, elm will display it and put it in mail headers the way you would expect (i.e., `Dave Taylor'). _A_d_d_r_e_s_s is either the users full electronic mail address or, if your system uses a smart mailer, the minimum address needed to specify the destination. For example, say smart mailer contained information on how to get to machine `hp-sdd' and I wanted to have an address for my friend Ken there - I could have his ad- dress specified as simply `ken@hp-sdd' (or alternatively `hp- sdd!ken' since the two are functionally equivalent). Let's get on to some examples, shall we? Consider this excerpt from my own ._e_l_m/_a_l_i_a_s_e_s._t_e_x_t file; # Mail aliases for Dave Taylor # Friends from UCSD addie = Addie Silva = addie@hp-sdd.SDD.HP.COM frank,minjarez = Frank Minjarez = Minjarez.Verify@dockmaster.ddn.mil pizzini = Ken Pizzini = hplabs!ucbvax!ucdavis!pai!ken george = Burdell; George P., Famous GT Guy= gburdell@matd.gatech.edu Note that the alias for Frank Minjarez has two _a_l_i_a_s_n_a_m_e_s associ- ated with it, frank and minjarez. Also notice that the first and second aliases use the Internet style naming convention of _u_s_e_r@_m_a_c_h_i_n_e whereas the third uses the UUCP notation of _m_a_c_h_i_n_e!_u_s_e_r. The fourth alias illustrates two features for the _u_s_e_r_n_a_m_e field. An individual's name can be entered in the form of `lastname; firstname' which allows the alias system to be able to sort alias names on a last name basis. Additionally, any text after the comma is treated as a comment. It is stored in the alias file and displayed on the alias menu but will not appear in the comment field (between the ()'s) in the header of a message. This allows you to enter useful notes about an individual that you would not otherwise want to include on the To: line of a mail message. __________ and `Fred' are identical. October 1, 1992 Page 2 9 Alias Users Guide Version 2.4 9 For the most part, the notational format is transparent within the alias file - the only time it _d_o_e_s make a difference is if you have to specify more than the machine that the user is receiving mail on (as in the third example above). Suffice to say that if you must specify any sort of uucp route that you should use the uucp notation as much as possible to ensure that the system expands the correct machine name. Similarly, if you're bouncing mail through different Internet sites (to get to a foreign system, as in the example below) you should use the notation that system expects: listserv%byuadmin.BITNET@rugters.edu 2. Group Aliases After the confusion of user aliases, group aliases are even more fun! For the most part the notation is very similar; _a_l_i_a_s_n_a_m_e _l_i_s_t = _g_r_o_u_p_n_a_m_e = _l_i_s_t _o_f _p_e_o_- _p_l_e Where _a_l_i_a_s_n_a_m_e _l_i_s_t and _g_r_o_u_p_n_a_m_e are exactly equivalent to the corresponding fields in user aliases. The interesting part is the _l_i_s_t _o_f _p_e_o_p_l_e field; this field is actually in the same notation as the aliasname list, so it's really quite easy to create. It's best to illustrate by example: friends, mypals = The Gang of Six = joe, larry, mary, joanna, nancy, michael (Notice that you can continue onto as many lines as you'd like so long as each additional line start with either a SPACE or a TAB character) At times it may be desirable to send a message to everyone in the group except one or two people. This can be accomplished by adding the individual(s) actual id(s) to the To: list, preced- ed by a minus sign "-". For example, if you were having a surprise party for nancy from the above group and you wanted to discuss the details with the others, you could mail the message to: friends -nancy Unlike in prior versions of elm, group aliases need not be a _p_r_e_v_i_o_u_s_l_y _d_e_f_i_n_e_d _a_l_i_a_s or a valid mail address on the current machine. Any valid delivery address, local user, or prior local or group alias may now be part of a group alias. October 1, 1992 Page 3 9 Alias Users Guide Version 2.4 9 3. System Aliases System aliases are functionally equivalent to the individual Elm alias lists each Elm user has (both user aliases and group aliases) but are _r_e_a_d _o_n_l_y for everyone but the Elm administra- tor. The format of the file is identical to the users file, and the only difference is that this file is expected to be located in the directory that contains the _s_y_s_t_e_m__h_a_s_h__f_i_l_e and _s_y_s_t_e_m__d_a_t_a__f_i_l_e files (see the _E_l_m _C_o_n_f_i_g_u_r_a_t_i_o_n _G_u_i_d_e for more details on these variables). Simply create the system alias file in the specified direc- tory as you would a normal alias file, and install it the same way (see the following section for more details on that). Voila!! 4. Editing and Installing New Aliases To install new aliases, you need merely to create, or modify, the file ._e_l_m/_a_l_i_a_s_e_s._t_e_x_t until you're satisfied with it and it meets the requirements discussed above. You can then try to in- stall it with the command; $ newalias which will either report back the number of aliases installed or any errors encountered trying to parse and store the given alias list. Note that blank lines are no problem and that comments are not only allowed but actually encouraged, and must have `#' as the first character of each comment line. 5. Other Stuff not Covered Yet Probably the biggest question you have in your mind right now is ``But how the heck does this relate to my existing _B_e_r_k_e_l_e_y _M_a_i_l aliases and the lower-level _s_e_n_d_m_a_i_l alias system??'' Well, rest assured that if you _r_e_a_l_l_y want to have your aliases down in the transport you can. No problem. All you'll need to do is to turn off the address validation routine in Elm. And for those ex-_B_e_r_k_e_l_e_y _M_a_i_l fans, you can translate your aliases into the format that Elm wants by running them through the _a_w_k script listed in the appendix. Finally, if you have any problems or questions, try looking in the _n_e_w_a_l_i_a_s manual entry. October 1, 1992 Page 4 9 Alias Users Guide Version 2.4 9 Appendix One An AWK Script for Translating Aliases from a _B_e_r_k_e_l_e_y _M_a_i_l ``.mailrc'' File to an _E_l_m ``.elm/aliases.text'' File BEGIN { print "# Elm .elm/aliases.text file, from a .mailrc file..." print "" } next_line == 1 { next_line = 0; group = "" for (i = 1; i <= NF; i++) { if (i == NF && $i == "\\") sep = "" else sep = ", " if ($i == "\\") { group = sprintf("%s,", group) next_line = 1; } else if (length(group) > 0) group = sprintf("%s%s%s", group, sep, $i); else group = $i; } print "\t" group } $1 ~ /[Aa]lias | [Gg]roup/ { if ( NF == 3) print $2 " = user alias = " $3; else { group = "" for (i = 3; i <= NF; i++) { if (i == NF && $i == "\\") sep = "" else sep = ", " if ($i == "\\") { group = sprintf("%s,", group) next_line = 1; } else if (length(group) > 0) group = sprintf("%s%s%s", group, sep, $i); else group = $i; } print $2 " = group alias = " group; } } Note: this script is contained in the release under the name ``mailrc.awk'' in the utilities directory ``utils''. October 1, 1992 Page 5