home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #30 / NN_1992_30.iso / spool / comp / mail / elm / 3727 < prev    next >
Encoding:
Internet Message Format  |  1992-12-13  |  84.6 KB

  1. Xref: sparky comp.mail.elm:3727 comp.sources.bugs:297
  2. Path: sparky!uunet!spool.mu.edu!dsinc!dsinc!not-for-mail
  3. From: syd@dsinc.DSI.COM (Syd Weinstein)
  4. Newsgroups: comp.mail.elm,comp.sources.bugs
  5. Subject: elm 2.4 Patch #14
  6. Followup-To: poster
  7. Date: 14 Dec 1992 20:48:25 -0500
  8. Organization: Datacomp Systems, Inc., Huntingdon Valley, PA 19006
  9. Lines: 2810
  10. Sender: syd@dsi.com
  11. Message-ID: <1gjdh9INNoi7@dsinc.dsi.com>
  12. NNTP-Posting-Host: dsinc.dsi.com
  13. Summary: This is an official patch for elm 2.4 system.  Please apply it.
  14. Priority: LOW
  15.  
  16.  
  17. part 1 of a 4 part patch set.
  18.  
  19.  
  20. Attempt to fix where Elm was issuing the final error message on the
  21. cursor screen instead of the regular screen on terminals where the
  22. ti/te code swaps the screen.
  23. From: Syd
  24.  
  25. Internal fix to use correct errno on some error messages.
  26. From: Syd
  27.  
  28. Add decode option to copy_message
  29. From: bjoerns@stud.cs.uit.no (Bjoern Stabell)
  30.  
  31. Fix Configure for ls that return 0 status even if file
  32. is not found, re packing man pages.
  33. From: aj@redwood.cray.com (Chris Jackman)
  34.  
  35. Fix Configure not getting mailgrp correct on symlinks.
  36. From: aj@redwood.cray.com (Chris Jackman)
  37.  
  38. Add missing -n flag to doc makefile.
  39. From: gwh@dogmatix.inmos.co.uk
  40.  
  41. Always init fcntlerr and flockerr in src/lock.c to avoid compiler
  42. warnings.
  43. From: Syd via prompt from wdh@grouper.mkt.csd.harris.com (W. David Higgins)
  44.  
  45. Traditional C used 'unsigned preserving' rules when an integral data
  46. value is widened to integer and ANSI C changed the rules to 'value
  47. preserving'. This is one of the few things that the ANSI X3J11 comitte
  48. did that might break existing programs.  Casting to (int)
  49. From: Bo.Asbjorn.Muldbak <bam@jutland.ColumbiaSC.NCR.COM>
  50.  
  51. When ELM is reporting "appending to <foldername>" I never get to see
  52. but a flash of light, before the message line has been replaced by a
  53. dummy "Messages saved" string.  And if you happen to have mistyped the
  54. foldername or the leading '=', you never see the foldername.
  55.  
  56. This fix will change file.c to show either
  57.  
  58.     Message <what> to <foldername>
  59.  
  60. or
  61.     <#> messages <what> to <foldername>
  62. From: Bo.Asbjorn.Muldbak <bam@jutland.ColumbiaSC.NCR.COM>
  63.  
  64. This implements the use of SIGUSR1 and SIGUSR2 as discussed on the
  65. mailing list recently, and adds them to the documentation.
  66. From: scs@lokkur.dexter.mi.us (Steve Simmons)
  67.  
  68. Attempt to patch posix_signal for SunOS problem.
  69. From: A lot of the Elm group
  70.  
  71. Change cancelled mail message to indicate full path name as
  72. AFS users don't have home and elm's home the same.
  73. From: Syd
  74.  
  75. Fix doc/Makefile.SH to have an else clause on all if's so that
  76. if's that return an error code on a not taken if and a null else
  77. clause don't exit the makefile
  78. From: Syd via requests from many
  79.  
  80. General changes for apollo portability
  81. From: gordonb@mcil.comm.mot.com (Gordon Berkley)
  82.  
  83. Fix typos in edit.c
  84. From: Bo.Asbjorn.Muldbak <bam@jutland.ColumbiaSC.NCR.COM>
  85.  
  86. If sigset() and sigrelse() are available, release signal before
  87. using longjmp() to leave signal handler.
  88. From: chip@tct.com (Chip Salzenberg)
  89.  
  90. Anytime elm wants to re-run newalias, selected is set to 0.
  91. (removing any limit in effect)
  92. From: "Robert L. Howard" <robert.howard@matd.gatech.edu>
  93.  
  94. Allow for use from restricted shell by putting SHELL=/bin/sh in the
  95. environment of spawned mail transport program.
  96. From: chip@tct.com (Chip Salzenberg)
  97.  
  98. fix Obvious typos.
  99. From: dwolfe@pffft.sps.mot.com (Dave Wolfe)
  100.  
  101. List_folder knew only about '=' but nothing about the rest
  102. of [+=%] as one would have expected.
  103. From: Jukka Antero Ukkonen <ukkonen@venus.csc.fi>
  104.  
  105. Fix where the user creates a first new alias, then deletes it, the
  106. alias stays on screen, but the file really will be empty if it was the
  107. last alias, so the retry to delete gives 'cannot open ...file' messages
  108. From: "Robert L. Howard" <robert.howard@matd.gatech.edu>
  109.  
  110. Make Elm complain about spaces that are not after commas in
  111. alias and address lists
  112. From: "Robert L. Howard" <robert.howard@matd.gatech.edu>
  113.  
  114. Make verb and pronoun agree.
  115. From: dwolfe@pffft.sps.mot.com (Dave Wolfe)
  116.  
  117. in do_get_alias().  abuf[] was under dimensioned.
  118. From: "Robert L. Howard" <robert.howard@matd.gatech.edu>
  119.  
  120. Remove the old packed manual page before trying to pack the new one.
  121. From: Tom Moore <tmoore@fievel.DaytonOH.NCR.COM>
  122.  
  123. Fix double inclusion of sys/types.h
  124. From: Tom Moore <tmoore@wnas.DaytonOH.NCR.COM>
  125.  
  126. Fix building editor wrap problem
  127. From: Syd via prompting from vogt@isa.de (Gerald Vogt)
  128.  
  129.  
  130. Fix:    From rn, say "| patch -p -N -d DIR", where DIR is your elm source
  131.     directory.  Outside of rn, say "cd DIR; patch -p -N <thisarticle".
  132.     If you don't have the patch program, apply the following by hand,
  133.     or get patch (version 2.0, latest patchlevel).
  134.  
  135.     After patching:
  136.         do nothing, apply patch 15 next
  137.  
  138.     If patch indicates that patchlevel is the wrong version, you may need
  139.     to apply one or more previous patches, or the patch may already
  140.     have been applied.  See the patchlevel.h file to find out what has or
  141.     has not been applied.  In any event, don't continue with the patch.
  142.  
  143.     If you are missing previous patches they can be obtained from our:
  144.     archive server.
  145.  
  146.     Syd Weinstein
  147.     elm@DSI.COM
  148.  
  149.     The patches are available from the dsinc archive server
  150.     Send the following message to archive-server@DSI.COM for
  151.     a list of available patches:
  152.  
  153.     Subject: patch list
  154.     send index elm
  155.  
  156. Index: hdrs/patchlevel.h
  157. Prereq: "13"
  158. *** ../elm2.4/hdrs/patchlevel.h    Wed Nov 25 14:10:35 1992
  159. --- hdrs/patchlevel.h    Wed Nov 25 19:50:23 1992
  160. ***************
  161. *** 1 ****
  162. ! #define PATCHLEVEL "13"
  163. --- 1 ----
  164. ! #define PATCHLEVEL "14"
  165.  
  166. Index: Configure
  167. Prereq: 5.17
  168. *** ../elm2.4/Configure    Wed Nov 25 14:10:31 1992
  169. --- Configure    Fri Dec 11 20:51:13 1992
  170. ***************
  171. *** 8,14 ****
  172.   # and edit it to reflect your system.  Some packages may include samples
  173.   # of config.h for certain machines, so you might look for one of those.)
  174.   #
  175. ! # $Header: /home/syd/elm.rel/RCS/Configure,v 5.17 1992/11/24 02:25:41 syd Exp $
  176.   #
  177.   # Yes, you may rip this off to use in other distribution packages.
  178.   # (Note: this Configure script was generated automatically.  Rather than
  179. --- 8,14 ----
  180.   # and edit it to reflect your system.  Some packages may include samples
  181.   # of config.h for certain machines, so you might look for one of those.)
  182.   #
  183. ! # $Header: /home/syd/elm.rel/RCS/Configure,v 5.20 1992/12/12 01:50:57 syd Exp $
  184.   #
  185.   # Yes, you may rip this off to use in other distribution packages.
  186.   # (Note: this Configure script was generated automatically.  Rather than
  187. ***************
  188. *** 50,59 ****
  189.   d_rename=''
  190.   d_symlink=''
  191.   d_whoami=''
  192. - defeditor=''
  193. - hostname=''
  194. - phostname=''
  195. - mydomain=''
  196.   n=''
  197.   c=''
  198.   orderlib=''
  199. --- 50,55 ----
  200. ***************
  201. *** 212,217 ****
  202. --- 208,219 ----
  203.   d_utimbuf=''
  204.   d_vfork=''
  205.   defbatsub=''
  206. + defeditor=''
  207. + editoropts=''
  208. + hostname=''
  209. + phostname=''
  210. + mydomain=''
  211. + autohostname=''
  212.   i_memory=''
  213.   i_stdlib=''
  214.   i_time=''
  215. ***************
  216. *** 228,234 ****
  217. --- 230,238 ----
  218.   mansrc=''
  219.   catmansrc=''
  220.   manext=''
  221. + manext_choice=''
  222.   catmanext=''
  223. + catmanext_choice=''
  224.   packed=''
  225.   manroff=''
  226.   manroffopts=''
  227. ***************
  228. *** 807,814 ****
  229.   echo " "
  230.   $echo $n "Hmm...  $c"
  231.   if $test -f "$uname"; then
  232. !     uname_os=`uname -s`
  233. !     uname_rel=`uname -r`
  234.       uname_rel=`expr "$uname_rel" : "\(...\).*"`
  235.   else
  236.       uname_os=unknown
  237. --- 811,818 ----
  238.   echo " "
  239.   $echo $n "Hmm...  $c"
  240.   if $test -f "$uname"; then
  241. !     uname_os=`$uname -s`
  242. !     uname_rel=`$uname -r`
  243.       uname_rel=`expr "$uname_rel" : "\(...\).*"`
  244.   else
  245.       uname_os=unknown
  246. ***************
  247. *** 899,917 ****
  248.   esac
  249.   $cat <<EOM
  250.   
  251. ! The Elm manuals are set up for troff.  If you only have nroff, it can
  252. ! be used, but the manuals will not be as readable.  If you use an alternate
  253. ! processor for troff/nroff documents it can be specified here.  Elm expects
  254. ! the text processor to write to standard out.  You will be given a change
  255. ! to provide command line options to this command in the next question.
  256.   
  257.   EOM
  258.   cont=true
  259.   while $test "$cont" ; do
  260.       echo " "
  261. !     echo "Give the name of the program used to format documents on your"
  262. !     $echo $n "system: [$dflt] $c"
  263. !     rp="Preferred troff/nroff program: [$dflt]"
  264.       . myread
  265.       roff=$ans;
  266.       if $test -f "$ans"; then
  267. --- 903,922 ----
  268.   esac
  269.   $cat <<EOM
  270.   
  271. ! The Elm documentation (Reference Guide, Configuration Guide, etc.) is set up
  272. ! for troff.  If you only have nroff, it can be used, but the documentation will
  273. ! not be as readable.  If you use an alternate processor for troff/nroff
  274. ! documents it can be specified here.  Elm expects the text processor to write
  275. ! to standard out.  You will be given a chance to provide command line options
  276. ! to this command in the next question.
  277.   
  278.   EOM
  279.   cont=true
  280.   while $test "$cont" ; do
  281.       echo " "
  282. !     echo "Give the name of the program used to format the Elm documentation on"
  283. !     $echo $n "your system: [$dflt] $c"
  284. !     rp="Preferred Elm documentation formatter program: [$dflt]"
  285.       . myread
  286.       roff=$ans;
  287.       if $test -f "$ans"; then
  288. ***************
  289. *** 943,949 ****
  290.   $cat <<EOM
  291.   
  292.   If this text processor requires any options for proper formatting, specify
  293. ! then here.  To specify no options, enter the word "none".  Some versions
  294.   of troff require the -t option to write to standard out.  This is the
  295.   proper place to specify that option.
  296.   
  297. --- 948,954 ----
  298.   $cat <<EOM
  299.   
  300.   If this text processor requires any options for proper formatting, specify
  301. ! them here.  To specify no options, enter the word "none".  Some versions
  302.   of troff require the -t option to write to standard out.  This is the
  303.   proper place to specify that option.
  304.   
  305. ***************
  306. *** 1009,1020 ****
  307.   if $test "$mansrc" != none ; then
  308.       case "$manext" in
  309.       '')
  310. !     case "$mansrc" in
  311. !     *l) dflt=.l ;;
  312. !     *n) dflt=.n ;;
  313. !     *L) dflt=.L ;;
  314. !     *)  dflt=.1 ;;
  315. !     esac
  316.       ;;
  317.       .*)    dflt="$manext";;
  318.       *)  dflt=".$manext";;
  319. --- 1014,1029 ----
  320.   if $test "$mansrc" != none ; then
  321.       case "$manext" in
  322.       '')
  323. !     if $test "$manext_choice" = none; then
  324. !         dflt=none
  325. !     else
  326. !         case "$mansrc" in
  327. !         *l) dflt=.l ;;
  328. !         *n) dflt=.n ;;
  329. !         *L) dflt=.L ;;
  330. !         *)  dflt=.1 ;;
  331. !         esac
  332. !     fi
  333.       ;;
  334.       .*)    dflt="$manext";;
  335.       *)  dflt=".$manext";;
  336. ***************
  337. *** 1034,1046 ****
  338.       $echo $n "$rp $c"
  339.       . myread
  340.       manext=$ans
  341.       case "$manext" in
  342. !     'none') manext=''
  343.       ;;
  344.       esac
  345.       fi
  346.   
  347. ! # Now the formated man pages ala System V
  348.   case "$catmansrc" in
  349.   '')
  350.       dflt="/usr/man/catn /usr/man/catl /usr/catman/man.L /usr/catman/local/man1"
  351. --- 1043,1057 ----
  352.       $echo $n "$rp $c"
  353.       . myread
  354.       manext=$ans
  355. +     manext_choice=$ans
  356.       case "$manext" in
  357. !     'none')
  358. !     manext=''
  359.       ;;
  360.       esac
  361.       fi
  362.   
  363. ! # Now the formatted man pages ala System V
  364.   case "$catmansrc" in
  365.   '')
  366.       dflt="/usr/man/catn /usr/man/catl /usr/catman/man.L /usr/catman/local/man1"
  367. ***************
  368. *** 1092,1107 ****
  369.       *)  dflt="$manroff";;
  370.       esac
  371.       $cat <<EOM
  372. ! Manual pages are generally formatted with nroff.  If you use an alternate
  373. ! text processor for manual pages it can be specified here.  Elm expects
  374. ! the text processor to write to standard out.
  375.   
  376.   EOM
  377.       cont=true
  378.       while $test "$cont" ; do
  379.       echo " "
  380. !     echo "Give the name of the program used to format manual pages on your"
  381. !     $echo $n "system: [$dflt] $c"
  382.       rp="Preferred manual page formatter: [$dflt]"
  383.       . myread
  384.       manroff=$ans;
  385. --- 1103,1122 ----
  386.       *)  dflt="$manroff";;
  387.       esac
  388.       $cat <<EOM
  389. ! Online manual pages are generally formatted with nroff.  If you use an 
  390. ! alternate text processor for on-line manual pages it can be specified here. 
  391. ! Elm expects the text processor to write to standard out.
  392.   
  393. + Note: This does not effect the formatter previously chosen for the Elm
  394. +       Elm documentation (Reference Guide, Configuration Guide, etc.).
  395.   EOM
  396.       cont=true
  397.       while $test "$cont" ; do
  398.       echo " "
  399. !     echo "Give the name of the program used to format on-line manual pages"
  400. !     $echo $n "on your system: [$dflt] $c"
  401.       rp="Preferred manual page formatter: [$dflt]"
  402.       . myread
  403.       manroff=$ans;
  404. ***************
  405. *** 1150,1164 ****
  406.       # determine the extension for catman pages
  407.       case "$catmanext" in
  408.       '')
  409. !     if $test -n "$manext" ; then
  410. !         dflt=$manext
  411.       else
  412. !         case "$catmansrc" in
  413. !         *l) dflt=.l ;;
  414. !         *n) dflt=.n ;;
  415. !         *L) dflt=.L ;;
  416. !         *g1) dflt='' ;;
  417. !         *)  dflt=.1 ;;
  418.           esac
  419.       fi
  420.       ;;
  421. --- 1165,1187 ----
  422.       # determine the extension for catman pages
  423.       case "$catmanext" in
  424.       '')
  425. !     if $test "$catmanext_choice" = none; then
  426. !         dflt=none
  427.       else
  428. !         case "$manext" in
  429. !         .*) dflt=$manext ;;
  430. !         *)
  431. !         if $test "$manext_choice" = none; then
  432. !             dflt=none
  433. !         else
  434. !                 case "$catmansrc" in
  435. !                 *l) dflt=.l ;;
  436. !                 *n) dflt=.n ;;
  437. !                 *L) dflt=.L ;;
  438. !                 *g1) dflt=none ;;
  439. !                 *)  dflt=.1 ;;
  440. !                 esac
  441. !         fi
  442.           esac
  443.       fi
  444.       ;;
  445. ***************
  446. *** 1180,1187 ****
  447.       $echo $n "$rp $c"
  448.       . myread
  449.       catmanext=$ans
  450.       case "$catmanext" in
  451. !     'none') catmanext=''
  452.       ;;
  453.       esac
  454.   
  455. --- 1203,1212 ----
  456.       $echo $n "$rp $c"
  457.       . myread
  458.       catmanext=$ans
  459. +     catmanext_choice=$ans
  460.       case "$catmanext" in
  461. !     'none')
  462. !     catmanext=''
  463.       ;;
  464.       esac
  465.   
  466. ***************
  467. *** 1200,1206 ****
  468.           case "$suffix" in
  469.           .Z) dflt=n;;
  470.           .z) dflt=y;;
  471. !         *)  if $ls "$catmansrc"/*.z > /dev/null 2>&1 ; then
  472.               dflt=y
  473.           else
  474.               dflt=n
  475. --- 1225,1231 ----
  476.           case "$suffix" in
  477.           .Z) dflt=n;;
  478.           .z) dflt=y;;
  479. !         *)  if [ "$catmansrc/*.z" != "`$echo $catmansrc/*.z`" ]; then
  480.               dflt=y
  481.           else
  482.               dflt=n
  483. ***************
  484. *** 1221,1227 ****
  485.           case "$suffix" in
  486.           .z) dflt=n;;
  487.           .Z) dflt=y;;
  488. !         *)  if $ls "$catmansrc"/*.Z > /dev/null 2>&1 ; then
  489.               dflt=y
  490.           else
  491.               dflt=n
  492. --- 1246,1252 ----
  493.           case "$suffix" in
  494.           .z) dflt=n;;
  495.           .Z) dflt=y;;
  496. !         *)  if [ "$catmansrc/*.Z" != "`$echo $catmansrc/*.Z`" ]; then
  497.               dflt=y
  498.           else
  499.               dflt=n
  500. ***************
  501. *** 1259,1265 ****
  502.   if xenix; then
  503.       d_xenix="$define"
  504.   :    now are we a 286
  505. !     case "`uname -p`" in
  506.       i80286) 
  507.           xencf="-LARGE -Ml2et32"
  508.           xenlf="-Ml2t32 -F 5600 -SEG 512"
  509. --- 1284,1290 ----
  510.   if xenix; then
  511.       d_xenix="$define"
  512.   :    now are we a 286
  513. !     case "`$uname -p`" in
  514.       i80286) 
  515.           xencf="-LARGE -Ml2et32"
  516.           xenlf="-Ml2t32 -F 5600 -SEG 512"
  517. ***************
  518. *** 1776,1782 ****
  519.   esac
  520.   libs="$ans"
  521.   
  522. ! : check for "existance of altzone"
  523.   echo " "
  524.   case "$d_altcheck" in
  525.   "$define")    ;;
  526. --- 1801,1807 ----
  527.   esac
  528.   libs="$ans"
  529.   
  530. ! : check for "existence of altzone"
  531.   echo " "
  532.   case "$d_altcheck" in
  533.   "$define")    ;;
  534. ***************
  535. *** 1868,1874 ****
  536.   : get list of predefined functions in a handy place
  537.   echo " "
  538.   case "$libc" in
  539. ! '') libc=unknown;;
  540.   esac
  541.   case "$mips" in
  542.   '') mips=false;;
  543. --- 1893,1907 ----
  544.   : get list of predefined functions in a handy place
  545.   echo " "
  546.   case "$libc" in
  547. ! '') if test -d /usr/apollo; then
  548. !     libc=/lib/libc
  549. !     else
  550. !     libc=unknown
  551. !     fi
  552. !     ;;
  553. ! '/lib/libc /lib/clib')
  554. !     libc=/lib/libc
  555. !     ;;
  556.   esac
  557.   case "$mips" in
  558.   '') mips=false;;
  559. ***************
  560. *** 2159,2164 ****
  561. --- 2192,2200 ----
  562.   elif $contains F_SETLK /usr/include/sys/fcntlcom.h >/dev/null 2>&1; then
  563.       echo 'F_SETLK found, fcntl locking available'
  564.       has_fcntl="$define"
  565. + elif $contains F_SETLK /usr/include/sys/file.h >/dev/null 2>&1; then
  566. +     echo 'F_SETLK found, fcntl locking available'
  567. +     has_fcntl="$define"
  568.   else
  569.       echo 'F_SETLK not found, fcntl locking not available'
  570.       has_fcntl="$undef"
  571. ***************
  572. *** 2262,2341 ****
  573.   echo " "
  574.   
  575.   : now get the host name
  576. ! echo " "
  577. ! echo "Figuring out host name..."
  578. ! echo 'Maybe "hostname" will work...'
  579. ! if ans=`sh -c hostname 2>&1` ; then
  580. !     hostname=$ans
  581. !     phostname=hostname
  582. ! else
  583. !     if xenix; then
  584. !     echo 'Oh, dear.  Maybe "/etc/systemid" is the key...'
  585. !     if ans=`cat /etc/systemid 2>&1` ; then
  586. !         hostname=$ans
  587. !         phostname='cat /etc/systemid'
  588. !         echo "Whadyaknow.  Xenix always was a bit strange..."
  589. !     else
  590. !         echo 'No, maybe "uuname -l" will work...'
  591. !         if ans=`sh -c 'uuname -l' 2>&1` ; then
  592.           hostname=$ans
  593. !         phostname='uuname -l'
  594.           else
  595. !         echo 'Strange.  Maybe "uname -n" will work...'
  596. !         if ans=`sh -c 'uname -n' 2>&1` ; then
  597.               hostname=$ans
  598. !             phostname='uname -n'
  599.           else
  600. !             echo 'Oh well, maybe I can mine it out of whoami.h...'
  601. !             if ans=`sh -c $contains' sysname /usr/include/whoami.h' 2>&1` ; then
  602. !             hostname=`echo "$ans" | $sed 's/^.*"\(.*\)"/\1/'`
  603. !             phostname="sed -n -e '"'/sysname/s/^.*\"\\(.*\\)\"/\1/{'"' -e p -e q -e '}' </usr/include/whoami.h"
  604.               else
  605. !             case "$hostname" in
  606. !             '') echo "Does this machine have an identity crisis or something?"
  607. !                 phostname=''
  608. !                 ;;
  609. !             *)  echo "Well, you said $hostname before...";;
  610. !             esac
  611.               fi
  612.           fi
  613.           fi
  614. -     fi
  615. -     else
  616. -     if $test -r /etc/systemid ; then
  617. -         echo "What is a non-Xenix system doing with /etc/systemid?"
  618. -     fi
  619. -     echo 'No, maybe "uuname -l" will work...'
  620. -     if $test -n "$uuname" && ans=`sh -c "$uuname -l" 2>&1` ; then
  621. -         hostname=$ans
  622. -         phostname="$uuname -l"
  623.       else
  624. !         echo 'Strange.  Maybe "uname -n" will work...'
  625. !         if $test -n "$uname" && ans=`sh -c "$uname -n" 2>&1` ; then
  626.           hostname=$ans
  627. !         phostname="$uname -n"
  628.           else
  629. !         if ans=`cat /etc/systemid 2>&1` ; then
  630.               hostname=$ans
  631. !             phostname='cat /etc/systemid'
  632. !             echo "Well, I'll use the systemid file anyway..."
  633.           else
  634. !             echo 'Oh well, maybe I can mine it out of whoami.h...'
  635. !             if ans=`sh -c $contains' sysname /usr/include/whoami.h' 2>&1` ; then
  636. !             hostname=`echo "$ans" | $sed 's/^.*"\(.*\)"/\1/'`
  637. !             phostname="sed -n -e '"'/sysname/s/^.*\"\\(.*\\)\"/\1/{'"' -e p -e q -e '}' </usr/include/whoami.h"
  638.               else
  639. !             case "$hostname" in
  640. !             '') echo "Does this machine have an identity crisis or something?"
  641. !                 phostname=''
  642. !                 ;;
  643. !             *)  echo "Well, you said $hostname before...";;
  644. !             esac
  645.               fi
  646.           fi
  647.           fi
  648.       fi
  649.       fi
  650.   fi
  651.   : you do not want to know about this
  652.   set $hostname
  653. --- 2298,2382 ----
  654.   echo " "
  655.   
  656.   : now get the host name
  657. ! if $test "$autohostname" != "$undef" -o "$hostname" = "" ; then
  658. !     autohostname="$define"
  659. !     echo " "
  660. !     echo "Figuring out host name..."
  661. !     echo 'Maybe "hostname" will work...'
  662. !     if ans=`sh -c hostname 2>&1` ; then
  663. !     hostname=$ans
  664. !     phostname=hostname
  665. !     else
  666. !     if xenix; then
  667. !         echo 'Oh, dear.  Maybe "/etc/systemid" is the key...'
  668. !         if ans=`cat /etc/systemid 2>&1` ; then
  669.           hostname=$ans
  670. !         phostname='cat /etc/systemid'
  671. !         echo "Whadyaknow.  Xenix always was a bit strange..."
  672.           else
  673. !         echo 'No, maybe "uuname -l" will work...'
  674. !         if ans=`sh -c '$uuname -l' 2>&1` ; then
  675.               hostname=$ans
  676. !             phostname='$uuname -l'
  677.           else
  678. !             echo 'Strange.  Maybe "uname -n" will work...'
  679. !             if ans=`sh -c '$uname -n' 2>&1` ; then
  680. !             hostname=$ans
  681. !             phostname='$uname -n'
  682.               else
  683. !             echo 'Oh well, maybe I can mine it out of whoami.h...'
  684. !             if ans=`sh -c $contains' sysname /usr/include/whoami.h' 2>&1` ; then
  685. !                 hostname=`echo "$ans" | $sed 's/^.*"\(.*\)"/\1/'`
  686. !                 phostname="sed -n -e '"'/sysname/s/^.*\"\\(.*\\)\"/\1/{'"' -e p -e q -e '}' </usr/include/whoami.h"
  687. !             else
  688. !                 case "$hostname" in
  689. !                 '') echo "Does this machine have an identity crisis or something?"
  690. !                 phostname=''
  691. !                 ;;
  692. !                 *)  echo "Well, you said $hostname before...";;
  693. !                 esac
  694. !             fi
  695.               fi
  696.           fi
  697.           fi
  698.       else
  699. !         if $test -r /etc/systemid ; then
  700. !         echo "What is a non-Xenix system doing with /etc/systemid?"
  701. !         fi
  702. !         echo 'No, maybe "uuname -l" will work...'
  703. !         if $test -n "$uuname" && ans=`sh -c "$uuname -l" 2>&1` ; then
  704.           hostname=$ans
  705. !         phostname="$uuname -l"
  706.           else
  707. !         echo 'Strange.  Maybe "uname -n" will work...'
  708. !         if $test -n "$uname" && ans=`sh -c "$uname -n" 2>&1` ; then
  709.               hostname=$ans
  710. !             phostname="$uname -n"
  711.           else
  712. !             if ans=`cat /etc/systemid 2>&1` ; then
  713. !             hostname=$ans
  714. !             phostname='cat /etc/systemid'
  715. !             echo "Well, I'll use the systemid file anyway..."
  716.               else
  717. !             echo 'Oh well, maybe I can mine it out of whoami.h...'
  718. !             if ans=`sh -c $contains' sysname /usr/include/whoami.h' 2>&1` ; then
  719. !                 hostname=`echo "$ans" | $sed 's/^.*"\(.*\)"/\1/'`
  720. !                 phostname="sed -n -e '"'/sysname/s/^.*\"\\(.*\\)\"/\1/{'"' -e p -e q -e '}' </usr/include/whoami.h"
  721. !             else
  722. !                 case "$hostname" in
  723. !                 '') echo "Does this machine have an identity crisis or something?"
  724. !                 phostname=''
  725. !                 ;;
  726. !                 *)  echo "Well, you said $hostname before...";;
  727. !                 esac
  728. !             fi
  729.               fi
  730.           fi
  731.           fi
  732.       fi
  733.       fi
  734. + else
  735. +     echo "Last time you said the hostname was $hostname"
  736.   fi
  737.   : you do not want to know about this
  738.   set $hostname
  739. ***************
  740. *** 2369,2374 ****
  741. --- 2410,2416 ----
  742.       $echo $n "$rp $c"
  743.       . myread
  744.       hostname="$ans"
  745. +     autohostname="$undef"
  746.   done
  747.   
  748.   echo " "
  749. ***************
  750. *** 2789,2801 ****
  751.    
  752.   Some systems run MMDF as their Mail Transport Agent.  MMDF uses a
  753.   different way of delimiting messages in the mailbox files.  Other
  754. ! systems don't run MMDF but use the MMDF seperator in their mailbox
  755. ! files.  The MMDF seperator is usually this is a series of four Control
  756.   A's.  $package needs to know if this system uses the MMDF style message
  757. ! seperator in its mailbox files.
  758.   
  759.   EOM
  760. ! rp="Does this system use MMDF style message seperator? [$dflt]"
  761.   $echo $n "$rp $c"
  762.   . myread
  763.   case "$ans" in
  764. --- 2831,2843 ----
  765.    
  766.   Some systems run MMDF as their Mail Transport Agent.  MMDF uses a
  767.   different way of delimiting messages in the mailbox files.  Other
  768. ! systems don't run MMDF but use the MMDF separator in their mailbox
  769. ! files.  The MMDF separator is usually this is a series of four Control
  770.   A's.  $package needs to know if this system uses the MMDF style message
  771. ! separator in its mailbox files.
  772.   
  773.   EOM
  774. ! rp="Does this system use MMDF style message separator? [$dflt]"
  775.   $echo $n "$rp $c"
  776.   . myread
  777.   case "$ans" in
  778. ***************
  779. *** 2877,2887 ****
  780.    
  781.   Some newer mailers can deliver mail to addresses of the INTERNET
  782.   persuasion, such as user@host.domain.  Other older mailers require the
  783. ! complete uucp ! path to the destination to be specified in the
  784. ! address.  Does your mailer understand
  785.   EOM
  786. - $echo $n "INTERNET addresses? [$dflt] $c"
  787.   rp="Does your mailer understand INTERNET addresses? [$dflt]"
  788.   . myread
  789.   case "$ans" in
  790.   y*) d_internet="$define";;
  791. --- 2919,2928 ----
  792.    
  793.   Some newer mailers can deliver mail to addresses of the INTERNET
  794.   persuasion, such as user@host.domain.  Other older mailers require the
  795. ! complete uucp ! path to the destination to be specified in the address.
  796.   EOM
  797.   rp="Does your mailer understand INTERNET addresses? [$dflt]"
  798. + $echo $n "$rp $c"
  799.   . myread
  800.   case "$ans" in
  801.   y*) d_internet="$define";;
  802. ***************
  803. *** 3004,3010 ****
  804.   
  805.   The system has the message catalog routines in its library.  These routines
  806.   are new, and on some systems do not function properly. Also, $package expects
  807. ! that these routines are X/Open complient.
  808.   
  809.   EOM
  810.   
  811. --- 3045,3051 ----
  812.   
  813.   The system has the message catalog routines in its library.  These routines
  814.   are new, and on some systems do not function properly. Also, $package expects
  815. ! that these routines are X/Open compliant.
  816.   
  817.   EOM
  818.   
  819. ***************
  820. *** 3081,3087 ****
  821.   doesn't necessarily need graphics capabilities on your display, but its
  822.   useful.
  823.   
  824. ! If you have intalled Nathaniel Borenstein's metamail package for
  825.   displaying MIME messages, elm can make use of it.  If you didn't
  826.   have metamail installed you might want to obtain a copy of it.  The
  827.   most recent version is on thumper.bellcore.com [128.96.41.1], or ask
  828. --- 3122,3128 ----
  829.   doesn't necessarily need graphics capabilities on your display, but its
  830.   useful.
  831.   
  832. ! If you have installed Nathaniel Borenstein's metamail package for
  833.   displaying MIME messages, elm can make use of it.  If you didn't
  834.   have metamail installed you might want to obtain a copy of it.  The
  835.   most recent version is on thumper.bellcore.com [128.96.41.1], or ask
  836. ***************
  837. *** 3607,3613 ****
  838.   done
  839.   
  840.   : determine the group of the mail directory- what group elm should use
  841. ! mailgrp=`$ls -lgd $maildir`
  842.   mailgrp=`$expr "$mailgrp" : "[ld][rwxstS-]*[ 0123456789]*\(.*\)"`
  843.   : now mailgrp is either    user group size mon day time/year name
  844.   : or                       group size mon day time/year name
  845. --- 3648,3654 ----
  846.   done
  847.   
  848.   : determine the group of the mail directory- what group elm should use
  849. ! mailgrp=`$ls -lgd $maildir/.`
  850.   mailgrp=`$expr "$mailgrp" : "[ld][rwxstS-]*[ 0123456789]*\(.*\)"`
  851.   : now mailgrp is either    user group size mon day time/year name
  852.   : or                       group size mon day time/year name
  853. ***************
  854. *** 3645,3650 ****
  855. --- 3686,3694 ----
  856.       mailermode=2755
  857.       cat <<EOM
  858.   
  859. + Since Elm is being installed as a setgid program, it must be installed
  860. + by root, or a user able to set the setgid bit.
  861.   To provide better security, Elm can be configured to switch to the
  862.   privileged group of $mailgrp only when necessary to access mail folders.
  863.   
  864. ***************
  865. *** 3925,3930 ****
  866. --- 3969,3984 ----
  867.       set _tzname d_tzname
  868.       eval $inlibc
  869.   fi
  870. + #    try alternate test for nm commands that have problems
  871. + #    with data items being parsed
  872. + if $test "$d_tzname" = "$undef"; then
  873. +     if $contains tzname /usr/include/time.h >/dev/null 2>&1 ; then
  874. +     echo 'tzname found in time.h'
  875. +     d_tzname="$define"
  876. +     fi
  877. + fi
  878.   : check for valid reply/to fields
  879.   case "$d_useembed" in
  880.   "$define")    dflt=y;;
  881. ***************
  882. *** 4038,4044 ****
  883.   #include <sys/types.h>
  884.   #include <sys/stat.h>
  885.   #define far /* to keep XENIX from complaining */
  886. ! #include <sys/file.h>
  887.   #ifdef I_TIME
  888.   #  include <time.h>
  889.   #endif
  890. --- 4092,4100 ----
  891.   #include <sys/types.h>
  892.   #include <sys/stat.h>
  893.   #define far /* to keep XENIX from complaining */
  894. ! #if (defined(BSD) || !defined(apollo))
  895. ! #  include <sys/file.h>
  896. ! #endif
  897.   #ifdef I_TIME
  898.   #  include <time.h>
  899.   #endif
  900. ***************
  901. *** 4172,4179 ****
  902.   : determine default editor
  903.   case "$defeditor" in
  904.   '')
  905. !     case "$_vi" in
  906. !     */*) dflt="$_vi";;
  907.       *) dflt=/usr/ucb/vi;;
  908.       esac
  909.       ;;
  910. --- 4228,4235 ----
  911.   : determine default editor
  912.   case "$defeditor" in
  913.   '')
  914. !     case "$vi" in
  915. !     */*) dflt="$vi";;
  916.       *) dflt=/usr/ucb/vi;;
  917.       esac
  918.       ;;
  919. ***************
  920. *** 4180,4185 ****
  921. --- 4236,4251 ----
  922.   *)  dflt="$defeditor"
  923.       ;;
  924.   esac
  925. + $cat <<EOM
  926. + Elm must be configured with a default editor.  On most systems this may
  927. + be 'vi'.  If you prefer to use some other, easier editor enter it here.
  928. + You will be given a change to provide command line options to this
  929. + command in the next question.
  930. + EOM
  931.   cont=true
  932.   while $test "$cont" ; do
  933.       echo " "
  934. ***************
  935. *** 4187,4210 ****
  936.       $echo $n "$rp $c"
  937.       . myread
  938.       defeditor="$ans"
  939. !     if $test -f $ans; then
  940.       cont=''
  941.       else
  942. !     if $test "$fastread" = yes; then
  943. !         dflt=y
  944.       else
  945. !         dflt=n
  946. !     fi
  947. !     rp="File $ans doesn't exist.  Use that name anyway? [$dflt]"
  948. !     $echo $n "$rp $c"
  949. !     . myread
  950. !     dflt=''
  951. !     case "$ans" in
  952. !     y*) cont='';;
  953. !     esac
  954.       fi
  955.   done
  956.   
  957.   : determine where public libraries go
  958.   case "$lib" in
  959.   '')
  960. --- 4253,4302 ----
  961.       $echo $n "$rp $c"
  962.       . myread
  963.       defeditor="$ans"
  964. !     if $test -f "$ans"; then
  965.       cont=''
  966.       else
  967. !     lookup=`loc "$ans" "" . $pth`
  968. !     if $test -f "$lookup"; then
  969. !         cont=''
  970. !         defeditor=$lookup
  971.       else
  972. !         if $test "$fastread" = yes; then
  973. !             dflt=y
  974. !         else
  975. !             dflt=n
  976. !         fi
  977. !         echo "Editor $ans doesn't exist."
  978. !         rp="Use that name anyway? [$dflt]"
  979. !         $echo $n "$rp $c"
  980. !         . myread
  981. !         dflt=''
  982. !         case "$ans" in
  983. !         y*) cont='';;
  984. !         esac
  985. !         fi
  986.       fi
  987.   done
  988.   
  989. + : determine the editor flags to use
  990. + $cat <<EOM
  991. + If this editor requires any options for proper use, specify them
  992. + here.  To specify no options, enter the word "none".  For example,
  993. + 'pico' users will want to use the -t option.  This is the proper
  994. + place to specify that option.
  995. + EOM
  996. + dflt="$editoropts"
  997. + rp="What options should Elm use with $defeditor: [$dflt]"
  998. + $echo $n "$rp $c"
  999. + . myread
  1000. + editoropts=$ans
  1001. + case "$editoropts" in
  1002. + 'none') editoropts=''
  1003. +      ;;
  1004. + esac
  1005.   : determine where public libraries go
  1006.   case "$lib" in
  1007.   '')
  1008. ***************
  1009. *** 4609,4618 ****
  1010.   d_rename='$d_rename'
  1011.   d_symlink='$d_symlink'
  1012.   d_whoami='$d_whoami'
  1013. - defeditor='$defeditor'
  1014. - hostname='$hostname'
  1015. - phostname='$phostname'
  1016. - mydomain='$mydomain'
  1017.   n='$n'
  1018.   c='$c'
  1019.   orderlib='$orderlib'
  1020. --- 4701,4706 ----
  1021. ***************
  1022. *** 4771,4776 ****
  1023. --- 4859,4870 ----
  1024.   d_utimbuf='$d_utimbuf'
  1025.   d_vfork='$d_vfork'
  1026.   defbatsub='$defbatsub'
  1027. + defeditor='$defeditor'
  1028. + editoropts='$editoropts'
  1029. + hostname='$hostname'
  1030. + phostname='$phostname'
  1031. + mydomain='$mydomain'
  1032. + autohostname='$autohostname'
  1033.   i_memory='$i_memory'
  1034.   i_stdlib='$i_stdlib'
  1035.   i_time='$i_time'
  1036. ***************
  1037. *** 4787,4793 ****
  1038. --- 4881,4889 ----
  1039.   mansrc='$mansrc'
  1040.   catmansrc='$catmansrc'
  1041.   manext='$manext'
  1042. + manext_choice='$manext_choice'
  1043.   catmanext='$catmanext'
  1044. + catmanext_choice='$catmanext_choice'
  1045.   packed='$packed'
  1046.   manroff='$manroff'
  1047.   manroffopts='$manroffopts'
  1048.  
  1049. Index: Instruct
  1050. *** ../elm2.4/Instruct    Tue Nov 17 14:10:54 1992
  1051. --- Instruct    Sun Dec  6 22:44:43 1992
  1052. ***************
  1053. *** 1,7 ****
  1054.                   Instructions
  1055.                   ------------
  1056.   
  1057. !                 Last Update: $Date: 1992/11/15 01:07:19 $
  1058.   
  1059.   
  1060.       This file contains instructions on how to create and install
  1061. --- 1,7 ----
  1062.                   Instructions
  1063.                   ------------
  1064.   
  1065. !                 Last Update: $Date: 1992/12/07 03:44:37 $
  1066.   
  1067.   
  1068.       This file contains instructions on how to create and install
  1069. ***************
  1070. *** 57,65 ****
  1071.   
  1072.       $ make install
  1073.       
  1074. ! Note: On some systems the mailer runs as setgid mail to have the ability
  1075. ! to WRITE to the mail directory (for lock files).   If you have a different
  1076. ! scheme at your site, feel free to set it up to use that instead.
  1077.   
  1078.   Finally, we're just about done!   The final checks can be made
  1079.   by the following commands:
  1080. --- 57,68 ----
  1081.   
  1082.       $ make install
  1083.       
  1084. ! Note: On some systems the mailer runs as setgid mail to have the
  1085. ! ability to WRITE to the mail directory (for lock files).  If this is
  1086. ! true, you will have to be root to install Elm (or some other user that
  1087. ! can have the makefile set the setgid bit on the required executables).
  1088. ! If you have a different scheme at your site, feel free to set it up to
  1089. ! use that instead.
  1090.   
  1091.   Finally, we're just about done!   The final checks can be made
  1092.   by the following commands:
  1093.  
  1094. Index: Patchlist
  1095. *** ../elm2.4/Patchlist    Wed Nov 25 14:10:35 1992
  1096. --- Patchlist    Fri Dec 11 20:52:38 1992
  1097. ***************
  1098. *** 1,6 ****
  1099.   =========================================================
  1100.   Patch Set - Patches 12 and 13: Sat Nov 21 21:03:26 EST 1992
  1101. ! Elm 2.4PL10 -> Elm 2.4PL11
  1102.   
  1103.   Handle the case where a system does
  1104.   >         #define jmp_buf sigjmp_buf
  1105. --- 1,122 ----
  1106.   =========================================================
  1107. + Patch Set - Patches 13 through 17: Fri Dec 11 20:52:23 EST 1992
  1108. + Elm 2.4PL13 -> Elm 2.4PL17
  1109. + Attempt to fix where Elm was issuing the final error message on the
  1110. + cursor screen instead of the regular screen on terminals where the
  1111. + ti/te code swaps the screen.
  1112. + From: Syd
  1113. + Internal fix to use correct errno on some error messages.
  1114. + From: Syd
  1115. + Add decode option to copy_message
  1116. + From: bjoerns@stud.cs.uit.no (Bjoern Stabell)
  1117. + Fix Configure for ls that return 0 status even if file
  1118. + is not found, re packing man pages.
  1119. + From: aj@redwood.cray.com (Chris Jackman)
  1120. + Fix Configure not getting mailgrp correct on symlinks.
  1121. + From: aj@redwood.cray.com (Chris Jackman)
  1122. + Add missing -n flag to doc makefile.
  1123. + From: gwh@dogmatix.inmos.co.uk
  1124. + Always init fcntlerr and flockerr in src/lock.c to avoid compiler
  1125. + warnings.
  1126. + From: Syd via prompt from wdh@grouper.mkt.csd.harris.com (W. David Higgins)
  1127. + Traditional C used 'unsigned preserving' rules when an integral data
  1128. + value is widened to integer and ANSI C changed the rules to 'value
  1129. + preserving'. This is one of the few things that the ANSI X3J11 comitte
  1130. + did that might break existing programs.  Casting to (int)
  1131. + From: Bo.Asbjorn.Muldbak <bam@jutland.ColumbiaSC.NCR.COM>
  1132. + When ELM is reporting "appending to <foldername>" I never get to see
  1133. + but a flash of light, before the message line has been replaced by a
  1134. + dummy "Messages saved" string.  And if you happen to have mistyped the
  1135. + foldername or the leading '=', you never see the foldername.
  1136. + This fix will change file.c to show either
  1137. +     Message <what> to <foldername>
  1138. + or
  1139. +     <#> messages <what> to <foldername>
  1140. + From: Bo.Asbjorn.Muldbak <bam@jutland.ColumbiaSC.NCR.COM>
  1141. + This implements the use of SIGUSR1 and SIGUSR2 as discussed on the
  1142. + mailing list recently, and adds them to the documentation.
  1143. + From: scs@lokkur.dexter.mi.us (Steve Simmons)
  1144. + Attempt to patch posix_signal for SunOS problem.
  1145. + From: A lot of the Elm group
  1146. + Change cancelled mail message to indicate full path name as
  1147. + AFS users don't have home and elm's home the same.
  1148. + From: Syd
  1149. + Fix doc/Makefile.SH to have an else clause on all if's so that
  1150. + if's that return an error code on a not taken if and a null else
  1151. + clause don't exit the makefile
  1152. + From: Syd via requests from many
  1153. + General changes for apollo portability
  1154. + From: gordonb@mcil.comm.mot.com (Gordon Berkley)
  1155. + Fix typos in edit.c
  1156. + From: Bo.Asbjorn.Muldbak <bam@jutland.ColumbiaSC.NCR.COM>
  1157. + If sigset() and sigrelse() are available, release signal before
  1158. + using longjmp() to leave signal handler.
  1159. + From: chip@tct.com (Chip Salzenberg)
  1160. + Anytime elm wants to re-run newalias, selected is set to 0.
  1161. + (removing any limit in effect)
  1162. + From: "Robert L. Howard" <robert.howard@matd.gatech.edu>
  1163. + Allow for use from restricted shell by putting SHELL=/bin/sh in the
  1164. + environment of spawned mail transport program.
  1165. + From: chip@tct.com (Chip Salzenberg)
  1166. + fix Obvious typos.
  1167. + From: dwolfe@pffft.sps.mot.com (Dave Wolfe)
  1168. + List_folder knew only about '=' but nothing about the rest
  1169. + of [+=%] as one would have expected.
  1170. + From: Jukka Antero Ukkonen <ukkonen@venus.csc.fi>
  1171. + Fix where the user creates a first new alias, then deletes it, the
  1172. + alias stays on screen, but the file really will be empty if it was the
  1173. + last alias, so the retry to delete gives 'cannot open ...file' messages
  1174. + From: "Robert L. Howard" <robert.howard@matd.gatech.edu>
  1175. + Make Elm complain about spaces that are not after commas in
  1176. + alias and address lists
  1177. + From: "Robert L. Howard" <robert.howard@matd.gatech.edu>
  1178. + Make verb and pronoun agree.
  1179. + From: dwolfe@pffft.sps.mot.com (Dave Wolfe)
  1180. + in do_get_alias().  abuf[] was under dimensioned.
  1181. + From: "Robert L. Howard" <robert.howard@matd.gatech.edu>
  1182. + Remove the old packed manual page before trying to pack the new one.
  1183. + From: Tom Moore <tmoore@fievel.DaytonOH.NCR.COM>
  1184. + Fix double inclusion of sys/types.h
  1185. + From: Tom Moore <tmoore@wnas.DaytonOH.NCR.COM>
  1186. + Fix building editor wrap problem
  1187. + From: Syd via prompting from vogt@isa.de (Gerald Vogt)
  1188. + =========================================================
  1189.   Patch Set - Patches 12 and 13: Sat Nov 21 21:03:26 EST 1992
  1190. ! Elm 2.4PL11 -> Elm 2.4PL13
  1191.   
  1192.   Handle the case where a system does
  1193.   >         #define jmp_buf sigjmp_buf
  1194.  
  1195. Index: README
  1196. *** ../elm2.4/README    Tue Nov 17 14:10:55 1992
  1197. --- README    Sun Dec  6 22:37:08 1992
  1198. ***************
  1199. *** 22,29 ****
  1200.   
  1201.   In addition, ftp.uu.net maintains a mirror of the Elm release files
  1202.   in /networking/mail/elm.  Patches are available in that directory
  1203. ! shortly after release.
  1204.   
  1205.   Limitations/Problems you might encounter in compiling and installing Elm:
  1206.       
  1207.   From comp.mail.elm, dws@ssec.wisc.edu (DaviD W. Sanderson) writes:
  1208. --- 22,36 ----
  1209.   
  1210.   In addition, ftp.uu.net maintains a mirror of the Elm release files
  1211.   in /networking/mail/elm.  Patches are available in that directory
  1212. ! shortly after release.  Other sites also keep mirrors of the Elm
  1213. ! distribution.  There are sites in Europe, Australia, Taiwan and the UK
  1214. ! in addition to several in the US.  Send the message
  1215.   
  1216. +     send elm elm.ftp
  1217. + to archive-server@dsi.com for a current list of ftp mirror sites.
  1218.   Limitations/Problems you might encounter in compiling and installing Elm:
  1219.       
  1220.   From comp.mail.elm, dws@ssec.wisc.edu (DaviD W. Sanderson) writes:
  1221. ***************
  1222. *** 118,123 ****
  1223. --- 125,141 ----
  1224.   > -- 
  1225.   > Bjorn Brox, CORENA A/S, P.O. Box 448, 3601 Kongsberg, NORWAY
  1226.   > E-mail : brox@dms.corena.no , Phone : +47 3 73 66 11 , Fax : +47 3 73 52 62 
  1227. + From: gordonb@mcil.comm.mot.com (Gordon Berkley)
  1228. + On HP/Apollo Domain OS:
  1229. +     Apollo TAR is screwey in creating directories.
  1230. +     Need to create directories before un-taring
  1231. +     DIRS="utils test src nls nls/C nls/C/C nls/C/C/C nls/gencat \
  1232. +         lib hdrs filter doc"
  1233. +     for dir in $DIRS
  1234. +     do
  1235. +         mkdir $dir
  1236. +     done
  1237.   
  1238.   
  1239.       On some systems, especially those based on the AT&T Port to
  1240.  
  1241. Index: config.h.SH
  1242. *** ../elm2.4/config.h.SH    Tue Nov 17 14:10:54 1992
  1243. --- config.h.SH    Thu Dec 10 21:15:12 1992
  1244. ***************
  1245. *** 82,108 ****
  1246.    */
  1247.   #$d_whoami    WHOAMI        /**/
  1248.   
  1249. - /* DEFEDITOR:
  1250. -  *    This symbol contains the name of the default editor.
  1251. -  */
  1252. - #define DEFEDITOR "$defeditor"        /**/
  1253. - /* HOSTNAME:
  1254. -  *    This symbol contains name of the host the program is going to run on.
  1255. -  *    The domain is not kept with hostname, but must be gotten from MYDOMAIN.
  1256. -  *    The dot comes with MYDOMAIN, and need not be supplied by the program.
  1257. -  *    If gethostname() or uname() exist, HOSTNAME may be ignored.
  1258. -  */
  1259. - /* MYDOMAIN:
  1260. -  *    This symbol contains the domain of the host the program is going to
  1261. -  *    run on.  The domain must be appended to HOSTNAME to form a complete
  1262. -  *    host name.  The dot comes with MYDOMAIN, and need not be supplied by
  1263. -  *    the program.  If the host name is derived from PHOSTNAME, the domain
  1264. -  *    may or may not already be there, and the program should check.
  1265. -  */
  1266. - #define HOSTNAME "$hostname"        /**/
  1267. - #define MYDOMAIN "$mydomain"        /**/
  1268.   /* PREFSHELL:
  1269.    *    This symbol contains the full name of the preferred user shell on this
  1270.    *    system.  Usual values are /bin/csh, /bin/ksh, /bin/sh.
  1271. --- 82,87 ----
  1272. ***************
  1273. *** 516,521 ****
  1274. --- 495,526 ----
  1275.    *    This symbol, if defined, indicates that vfork() exists.
  1276.    */
  1277.   #$d_vfork    VFORK    /**/
  1278. + /* DEFEDITOR:
  1279. +  *    This symbol contains the name of the default editor.
  1280. +  */
  1281. + /* EDITOROPTS:
  1282. +  *    This symbol contains the command line options for the default editor.
  1283. +  */
  1284. + #define DEFEDITOR "$defeditor"        /**/
  1285. + #define EDITOROPTS "$editoropts"        /**/
  1286. + /* HOSTNAME:
  1287. +  *    This symbol contains name of the host the program is going to run on.
  1288. +  *    The domain is not kept with hostname, but must be gotten from MYDOMAIN.
  1289. +  *    The dot comes with MYDOMAIN, and need not be supplied by the program.
  1290. +  *    If gethostname() or uname() exist, HOSTNAME may be ignored.
  1291. +  */
  1292. + /* MYDOMAIN:
  1293. +  *    This symbol contains the domain of the host the program is going to
  1294. +  *    run on.  The domain must be appended to HOSTNAME to form a complete
  1295. +  *    host name.  The dot comes with MYDOMAIN, and need not be supplied by
  1296. +  *    the program.  If the host name is derived from PHOSTNAME, the domain
  1297. +  *    may or may not already be there, and the program should check.
  1298. +  */
  1299. + #define HOSTNAME "$hostname"        /**/
  1300. + #define MYDOMAIN "$mydomain"        /**/
  1301.   
  1302.   /* I_MEMORY:
  1303.    *    This symbol, if defined, indicates that the file memory.h
  1304.  
  1305. Index: doc/Config.guid
  1306. Prereq: 5.4
  1307. *** ../elm2.4/doc/Config.guid    Wed Nov 25 14:10:34 1992
  1308. --- doc/Config.guid    Thu Dec 10 21:02:42 1992
  1309. ***************
  1310. *** 1,4 ****
  1311. ! .\" @(#)$Id: Config.guid,v 5.4 1992/11/22 00:49:31 syd Exp $
  1312.   .\"
  1313.   .\"  A guide to the ELM alias system and so on.
  1314.   .\"  format with:
  1315. --- 1,4 ----
  1316. ! .\" @(#)$Id: Config.guid,v 5.5 1992/11/27 02:51:18 syd Exp $
  1317.   .\"
  1318.   .\"  A guide to the ELM alias system and so on.
  1319.   .\"  format with:
  1320. ***************
  1321. *** 11,18 ****
  1322.   .\"    Syd Weinstein        elm@DSI.COM (dsinc!elm)
  1323.   .\"
  1324.   .\"  $Log: Config.guid,v $
  1325.   .\" Revision 5.4  1992/11/22  00:49:31  syd
  1326. ! .\" Add support for a "config.changes" file to override Configure decisions.
  1327.   .\" From: chip@chinacat.unicom.com (Chip Rosenthal)
  1328.   .\"
  1329.   .\" Revision 5.3  1992/10/24  13:51:44  syd
  1330. --- 11,22 ----
  1331.   .\"    Syd Weinstein        elm@DSI.COM (dsinc!elm)
  1332.   .\"
  1333.   .\"  $Log: Config.guid,v $
  1334. + .\" Revision 5.5  1992/11/27  02:51:18  syd
  1335. + .\" Make the docs catch up with the code, config.changes -> config.over
  1336. + .\" From: Syd
  1337. + .\"
  1338.   .\" Revision 5.4  1992/11/22  00:49:31  syd
  1339. ! .\" Add support for a "config.over" file to override Configure decisions.
  1340.   .\" From: chip@chinacat.unicom.com (Chip Rosenthal)
  1341.   .\"
  1342.   .\" Revision 5.3  1992/10/24  13:51:44  syd
  1343. ***************
  1344. *** 393,399 ****
  1345.   the same configuration changes.  Or more likely, you'll forget that
  1346.   the changes are required.
  1347.   .sp
  1348. ! The solution to this problem is to create a \f2config.changes\f1 file
  1349.   in the \f3Elm\f1 base directory.  This file may contain any valid \f2sh\f1
  1350.   commands, and is loaded by \f2Configure\f1 immediately before the
  1351.   \f2config.sh\f1 file is created.
  1352. --- 397,403 ----
  1353.   the same configuration changes.  Or more likely, you'll forget that
  1354.   the changes are required.
  1355.   .sp
  1356. ! The solution to this problem is to create a \f2config.over\f1 file
  1357.   in the \f3Elm\f1 base directory.  This file may contain any valid \f2sh\f1
  1358.   commands, and is loaded by \f2Configure\f1 immediately before the
  1359.   \f2config.sh\f1 file is created.
  1360. ***************
  1361. *** 406,410 ****
  1362.   .pg
  1363.   \f3d_feature=undef\f1
  1364.   .sp
  1365. ! All you need to do is create a \f2config.changes\f1 file and put that
  1366.   final line in it.
  1367. --- 410,414 ----
  1368.   .pg
  1369.   \f3d_feature=undef\f1
  1370.   .sp
  1371. ! All you need to do is create a \f2config.over\f1 file and put that
  1372.   final line in it.
  1373.  
  1374. Index: doc/Makefile.SH
  1375. Prereq: 5.4
  1376. *** ../elm2.4/doc/Makefile.SH    Wed Nov 25 14:10:36 1992
  1377. --- doc/Makefile.SH    Sun Dec 13 13:00:06 1992
  1378. ***************
  1379. *** 16,22 ****
  1380.   echo "Extracting doc/Makefile (with variable substitutions)"
  1381.   cat >Makefile <<!GROK!THIS!
  1382.   #
  1383. ! # $Id: Makefile.SH,v 5.4 1992/11/22 00:47:02 syd Exp $
  1384.   #
  1385.   #  Makefile for the documentation of the ELM mail system
  1386.   #
  1387. --- 16,22 ----
  1388.   echo "Extracting doc/Makefile (with variable substitutions)"
  1389.   cat >Makefile <<!GROK!THIS!
  1390.   #
  1391. ! # $Id: Makefile.SH,v 5.9 1992/12/13 18:00:05 syd Exp $
  1392.   #
  1393.   #  Makefile for the documentation of the ELM mail system
  1394.   #
  1395. ***************
  1396. *** 23,28 ****
  1397. --- 23,50 ----
  1398.   #         (C) Copyright 1988-1992, USENET Community Trust
  1399.   #
  1400.   #  $Log: Makefile.SH,v $
  1401. + # Revision 5.9  1992/12/13  18:00:05  syd
  1402. + # Add one more missing rm of a previously packed man page
  1403. + # From: Bo Asbjorn Muldbak <bam@jutland.ColumbiaSC.NCR.COM>
  1404. + #
  1405. + # Revision 5.8  1992/12/12  01:28:50  syd
  1406. + # Remove the old packed manual page before trying to pack the new one.
  1407. + # From: Tom Moore <tmoore@fievel.DaytonOH.NCR.COM>
  1408. + #
  1409. + # Revision 5.7  1992/12/07  05:05:27  syd
  1410. + # fix ; placement
  1411. + # From: Syd
  1412. + #
  1413. + # Revision 5.6  1992/12/07  03:28:35  syd
  1414. + # add else clause with true to TEST lines as some Makefiles exit if
  1415. + # the if construct doesnt execute a clause as the if returns an error
  1416. + # status.
  1417. + # From: Syd via requests from several people
  1418. + #
  1419. + # Revision 5.5  1992/12/07  02:17:14  syd
  1420. + # Add missing -n flag to doc makefile.
  1421. + # From: gwh@dogmatix.inmos.co.uk
  1422. + #
  1423.   # Revision 5.4  1992/11/22  00:47:02  syd
  1424.   # Change the way Configure and doc/Makefile.SH deal with installing
  1425.   # man pages.
  1426. ***************
  1427. *** 159,165 ****
  1428.   
  1429.   # Targets
  1430.   all: 
  1431. !     @if $(TEST) '$(CATMAN)' != none; then $(MAKE) formatted_pages ;  fi
  1432.   
  1433.   #    The following are no-ops
  1434.   lint:
  1435. --- 181,187 ----
  1436.   
  1437.   # Targets
  1438.   all: 
  1439. !     @if $(TEST) '$(CATMAN)' != none; then $(MAKE) formatted_pages ;  else true ; fi
  1440.   
  1441.   #    The following are no-ops
  1442.   lint:
  1443. ***************
  1444. *** 171,178 ****
  1445.       mkdir catman
  1446.   
  1447.   install: $(LIB_LIST)
  1448. !     @if $(TEST) '$(MAN)' != none; then $(MAKE) install_man ;  fi
  1449. !     @if $(TEST) '$(CATMAN)' != none; then $(MAKE) install_catman ;  fi
  1450.   
  1451.   install_man: $(MAN_LIST) $(MAN)/wnewmail$(MANEXT)
  1452.   
  1453. --- 193,200 ----
  1454.       mkdir catman
  1455.   
  1456.   install: $(LIB_LIST)
  1457. !     @if $(TEST) '$(MAN)' != none; then $(MAKE) install_man ; else true ;  fi
  1458. !     @if $(TEST) '$(CATMAN)' != none; then $(MAKE) install_catman ; else true ;  fi
  1459.   
  1460.   install_man: $(MAN_LIST) $(MAN)/wnewmail$(MANEXT)
  1461.   
  1462. ***************
  1463. *** 181,189 ****
  1464.   uninstall:
  1465.       $(RM) $(LIB_LIST) 
  1466.       @if $(TEST) '$(MAN)' != none; then  \
  1467. !         $(RM) $(MAN_LIST) $(MAN)/wnewmail$(MANEXT) ; fi
  1468.       @if $(TEST) '$(CATMAN)' != none; then \
  1469. !         $(RM) $(CATMAN_LIST) $(CATMAN)/wnewmail$(CATMANEXT)$(SUFFIX) ; fi
  1470.   
  1471.   #    Dependencies and rules for installing man pages and lib files
  1472.   #    taken from a remote system
  1473. --- 203,217 ----
  1474.   uninstall:
  1475.       $(RM) $(LIB_LIST) 
  1476.       @if $(TEST) '$(MAN)' != none; then  \
  1477. !         $(RM) $(MAN_LIST) $(MAN)/wnewmail$(MANEXT) ; \
  1478. !     else \
  1479. !         true ; \
  1480. !     fi \
  1481.       @if $(TEST) '$(CATMAN)' != none; then \
  1482. !         $(RM) $(CATMAN_LIST) $(CATMAN)/wnewmail$(CATMANEXT)$(SUFFIX) ; \
  1483. !     else \
  1484. !         true ; \
  1485. !     fi \
  1486.   
  1487.   #    Dependencies and rules for installing man pages and lib files
  1488.   #    taken from a remote system
  1489. ***************
  1490. *** 348,414 ****
  1491.   catman/answer$(CATMANEXT)$(SUFFIX):        answer.1
  1492.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/answer$(CATMANEXT)
  1493.       @if $(TEST) "$(PACKED)" = y ; then \
  1494. !         $(PACKER) catman/answer$(CATMANEXT) ; fi
  1495.   
  1496.   catman/autoreply$(CATMANEXT)$(SUFFIX):        autoreply.1
  1497.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/autoreply$(CATMANEXT)
  1498. !     @if $(TEST) -n "$(PACKED)" ; then \
  1499. !         $(PACKER) catman/autoreply$(CATMANEXT) ; fi
  1500.   
  1501.   catman/checkalias$(CATMANEXT)$(SUFFIX):        chkalias.1
  1502.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/checkalias$(CATMANEXT)
  1503.       @if $(TEST) "$(PACKED)" = y ; then \
  1504. !         $(PACKER) catman/checkalias$(CATMANEXT) ; fi
  1505.   
  1506.   catman/elm$(CATMANEXT)$(SUFFIX):        elm.1
  1507.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/elm$(CATMANEXT)
  1508.       @if $(TEST) "$(PACKED)" = y ; then \
  1509. !         $(PACKER) catman/elm$(CATMANEXT) ; fi
  1510.   
  1511.   catman/fastmail$(CATMANEXT)$(SUFFIX):        fastmail.1
  1512.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/fastmail$(CATMANEXT)
  1513.       @if $(TEST) "$(PACKED)" = y ; then \
  1514. !         $(PACKER) catman/fastmail$(CATMANEXT) ; fi
  1515.   
  1516.   catman/filter$(CATMANEXT)$(SUFFIX):        filter.1
  1517.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/filter$(CATMANEXT)
  1518.       @if $(TEST) "$(PACKED)" = y ; then \
  1519. !         $(PACKER) catman/filter$(CATMANEXT) ; fi
  1520.   
  1521.   catman/frm$(CATMANEXT)$(SUFFIX):        frm.1
  1522.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/frm$(CATMANEXT)
  1523.       @if $(TEST) "$(PACKED)" = y ; then \
  1524. !         $(PACKER) catman/frm$(CATMANEXT) ; fi
  1525.   
  1526.   catman/listalias$(CATMANEXT)$(SUFFIX):        listalias.1
  1527.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/listalias$(CATMANEXT)
  1528.       @if $(TEST) "$(PACKED)" = y ; then \
  1529. !         $(PACKER) catman/listalias$(CATMANEXT) ; fi
  1530.   
  1531.   catman/messages$(CATMANEXT)$(SUFFIX):        messages.1
  1532.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/messages$(CATMANEXT)
  1533.       @if $(TEST) "$(PACKED)" = y ; then \
  1534. !         $(PACKER) catman/messages$(CATMANEXT) ; fi
  1535.   
  1536.   catman/newalias$(CATMANEXT)$(SUFFIX):        newalias.1
  1537.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/newalias$(CATMANEXT)
  1538.       @if $(TEST) "$(PACKED)" = y ; then \
  1539. !         $(PACKER) catman/newalias$(CATMANEXT) ; fi
  1540.   
  1541.   catman/newmail$(CATMANEXT)$(SUFFIX):        newmail.1
  1542.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/newmail$(CATMANEXT)
  1543.       @if $(TEST) "$(PACKED)" = y ; then \
  1544. !         $(PACKER) catman/newmail$(CATMANEXT) ; fi
  1545.   
  1546.   catman/printmail$(CATMANEXT)$(SUFFIX):        printmail.1
  1547.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/printmail$(CATMANEXT)
  1548.       @if $(TEST) "$(PACKED)" = y ; then \
  1549. !         $(PACKER) catman/printmail$(CATMANEXT) ; fi
  1550.   
  1551.   catman/readmsg$(CATMANEXT)$(SUFFIX):        readmsg.1
  1552.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/readmsg$(CATMANEXT)
  1553.       @if $(TEST) "$(PACKED)" = y ; then \
  1554. !         $(PACKER) catman/readmsg$(CATMANEXT) ; fi
  1555.   
  1556.   
  1557.   #    Dependencies and rules for formatting guides
  1558. --- 376,494 ----
  1559.   catman/answer$(CATMANEXT)$(SUFFIX):        answer.1
  1560.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/answer$(CATMANEXT)
  1561.       @if $(TEST) "$(PACKED)" = y ; then \
  1562. !         $(RM) $@ ; \
  1563. !         $(PACKER) catman/answer$(CATMANEXT) ; \
  1564. !     else \
  1565. !         true ; \
  1566. !     fi
  1567.   
  1568.   catman/autoreply$(CATMANEXT)$(SUFFIX):        autoreply.1
  1569.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/autoreply$(CATMANEXT)
  1570. !     @if $(TEST) "$(PACKED)" = y ; then \
  1571. !         $(RM) $@ ; \
  1572. !         $(PACKER) catman/autoreply$(CATMANEXT) ; \
  1573. !     else \
  1574. !         true ; \
  1575. !     fi
  1576.   
  1577.   catman/checkalias$(CATMANEXT)$(SUFFIX):        chkalias.1
  1578.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/checkalias$(CATMANEXT)
  1579.       @if $(TEST) "$(PACKED)" = y ; then \
  1580. !         $(RM) $@ ; \
  1581. !         $(PACKER) catman/checkalias$(CATMANEXT) ; \
  1582. !     else \
  1583. !         true ; \
  1584. !     fi
  1585.   
  1586.   catman/elm$(CATMANEXT)$(SUFFIX):        elm.1
  1587.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/elm$(CATMANEXT)
  1588.       @if $(TEST) "$(PACKED)" = y ; then \
  1589. !         $(RM) $@ ; \
  1590. !         $(PACKER) catman/elm$(CATMANEXT) ; \
  1591. !     else \
  1592. !         true ; \
  1593. !     fi
  1594.   
  1595.   catman/fastmail$(CATMANEXT)$(SUFFIX):        fastmail.1
  1596.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/fastmail$(CATMANEXT)
  1597.       @if $(TEST) "$(PACKED)" = y ; then \
  1598. !         $(RM) $@ ; \
  1599. !         $(PACKER) catman/fastmail$(CATMANEXT) ; \
  1600. !     else \
  1601. !         true ; \
  1602. !     fi
  1603.   
  1604.   catman/filter$(CATMANEXT)$(SUFFIX):        filter.1
  1605.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/filter$(CATMANEXT)
  1606.       @if $(TEST) "$(PACKED)" = y ; then \
  1607. !         $(RM) $@ ; \
  1608. !         $(PACKER) catman/filter$(CATMANEXT) ; \
  1609. !     else \
  1610. !         true ; \
  1611. !     fi
  1612.   
  1613.   catman/frm$(CATMANEXT)$(SUFFIX):        frm.1
  1614.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/frm$(CATMANEXT)
  1615.       @if $(TEST) "$(PACKED)" = y ; then \
  1616. !         $(RM) $@ ; \
  1617. !         $(PACKER) catman/frm$(CATMANEXT) ; \
  1618. !     else \
  1619. !         true ; \
  1620. !     fi
  1621.   
  1622.   catman/listalias$(CATMANEXT)$(SUFFIX):        listalias.1
  1623.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/listalias$(CATMANEXT)
  1624.       @if $(TEST) "$(PACKED)" = y ; then \
  1625. !         $(RM) $@ ; \
  1626. !         $(PACKER) catman/listalias$(CATMANEXT) ; \
  1627. !     else \
  1628. !         true ; \
  1629. !     fi
  1630.   
  1631.   catman/messages$(CATMANEXT)$(SUFFIX):        messages.1
  1632.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/messages$(CATMANEXT)
  1633.       @if $(TEST) "$(PACKED)" = y ; then \
  1634. !         $(RM) $@ ; \
  1635. !         $(PACKER) catman/messages$(CATMANEXT) ; \
  1636. !     else \
  1637. !         true ; \
  1638. !     fi
  1639.   
  1640.   catman/newalias$(CATMANEXT)$(SUFFIX):        newalias.1
  1641.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/newalias$(CATMANEXT)
  1642.       @if $(TEST) "$(PACKED)" = y ; then \
  1643. !         $(RM) $@ ; \
  1644. !         $(PACKER) catman/newalias$(CATMANEXT) ; \
  1645. !     else \
  1646. !         true ; \
  1647. !     fi
  1648.   
  1649.   catman/newmail$(CATMANEXT)$(SUFFIX):        newmail.1
  1650.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/newmail$(CATMANEXT)
  1651.       @if $(TEST) "$(PACKED)" = y ; then \
  1652. !         $(RM) $@ ; \
  1653. !         $(PACKER) catman/newmail$(CATMANEXT) ; \
  1654. !     else \
  1655. !         true ; \
  1656. !     fi
  1657.   
  1658.   catman/printmail$(CATMANEXT)$(SUFFIX):        printmail.1
  1659.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/printmail$(CATMANEXT)
  1660.       @if $(TEST) "$(PACKED)" = y ; then \
  1661. !         $(RM) $@ ; \
  1662. !         $(PACKER) catman/printmail$(CATMANEXT) ; \
  1663. !     else \
  1664. !         true ; \
  1665. !     fi
  1666.   
  1667.   catman/readmsg$(CATMANEXT)$(SUFFIX):        readmsg.1
  1668.       $(MANROFF) $(MANROFF_OPTS) -man $? > catman/readmsg$(CATMANEXT)
  1669.       @if $(TEST) "$(PACKED)" = y ; then \
  1670. !         $(RM) $@ ; \
  1671. !         $(PACKER) catman/readmsg$(CATMANEXT) ; \
  1672. !     else \
  1673. !         true ; \
  1674. !     fi
  1675.   
  1676.   
  1677.   #    Dependencies and rules for formatting guides
  1678.  
  1679. Index: doc/Ref.guide
  1680. Prereq: 5.11
  1681. *** ../elm2.4/doc/Ref.guide    Tue Nov 10 15:20:22 1992
  1682. --- doc/Ref.guide    Fri Dec 11 20:27:42 1992
  1683. ***************
  1684. *** 1,4 ****
  1685. ! .\" @(#)$Id: Ref.guide,v 5.11 1992/11/07 19:37:21 syd Exp $
  1686.   .\"
  1687.   .\"  Reference guide to the Elm mail system.
  1688.   .\"  format with 
  1689. --- 1,4 ----
  1690. ! .\" @(#)$Id: Ref.guide,v 5.13 1992/12/12 01:27:41 syd Exp $
  1691.   .\"
  1692.   .\"  Reference guide to the Elm mail system.
  1693.   .\"  format with 
  1694. ***************
  1695. *** 12,17 ****
  1696. --- 12,26 ----
  1697.   .\"  (C) Copyright 1988-1992 Usenet Community Trust
  1698.   .\"
  1699.   .\"  $Log: Ref.guide,v $
  1700. + .\" Revision 5.13  1992/12/12  01:27:41  syd
  1701. + .\" Make verb and pronoun agree.
  1702. + .\" From: dwolfe@pffft.sps.mot.com (Dave Wolfe)
  1703. + .\"
  1704. + .\" Revision 5.12  1992/12/07  02:41:21  syd
  1705. + .\" This implements the use of SIGUSR1 and SIGUSR2 as discussed on the
  1706. + .\" mailing list recently, and adds them to the documentation.
  1707. + .\" From: scs@lokkur.dexter.mi.us (Steve Simmons)
  1708. + .\"
  1709.   .\" Revision 5.11  1992/11/07  19:37:21  syd
  1710.   .\" Enhanced printing support.  Added "-I" to readmsg to
  1711.   .\" suppress spurious diagnostic messages.
  1712. ***************
  1713. *** 388,394 ****
  1714.   This variable is only valid in the system wide \f2elm.rc\f1 file.
  1715.   It is only necessary if the value returned by the getdomainname and
  1716.   gethostname system calls are incorrect for your mail use or if those
  1717. ! system call is unavailable on your system.  It is also required if either
  1718.   hostdomain or hostname are used within the system wide \f2elm.rc\f1 file.
  1719.   
  1720.   .lp hostname 1.0i
  1721. --- 397,403 ----
  1722.   This variable is only valid in the system wide \f2elm.rc\f1 file.
  1723.   It is only necessary if the value returned by the getdomainname and
  1724.   gethostname system calls are incorrect for your mail use or if those
  1725. ! system calls are unavailable on your system.  It is also required if either
  1726.   hostdomain or hostname are used within the system wide \f2elm.rc\f1 file.
  1727.   
  1728.   .lp hostname 1.0i
  1729. ***************
  1730. *** 2085,2090 ****
  1731. --- 2094,2157 ----
  1732.   Additionally, the movement keys (`j', `k', `+', `-', etc.) work in the
  1733.   same fashion as on the main menu.  (See the previous section on
  1734.   \f2Commands\f1 in this guide.)
  1735. + .br
  1736. + .ne 5
  1737. + .sp
  1738. + .hn 1 Elm and Signals
  1739. + \f2Elm\f1 can handle several standard UNIX \f2signals\fR to do
  1740. + some special processing.
  1741. + \f2Signals\f1 are interrupt messages sent from one program to
  1742. + another.  No detailed messages are sent, but a properly configured
  1743. + program (such as \f2elm\f1) can watch for and handle these signals.
  1744. + In particular, \f2elm\fR watches for the following \f2signals\f1
  1745. + and takes these actions:
  1746. + .ip \f2ALRM\f1
  1747. + This is the alarm clock signal or time warning.
  1748. + Elm uses this to wake itself up periodically and check for
  1749. + new mail.
  1750. + .ip \f2HUP\f1
  1751. + This is the hangup notice.
  1752. + It means that the terminal/modem/whatever which you have been using
  1753. + with \f2elm\f1 has become detached from the system where \f2elm\f1
  1754. + was running.
  1755. + When \f2elm\f1 gets this signal, it aborts all the pending operations
  1756. + and exits leaving your mailbox unchanged.
  1757. + .ip \f2USR1\f1
  1758. + This is the first user-definable signal.
  1759. + When \f2elm\f1 gets this signal, it recieves any pending mail,
  1760. + performs all the pending operations (deletes), and exits
  1761. + leaving all unread mail marked as new.
  1762. + This is the same as giving the \f2$\f1 and \f2X\fR commands.
  1763. + .ip \f2USR2\f1
  1764. + This is the second user-definable signal.
  1765. + When \f2elm\f1 gets this signal, it recieves any pending mail,
  1766. + performs all the pending operations (deletes), and exits
  1767. + leaving all unread mail marked as old.
  1768. + This is the same as giving the \f2$\f1 and \f2Q\fR commands.
  1769. + You would only use these signals youself under the most unusual
  1770. + circumstances.  For example, suppose you were using \f2elm\fR
  1771. + to read mail on \f2host_1\fR.  You have many messages, most of
  1772. + which have been read and filed (and therefore deleted), or simply
  1773. + deleted.  You have not yet resynchronized your mailbox (\f2$\f1
  1774. + command).  Now you go to lunch.
  1775. + On your return, you're stopped at the door and told to take care
  1776. + of an emergency.  You go to another part of the building, and want
  1777. + to read your mail to see what the emergency is \- but you can't,
  1778. + because \f2elm\f1 is still running at your desk.
  1779. + What you really want is one of the scenarios given in the
  1780. + description of \f2HUP\f1, \f2USR1\f1 or \f2USR2\f1.
  1781. + Use your local \f2ps\f1 command to find out what the \f2process number\f1
  1782. + of your \f2elm\f1 session is.  Then give the command
  1783. + .pp
  1784. + \f2kill -XXX process_number\fR
  1785. + where \f2XXX\f1 is either \f2HUP\f1, \f2USR1\f1 or \f2USR2\f1 and
  1786. + \f2process_number\f1 is the process number for your remote \f2elm\f1 session.
  1787. + Your remote session will terminate with the actions noted above.
  1788.   .br
  1789.   .ne 5
  1790.   .sp
  1791.  
  1792. Index: doc/Users.guide
  1793. Prereq: 5.3
  1794. *** ../elm2.4/doc/Users.guide    Mon Oct 19 13:04:02 1992
  1795. --- doc/Users.guide    Thu Dec 10 21:02:45 1992
  1796. ***************
  1797. *** 1,4 ****
  1798. ! .\" @(#)$Id: Users.guide,v 5.3 1992/10/17 21:59:56 syd Exp $
  1799.   .\"
  1800.   .\"  Users guide to the ELM mail system.
  1801.   .\"  format with:
  1802. --- 1,4 ----
  1803. ! .\" @(#)$Id: Users.guide,v 5.4 1992/12/11 02:01:13 syd Exp $
  1804.   .\"
  1805.   .\"  Users guide to the ELM mail system.
  1806.   .\"  format with:
  1807. ***************
  1808. *** 12,17 ****
  1809. --- 12,21 ----
  1810.   .\"  (C) Copyright 1988-1992 Usenet Community Trust
  1811.   .\"
  1812.   .\"  $Log: Users.guide,v $
  1813. + .\" Revision 5.4  1992/12/11  02:01:13  syd
  1814. + .\" fix Obvious typos.
  1815. + .\" From: dwolfe@pffft.sps.mot.com (Dave Wolfe)
  1816. + .\"
  1817.   .\" Revision 5.3  1992/10/17  21:59:56  syd
  1818.   .\" Fix spelling of name
  1819.   .\" From: Larry Philps <larryp@sco.COM>
  1820. ***************
  1821. *** 201,207 ****
  1822.   and finally, credits and references.
  1823.   
  1824.   \f2The Elm Reference Guide\f1 contains a
  1825. ! much more indepth discussion of all the possible options
  1826.   available within the \f3Elm\f1 environment, including
  1827.   the \f2``.elm/elmrc''\f1 file,
  1828.   the available outbound mail processing features,
  1829. --- 205,211 ----
  1830.   and finally, credits and references.
  1831.   
  1832.   \f2The Elm Reference Guide\f1 contains a
  1833. ! much more in-depth discussion of all the possible options
  1834.   available within the \f3Elm\f1 environment, including
  1835.   the \f2``.elm/elmrc''\f1 file,
  1836.   the available outbound mail processing features,
  1837. ***************
  1838. *** 251,257 ****
  1839.   and read the reference guide.  The other manuals
  1840.   should be read as the need arises.
  1841.   
  1842. ! In any case, the system should be useable without reading
  1843.   \f2any\f1 of the documentation!
  1844.   
  1845.   Any comments or problems with any of the documentation or the program
  1846. --- 255,261 ----
  1847.   and read the reference guide.  The other manuals
  1848.   should be read as the need arises.
  1849.   
  1850. ! In any case, the system should be usable without reading
  1851.   \f2any\f1 of the documentation!
  1852.   
  1853.   Any comments or problems with any of the documentation or the program
  1854. ***************
  1855. *** 478,484 ****
  1856.   .lp \h'18p'<control>-D 90p
  1857.   Delete all messages matching specified pattern.
  1858.   .lp \h'18p'e 90p
  1859. ! Edit current folder, resyncing upon reentry.\s-2\u3\d\s0
  1860.   .fn
  1861.   3. Some sites might opt not to have the edit folder feature available.
  1862.   .ef
  1863. --- 482,488 ----
  1864.   .lp \h'18p'<control>-D 90p
  1865.   Delete all messages matching specified pattern.
  1866.   .lp \h'18p'e 90p
  1867. ! Edit current folder, resyncing upon re-entry.\s-2\u3\d\s0
  1868.   .fn
  1869.   3. Some sites might opt not to have the edit folder feature available.
  1870.   .ef
  1871.  
  1872. Index: doc/answer.1
  1873. *** ../elm2.4/doc/answer.1    Mon Oct 19 13:04:02 1992
  1874. --- doc/answer.1    Thu Dec 10 21:02:45 1992
  1875. ***************
  1876. *** 20,27 ****
  1877.   included in the standard .elm directory alias files.
  1878.   It can also use
  1879.   its own alias set (usually a subset of the
  1880. ! system aliases, with more fields per user (ie unique first
  1881. ! names, unique last names, first-initial lastname, and so on)).
  1882.   Note that if you want to use this capability, it
  1883.   means that you must create this alias set and then install it, using
  1884.   .I newalias,
  1885. --- 20,27 ----
  1886.   included in the standard .elm directory alias files.
  1887.   It can also use
  1888.   its own alias set (usually a subset of the
  1889. ! system aliases, with more fields per user (i.e. unique first
  1890. ! names, unique last names, first-initial last name, and so on)).
  1891.   Note that if you want to use this capability, it
  1892.   means that you must create this alias set and then install it, using
  1893.   .I newalias,
  1894. ***************
  1895. *** 70,78 ****
  1896.   .SH FILES
  1897.   $HOME/.elm/aliases.text       individual alias source
  1898.   .br
  1899. ! $HOME/.elm/aliases.hash       individual alias hash table
  1900.   .br
  1901. ! $HOME/.elm/aliases.data       individual alias data table
  1902.   .br
  1903.   /tmp/snd.$$                   edit buffer for outgoing mail
  1904.   .SH BUG REPORTS TO
  1905. --- 70,80 ----
  1906.   .SH FILES
  1907.   $HOME/.elm/aliases.text       individual alias source
  1908.   .br
  1909. ! $HOME/.elm/aliases.dir        individual alias dbz directory table
  1910.   .br
  1911. ! $HOME/.elm/aliases.pag        individual alias dbz hash table
  1912. ! .br
  1913. ! $HOME/.elm/aliases            individual alias data table
  1914.   .br
  1915.   /tmp/snd.$$                   edit buffer for outgoing mail
  1916.   .SH BUG REPORTS TO
  1917.  
  1918. Index: doc/elm-help.1
  1919. *** ../elm2.4/doc/elm-help.1    Sat Oct  3 16:54:27 1992
  1920. --- doc/elm-help.1    Thu Dec 10 21:02:46 1992
  1921. ***************
  1922. *** 38,43 ****
  1923.   
  1924.     u     User's expertise level. Change with <space>.
  1925.   
  1926. !   y     Your fullname to be used in outbound mail.
  1927.   
  1928.     X     Exit leaving folder untouched unconditionally
  1929. --- 38,43 ----
  1930.   
  1931.     u     User's expertise level. Change with <space>.
  1932.   
  1933. !   y     Your full name to be used in outbound mail.
  1934.   
  1935.     X     Exit leaving folder untouched unconditionally
  1936.  
  1937. Index: doc/elm.1
  1938. *** ../elm2.4/doc/elm.1    Mon Oct 19 13:04:03 1992
  1939. --- doc/elm.1    Thu Dec 10 21:02:47 1992
  1940. ***************
  1941. *** 22,28 ****
  1942.   .PP
  1943.   .SH DESCRIPTION
  1944.   .I Elm\^
  1945. ! is an interactive screen-oriented mailer program that supercedes 
  1946.   .I mail
  1947.   and 
  1948.   .I mailx.
  1949. --- 22,28 ----
  1950.   .PP
  1951.   .SH DESCRIPTION
  1952.   .I Elm\^
  1953. ! is an interactive screen-oriented mailer program that supersedes 
  1954.   .I mail
  1955.   and 
  1956.   .I mailx.
  1957. ***************
  1958. *** 126,131 ****
  1959. --- 126,138 ----
  1960.   .br
  1961.   /usr/local/lib/aliases.text       system alias source
  1962.   .br
  1963. + /usr/local/lib/aliases.dir        system alias dbz directory table
  1964. + .br
  1965. + /usr/local/lib/aliases.pag        system alias dbz hash table
  1966. + .br
  1967. + /usr/local/lib/aliases            system alias data table
  1968. + .br
  1969. + .br
  1970.   /usr/local/lib/aliases.hash       system alias hash table
  1971.   .br
  1972.   /usr/local/lib/aliases.data       system alias data table
  1973. ***************
  1974. *** 132,140 ****
  1975.   .br
  1976.   $HOME/.elm/aliases.text           user alias source
  1977.   .br
  1978. ! $HOME/.elm/aliases.dir            user alias hash table
  1979.   .br
  1980. ! $HOME/.elm/aliases.pag            user alias hash table
  1981.   .br
  1982.   $HOME/.elm/elmrc                  customized mailer parameters
  1983.   .br
  1984. --- 139,149 ----
  1985.   .br
  1986.   $HOME/.elm/aliases.text           user alias source
  1987.   .br
  1988. ! $HOME/.elm/aliases.dir            user alias dbz directory table
  1989. ! .br
  1990. ! $HOME/.elm/aliases.pag            user alias dbz hash table
  1991.   .br
  1992. ! $HOME/.elm/aliases                user alias data table
  1993.   .br
  1994.   $HOME/.elm/elmrc                  customized mailer parameters
  1995.   .br
  1996.  
  1997. Index: doc/fastmail.1
  1998. *** ../elm2.4/doc/fastmail.1    Mon Oct 19 13:04:04 1992
  1999. --- doc/fastmail.1    Thu Dec 10 21:02:48 1992
  2000. ***************
  2001. *** 59,65 ****
  2002.      # Usage: batch-mail "from" "subject" filename
  2003.   
  2004.      sender_copy = $LOGIN
  2005. !    replto = "The-Mr-Big-list"
  2006.   
  2007.      fastmail -b $sender_copy -r $replyto -f "$1" -s "$2" $3 person1
  2008.      sleep 10
  2009. --- 59,65 ----
  2010.      # Usage: batch-mail "from" "subject" filename
  2011.   
  2012.      sender_copy = $LOGIN
  2013. !    replyto = "The-Mr-Big-list"
  2014.   
  2015.      fastmail -b $sender_copy -r $replyto -f "$1" -s "$2" $3 person1
  2016.      sleep 10
  2017.  
  2018. Index: doc/messages.1
  2019. *** ../elm2.4/doc/messages.1    Mon Oct 19 13:04:04 1992
  2020. --- doc/messages.1    Thu Dec 10 21:02:49 1992
  2021. ***************
  2022. *** 8,14 ****
  2023.   folder-name
  2024.   .SH DESCRIPTION
  2025.   .I Messages
  2026. ! counts the occurances of "^From\ " in either the current incoming 
  2027.   mailbox or the specified folder.
  2028.   .P
  2029.   This is, in fact, a simple little shell script!!
  2030. --- 8,14 ----
  2031.   folder-name
  2032.   .SH DESCRIPTION
  2033.   .I Messages
  2034. ! counts the occurrences of "^From\ " in either the current incoming 
  2035.   mailbox or the specified folder.
  2036.   .P
  2037.   This is, in fact, a simple little shell script!!
  2038.  
  2039. Index: doc/newalias.1
  2040. *** ../elm2.4/doc/newalias.1    Mon Oct 19 13:04:05 1992
  2041. --- doc/newalias.1    Thu Dec 10 21:02:50 1992
  2042. ***************
  2043. *** 11,18 ****
  2044.   .I -g
  2045.   (global) flag, the program updates the system alias files.
  2046.   Otherwise, the program looks for a file called \fI$HOME/.elm/aliases.text\fR
  2047. ! and, upon finding it, creates files \fI$HOME/.elm/aliases.hash\fR and
  2048. ! \fI$HOME/.elm/aliases.data\fR for the
  2049.   .I elm
  2050.   program.
  2051.   .PP
  2052. --- 11,19 ----
  2053.   .I -g
  2054.   (global) flag, the program updates the system alias files.
  2055.   Otherwise, the program looks for a file called \fI$HOME/.elm/aliases.text\fR
  2056. ! and, upon finding it, creates files \fI$HOME/.elm/aliases.dir\fR,
  2057. ! \fI$HOME/.elm/aliases.dir\fR and
  2058. ! \fI$HOME/.elm/aliases\fR for the
  2059.   .I elm
  2060.   program.
  2061.   .PP
  2062. ***************
  2063. *** 60,74 ****
  2064.   .SH FILES
  2065.   $HOME/.elm/aliases.text         alias source for user 
  2066.   .br
  2067. ! $HOME/.elm/aliases.hash         alias hash table for user
  2068.   .br
  2069. ! $HOME/.elm/aliases.data         alias data file for user
  2070.   .br
  2071.   /usr/local/lib/aliases.text     alias source for system
  2072.   .br
  2073. ! /usr/local/lib/aliases.hash     alias hash table for system
  2074.   .br
  2075. ! /usr/local/lib/aliases.data     alias data file for system
  2076.   .SH AUTHOR
  2077.   Elm Development Group
  2078.   .SH SEE ALSO
  2079. --- 61,79 ----
  2080.   .SH FILES
  2081.   $HOME/.elm/aliases.text         alias source for user 
  2082.   .br
  2083. ! $HOME/.elm/aliases.dir          alias dbz directory for user
  2084.   .br
  2085. ! $HOME/.elm/aliases.pag          alias dbz hash file for user
  2086.   .br
  2087. + $HOME/.elm/aliases              alias data file for user
  2088. + .br
  2089.   /usr/local/lib/aliases.text     alias source for system
  2090.   .br
  2091. ! /usr/local/lib/aliases.dir      alias dbz directory for system
  2092. ! .br
  2093. ! /usr/local/lib/aliases.pag      alias data hash table for system
  2094.   .br
  2095. ! /usr/local/lib/aliases          alias data file for system
  2096.   .SH AUTHOR
  2097.   Elm Development Group
  2098.   .SH SEE ALSO
  2099.  
  2100. Index: doc/newmail.1
  2101. *** ../elm2.4/doc/newmail.1    Mon Oct 19 13:04:05 1992
  2102. --- doc/newmail.1    Thu Dec 10 21:02:50 1992
  2103. ***************
  2104. *** 111,117 ****
  2105.       $ \fBnewmail\fR
  2106.   
  2107.   .fi
  2108. ! will check your imcoming mailbox every 60 seconds.
  2109.   .nf
  2110.   
  2111.       $ \fBnewmail  -i  15  joe  root\fR
  2112. --- 111,117 ----
  2113.       $ \fBnewmail\fR
  2114.   
  2115.   .fi
  2116. ! will check your incoming mailbox every 60 seconds.
  2117.   .nf
  2118.   
  2119.       $ \fBnewmail  -i  15  joe  root\fR
  2120.  
  2121. Index: doc/printmail.1
  2122. *** ../elm2.4/doc/printmail.1    Mon Oct 19 13:04:05 1992
  2123. --- doc/printmail.1    Thu Dec 10 21:02:50 1992
  2124. ***************
  2125. *** 11,17 ****
  2126.   default user mailbox with each message separated by a line of dashes.
  2127.   With the
  2128.   .B \-p
  2129. ! option, the messages are separated by a formfeed instead.
  2130.   .sp
  2131.   In fact, this command is actually just a slightly differently
  2132.   formatted call to \fIreadmsg\fR:
  2133. --- 11,17 ----
  2134.   default user mailbox with each message separated by a line of dashes.
  2135.   With the
  2136.   .B \-p
  2137. ! option, the messages are separated by a form feed instead.
  2138.   .sp
  2139.   In fact, this command is actually just a slightly differently
  2140.   formatted call to \fIreadmsg\fR:
  2141.  
  2142. Index: src/fileio.c
  2143. Prereq: 5.2
  2144. *** ../elm2.4/src/fileio.c    Tue Nov 10 15:20:26 1992
  2145. --- src/fileio.c    Thu Dec 10 20:45:34 1992
  2146. ***************
  2147. *** 1,8 ****
  2148.   
  2149. ! static char rcsid[] = "@(#)$Id: fileio.c,v 5.2 1992/11/07 20:05:52 syd Exp $";
  2150.   
  2151.   /*******************************************************************************
  2152. !  *  The Elm Mail System  -  $Revision: 5.2 $   $State: Exp $
  2153.    *
  2154.    *            Copyright (c) 1988-1992 USENET Community Trust
  2155.    *            Copyright (c) 1986,1987 Dave Taylor
  2156. --- 1,8 ----
  2157.   
  2158. ! static char rcsid[] = "@(#)$Id: fileio.c,v 5.6 1992/12/11 01:45:04 syd Exp $";
  2159.   
  2160.   /*******************************************************************************
  2161. !  *  The Elm Mail System  -  $Revision: 5.6 $   $State: Exp $
  2162.    *
  2163.    *            Copyright (c) 1988-1992 USENET Community Trust
  2164.    *            Copyright (c) 1986,1987 Dave Taylor
  2165. ***************
  2166. *** 14,19 ****
  2167. --- 14,38 ----
  2168.    *
  2169.    *******************************************************************************
  2170.    * $Log: fileio.c,v $
  2171. +  * Revision 5.6  1992/12/11  01:45:04  syd
  2172. +  * remove sys/types.h include, it is now included by defs.h
  2173. +  * and this routine includes defs.h or indirectly includes defs.h
  2174. +  * From: Syd
  2175. +  *
  2176. +  * Revision 5.5  1992/12/07  04:23:23  syd
  2177. +  * fix typo
  2178. +  * From: Syd
  2179. +  *
  2180. +  * Revision 5.4  1992/11/26  01:46:26  syd
  2181. +  * add Decode option to copy_message, convert copy_message to
  2182. +  * use bit or for options.
  2183. +  * From: Syd and bjoerns@stud.cs.uit.no (Bjoern Stabell)
  2184. +  *
  2185. +  * Revision 5.3  1992/11/26  00:48:34  syd
  2186. +  * Make it do raw(off) before final error message to
  2187. +  * display error message on proper screen
  2188. +  * From: Syd
  2189. +  *
  2190.    * Revision 5.2  1992/11/07  20:05:52  syd
  2191.    * change to use header_cmp to allow for linear white space around the colon
  2192.    * From: Syd
  2193. ***************
  2194. *** 30,36 ****
  2195.   
  2196.   #include "headers.h"
  2197.   #include "s_elm.h"
  2198. - #include <sys/types.h>
  2199.   #include <sys/stat.h>
  2200.   #include <ctype.h>
  2201.   #include <errno.h>
  2202. --- 49,54 ----
  2203. ***************
  2204. *** 43,58 ****
  2205.   
  2206.   char *error_description(), *index();
  2207.   
  2208.   copy_message(prefix, 
  2209.            dest_file, 
  2210. !          remove_header, 
  2211. !          remote, 
  2212. !          update_status, 
  2213. !          mmdf_head,
  2214. !          remail)
  2215.   char *prefix;
  2216.   FILE *dest_file;
  2217. ! int  remove_header, remote, update_status, mmdf_head, remail;
  2218.   {
  2219.       /** Copy current message to destination file, with optional 'prefix' 
  2220.           as the prefix for each line.  If remove_header is true, it will 
  2221. --- 61,82 ----
  2222.   
  2223.   char *error_description(), *index();
  2224.   
  2225. + static void copy_write_error_exit()
  2226. + {
  2227. +     MoveCursor(LINES, 0);
  2228. +     Raw(OFF);
  2229. +     printf(catgets(elm_msg_cat, ElmSet, ElmWriteCopyMessageFailed,
  2230. +         "\nWrite in copy_message failed\n"));
  2231. +     dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2232. +     rm_temps_exit();
  2233. + }
  2234.   copy_message(prefix, 
  2235.            dest_file, 
  2236. !          cm_options)
  2237.   char *prefix;
  2238.   FILE *dest_file;
  2239. ! int cm_options;
  2240.   {
  2241.       /** Copy current message to destination file, with optional 'prefix' 
  2242.           as the prefix for each line.  If remove_header is true, it will 
  2243. ***************
  2244. *** 67,72 ****
  2245. --- 91,99 ----
  2246.   
  2247.           If "update_status" is true then it will write a new Status:
  2248.           line at the end of the headers.  It never copies an existing one.
  2249. +         If "decode" is true, prompt for key if the message is encrypted,
  2250. +         else just copy it as it is.
  2251.       **/
  2252.   
  2253.       char buffer[SLEN];
  2254. ***************
  2255. *** 73,78 ****
  2256. --- 100,110 ----
  2257.       register struct header_rec *current_header = headers[current-1];
  2258.       register int  lines, front_line, next_front,
  2259.             in_header = 1, first_line = TRUE, ignoring = FALSE;
  2260. +     int remove_header = cm_options & CM_REMOVE_HEADER;
  2261. +     int remote = cm_options & CM_REMOTE;
  2262. +     int update_status = cm_options & CM_UPDATE_STATUS;
  2263. +     int remail = cm_options & CM_REMAIL;
  2264. +     int decode = cm_options & CM_DECODE;
  2265.       int    end_header = 0;
  2266.       int sender_added = 0;
  2267.       int crypted = 0;
  2268. ***************
  2269. *** 99,105 ****
  2270.       if (forwarding)
  2271.         remove_header = FALSE;
  2272.   
  2273. !     if (current_header->encrypted && !strcmp(prefixchars, prefix)) {
  2274.       getkey(OFF);
  2275.       }
  2276.   
  2277. --- 131,137 ----
  2278.       if (forwarding)
  2279.         remove_header = FALSE;
  2280.   
  2281. !     if (current_header->encrypted && decode) {
  2282.       getkey(OFF);
  2283.       }
  2284.   
  2285. ***************
  2286. *** 127,133 ****
  2287.       continue;
  2288.   
  2289.   #ifdef MMDF
  2290. !       if (mmdf_head && strcmp(buffer, MSG_SEPARATOR) == 0)
  2291.       continue;
  2292.   #endif /* MMDF */
  2293.   
  2294. --- 159,165 ----
  2295.       continue;
  2296.   
  2297.   #ifdef MMDF
  2298. !       if ((cm_options & CM_MMDF_HEAD) && strcmp(buffer, MSG_SEPARATOR) == 0)
  2299.       continue;
  2300.   #endif /* MMDF */
  2301.   
  2302. ***************
  2303. *** 139,148 ****
  2304.         end_header = -1;
  2305.         if (remail && !sender_added) {
  2306.           if (fprintf(dest_file, "%sSender: %s\n", prefix, username) == EOF) {
  2307. !           Write_to_screen(catgets(elm_msg_cat, ElmSet, ElmWriteCopyMessageFailed,
  2308. !         "\n\rWrite in copy_message failed\n\r"), 0);
  2309. !           dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2310. !           rm_temps_exit();
  2311.           }
  2312.         }
  2313.       }
  2314. --- 171,177 ----
  2315.         end_header = -1;
  2316.         if (remail && !sender_added) {
  2317.           if (fprintf(dest_file, "%sSender: %s\n", prefix, username) == EOF) {
  2318. !           copy_write_error_exit();
  2319.           }
  2320.         }
  2321.       }
  2322. ***************
  2323. *** 156,174 ****
  2324.         end_header = 1;
  2325.         if (remail && !sender_added) {
  2326.           if (fprintf(dest_file, "%sSender: %s\n", prefix, username) == EOF) {
  2327. !           Write_to_screen(catgets(elm_msg_cat, ElmSet, ElmWriteCopyMessageFailed,
  2328. !         "\n\rWrite in copy_message failed\n\r"), 0);
  2329. !           dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2330. !           rm_temps_exit();
  2331.           }
  2332.         }
  2333.       } else if (in_header && remote && header_cmp(buffer, "Sender", NULL)) {
  2334.         if (remail)
  2335.           if (fprintf(dest_file, "%sSender: %s\n", prefix, username) == EOF) {
  2336. !           Write_to_screen(catgets(elm_msg_cat, ElmSet, ElmWriteCopyMessageFailed,
  2337. !         "\n\rWrite in copy_message failed\n\r"), 0);
  2338. !           dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2339. !           rm_temps_exit();
  2340.           }
  2341.         sender_added = TRUE;
  2342.         continue;
  2343. --- 185,197 ----
  2344.         end_header = 1;
  2345.         if (remail && !sender_added) {
  2346.           if (fprintf(dest_file, "%sSender: %s\n", prefix, username) == EOF) {
  2347. !           copy_write_error_exit();
  2348.           }
  2349.         }
  2350.       } else if (in_header && remote && header_cmp(buffer, "Sender", NULL)) {
  2351.         if (remail)
  2352.           if (fprintf(dest_file, "%sSender: %s\n", prefix, username) == EOF) {
  2353. !           copy_write_error_exit();
  2354.           }
  2355.         sender_added = TRUE;
  2356.         continue;
  2357. ***************
  2358. *** 178,187 ****
  2359.             if (isoff(current_header->status, NEW)) {
  2360.           if (ison(current_header->status, UNREAD)) {
  2361.             if (fprintf(dest_file, "%sStatus: O\n", prefix) == EOF) {
  2362. !             Write_to_screen(catgets(elm_msg_cat, ElmSet, ElmWriteCopyMessageFailed,
  2363. !               "\n\rWrite in copy_message failed\n\r"), 0);
  2364. !             dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2365. !             rm_temps_exit();
  2366.             }
  2367.           } else    /* read */
  2368.   #ifdef BSD
  2369. --- 201,207 ----
  2370.             if (isoff(current_header->status, NEW)) {
  2371.           if (ison(current_header->status, UNREAD)) {
  2372.             if (fprintf(dest_file, "%sStatus: O\n", prefix) == EOF) {
  2373. !             copy_write_error_exit();
  2374.             }
  2375.           } else    /* read */
  2376.   #ifdef BSD
  2377. ***************
  2378. *** 189,198 ****
  2379.   #else
  2380.             if (fprintf(dest_file, "%sStatus: RO\n", prefix) == EOF) {
  2381.   #endif
  2382. !             Write_to_screen(catgets(elm_msg_cat, ElmSet, ElmWriteCopyMessageFailed,
  2383. !               "\n\rWrite in copy_message failed\n\r"), 0);
  2384. !             dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2385. !             rm_temps_exit();
  2386.             }
  2387.           update_status = FALSE; /* do it only once */
  2388.             }    /* else if NEW - indicate NEW with no Status: line. This is
  2389. --- 209,215 ----
  2390.   #else
  2391.             if (fprintf(dest_file, "%sStatus: RO\n", prefix) == EOF) {
  2392.   #endif
  2393. !             copy_write_error_exit();
  2394.             }
  2395.           update_status = FALSE; /* do it only once */
  2396.             }    /* else if NEW - indicate NEW with no Status: line. This is
  2397. ***************
  2398. *** 209,218 ****
  2399.             if (end_header > 0) {
  2400.           /* add the missing newline for RFC 822 */
  2401.           if (fprintf(dest_file, "\n") == EOF) {
  2402. !           Write_to_screen(catgets(elm_msg_cat, ElmSet, ElmWriteCopyMessageFailed,
  2403. !             "\n\rWrite in copy_message failed\n\r"), 0);
  2404. !           dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2405. !           rm_temps_exit();
  2406.           }
  2407.             }
  2408.         }
  2409. --- 226,232 ----
  2410.             if (end_header > 0) {
  2411.           /* add the missing newline for RFC 822 */
  2412.           if (fprintf(dest_file, "\n") == EOF) {
  2413. !           copy_write_error_exit();
  2414.           }
  2415.             }
  2416.         }
  2417. ***************
  2418. *** 233,258 ****
  2419.   #ifndef MMDF
  2420.         if (fprintf(dest_file, "%s%s remote from %s\n",
  2421.             prefix, buffer, hostname) == EOF) {
  2422. !         Write_to_screen(catgets(elm_msg_cat, ElmSet, ElmWriteCopyMessageFailed,
  2423. !           "\n\rWrite in copy_message failed\n\r"), 0);
  2424. !         dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2425. !         rm_temps_exit();
  2426.         }
  2427.   #else
  2428.         if (first_word(buffer, "From ")) {
  2429.           if (fprintf(dest_file, "%s%s remote from %s\n",
  2430.               prefix, buffer, hostname) == EOF) {
  2431. !         Write_to_screen(catgets(elm_msg_cat, ElmSet, ElmWriteCopyMessageFailed,
  2432. !           "\n\rWrite in copy_message failed\n\r"), 0);
  2433. !         dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2434. !         rm_temps_exit();
  2435.           }
  2436.         } else {
  2437.           if (fprintf(dest_file, "%s%s\n", prefix, buffer) == EOF) {
  2438. !         Write_to_screen(catgets(elm_msg_cat, ElmSet, ElmWriteCopyMessageFailed,
  2439. !           "\n\rWrite in copy_message failed\n\r"), 0);
  2440. !         dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2441. !         rm_temps_exit();
  2442.           }
  2443.         }
  2444.   #endif /* MMDF */
  2445. --- 247,263 ----
  2446.   #ifndef MMDF
  2447.         if (fprintf(dest_file, "%s%s remote from %s\n",
  2448.             prefix, buffer, hostname) == EOF) {
  2449. !         copy_write_error_exit();
  2450.         }
  2451.   #else
  2452.         if (first_word(buffer, "From ")) {
  2453.           if (fprintf(dest_file, "%s%s remote from %s\n",
  2454.               prefix, buffer, hostname) == EOF) {
  2455. !         copy_write_error_exit();
  2456.           }
  2457.         } else {
  2458.           if (fprintf(dest_file, "%s%s\n", prefix, buffer) == EOF) {
  2459. !         copy_write_error_exit();
  2460.           }
  2461.         }
  2462.   #endif /* MMDF */
  2463. ***************
  2464. *** 263,270 ****
  2465.       if (!forwarding) {
  2466.         if(! header_cmp(buffer, "Status", NULL)) {
  2467.           if (fprintf(dest_file, "%s%s", prefix, buffer) == EOF) {
  2468. !               dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2469. !           rm_temps_exit();
  2470.             }
  2471.           continue;
  2472.         } else {
  2473. --- 268,274 ----
  2474.       if (!forwarding) {
  2475.         if(! header_cmp(buffer, "Status", NULL)) {
  2476.           if (fprintf(dest_file, "%s%s", prefix, buffer) == EOF) {
  2477. !           copy_write_error_exit();
  2478.             }
  2479.           continue;
  2480.         } else {
  2481. ***************
  2482. *** 282,294 ****
  2483.         else
  2484.           if (remail && header_cmp(buffer, "To", NULL)) {
  2485.             if (fprintf(dest_file, "%sOrig-%s", prefix, buffer) == EOF) {
  2486. !                 dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2487. !             rm_temps_exit();
  2488.             }
  2489.           } else {
  2490.             if (fprintf(dest_file, "%s%s", prefix, buffer) == EOF) {
  2491. !                 dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2492. !             rm_temps_exit();
  2493.             }
  2494.           }
  2495.       }
  2496. --- 286,296 ----
  2497.         else
  2498.           if (remail && header_cmp(buffer, "To", NULL)) {
  2499.             if (fprintf(dest_file, "%sOrig-%s", prefix, buffer) == EOF) {
  2500. !         copy_write_error_exit();
  2501.             }
  2502.           } else {
  2503.             if (fprintf(dest_file, "%s%s", prefix, buffer) == EOF) {
  2504. !         copy_write_error_exit();
  2505.             }
  2506.           }
  2507.       }
  2508. ***************
  2509. *** 297,303 ****
  2510.           /* Process checks that occur after the header area */
  2511.   
  2512.       /* perform encryption checks */
  2513. !     if (buffer[0] == '[' && !strcmp(prefixchars, prefix)) {
  2514.           if (!strncmp(buffer, START_ENCODE, strlen(START_ENCODE))) {
  2515.               crypted = ON;
  2516.           } else if (!strncmp(buffer, END_ENCODE, strlen(END_ENCODE))) {
  2517. --- 299,305 ----
  2518.           /* Process checks that occur after the header area */
  2519.   
  2520.       /* perform encryption checks */
  2521. !     if (buffer[0] == '[' && decode) {
  2522.           if (!strncmp(buffer, START_ENCODE, strlen(START_ENCODE))) {
  2523.               crypted = ON;
  2524.           } else if (!strncmp(buffer, END_ENCODE, strlen(END_ENCODE))) {
  2525. ***************
  2526. *** 330,339 ****
  2527.       if (err != EOF)
  2528.         err = fwrite(buffer, 1, buf_len, dest_file);
  2529.       if (err != buf_len) {
  2530. !       Write_to_screen(catgets(elm_msg_cat, ElmSet, ElmWriteCopyMessageFailed,
  2531. !         "\n\rWrite in copy_message failed\n\r"), 0);
  2532. !       dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2533. !       rm_temps_exit();
  2534.       }
  2535.         }
  2536.       }
  2537. --- 332,338 ----
  2538.       if (err != EOF)
  2539.         err = fwrite(buffer, 1, buf_len, dest_file);
  2540.       if (err != buf_len) {
  2541. !       copy_write_error_exit();
  2542.       }
  2543.         }
  2544.       }
  2545. ***************
  2546. *** 340,349 ****
  2547.   #ifndef MMDF
  2548.       if (buf_len + strlen(prefix) > 1)
  2549.       if (fprintf(dest_file, "\n") == EOF) {    /* blank line to keep mailx happy *sigh* */
  2550. !       Write_to_screen(catgets(elm_msg_cat, ElmSet, ElmWriteCopyMessageFailed,
  2551. !         "\n\rWrite in copy_message failed\n\r"), 0);
  2552. !       dprint(1, (debugfile,"\n*** Fprint failed on copy_message;\n"));
  2553. !       rm_temps_exit();
  2554.       }
  2555.   #endif /* MMDF */
  2556.   }
  2557. --- 339,345 ----
  2558.   #ifndef MMDF
  2559.       if (buf_len + strlen(prefix) > 1)
  2560.       if (fprintf(dest_file, "\n") == EOF) {    /* blank line to keep mailx happy *sigh* */
  2561. !       copy_write_error_exit();
  2562.       }
  2563.   #endif /* MMDF */
  2564.   }
  2565.  
  2566. Index: src/aliaslib.c
  2567. Prereq: 5.2
  2568. *** ../elm2.4/src/aliaslib.c    Mon Oct 12 23:25:53 1992
  2569. --- src/aliaslib.c    Fri Dec 11 20:28:25 1992
  2570. ***************
  2571. *** 1,8 ****
  2572.   
  2573. ! static char rcsid[] = "@(#)$Id: aliaslib.c,v 5.2 1992/10/11 01:21:17 syd Exp $";
  2574.   
  2575.   /*******************************************************************************
  2576. !  *  The Elm Mail System  -  $Revision: 5.2 $   $State: Exp $
  2577.    *
  2578.    *             Copyright (c) 1988-1992 USENET Community Trust
  2579.    *             Copyright (c) 1986,1987 Dave Taylor
  2580. --- 1,8 ----
  2581.   
  2582. ! static char rcsid[] = "@(#)$Id: aliaslib.c,v 5.3 1992/12/12 01:28:24 syd Exp $";
  2583.   
  2584.   /*******************************************************************************
  2585. !  *  The Elm Mail System  -  $Revision: 5.3 $   $State: Exp $
  2586.    *
  2587.    *             Copyright (c) 1988-1992 USENET Community Trust
  2588.    *             Copyright (c) 1986,1987 Dave Taylor
  2589. ***************
  2590. *** 14,19 ****
  2591. --- 14,23 ----
  2592.    *
  2593.    *******************************************************************************
  2594.    * $Log: aliaslib.c,v $
  2595. +  * Revision 5.3  1992/12/12  01:28:24  syd
  2596. +  * in do_get_alias().  abuf[] was under dimensioned.
  2597. +  * From: "Robert L. Howard" <robert.howard@matd.gatech.edu>
  2598. +  *
  2599.    * Revision 5.2  1992/10/11  01:21:17  syd
  2600.    * 1. If firstname && lastname is null then copy aliasname into the
  2601.    * personal name field (inside the ()'s) when creating an alias
  2602. ***************
  2603. *** 91,97 ****
  2604.   int depth;    /* recursion depth - initially call at depth=0        */
  2605.   {
  2606.       struct alias_rec *match;
  2607. !     char abuf[LONG_STRING];
  2608.       int loc;
  2609.   
  2610.       /* update the recursion depth counter */
  2611. --- 95,101 ----
  2612.   int depth;    /* recursion depth - initially call at depth=0        */
  2613.   {
  2614.       struct alias_rec *match;
  2615. !     char abuf[VERY_LONG_STRING];
  2616.       int loc;
  2617.   
  2618.       /* update the recursion depth counter */
  2619.  
  2620. Index: lib/can_access.c
  2621. Prereq: 5.1
  2622. *** ../elm2.4/lib/can_access.c    Sat Oct  3 18:42:21 1992
  2623. --- lib/can_access.c    Fri Dec 11 20:29:27 1992
  2624. ***************
  2625. *** 1,8 ****
  2626.   
  2627. ! static char rcsid[] = "@(#)$Id: can_access.c,v 5.1 1992/10/03 22:41:36 syd Exp $";
  2628.   
  2629.   /*******************************************************************************
  2630. !  *  The Elm Mail System  -  $Revision: 5.1 $   $State: Exp $
  2631.    *
  2632.    *            Copyright (c) 1988-1992 USENET Community Trust
  2633.    *            Copyright (c) 1986,1987 Dave Taylor
  2634. --- 1,8 ----
  2635.   
  2636. ! static char rcsid[] = "@(#)$Id: can_access.c,v 5.2 1992/12/12 01:29:26 syd Exp $";
  2637.   
  2638.   /*******************************************************************************
  2639. !  *  The Elm Mail System  -  $Revision: 5.2 $   $State: Exp $
  2640.    *
  2641.    *            Copyright (c) 1988-1992 USENET Community Trust
  2642.    *            Copyright (c) 1986,1987 Dave Taylor
  2643. ***************
  2644. *** 14,19 ****
  2645. --- 14,23 ----
  2646.    *
  2647.    *******************************************************************************
  2648.    * $Log: can_access.c,v $
  2649. +  * Revision 5.2  1992/12/12  01:29:26  syd
  2650. +  * Fix double inclusion of sys/types.h
  2651. +  * From: Tom Moore <tmoore@wnas.DaytonOH.NCR.COM>
  2652. +  *
  2653.    * Revision 5.1  1992/10/03  22:41:36  syd
  2654.    * Initial checkin as of 2.4 Release at PL0
  2655.    *
  2656. ***************
  2657. *** 25,31 ****
  2658.   **/
  2659.   
  2660.   #include "headers.h"
  2661. - #include <sys/types.h>
  2662.   #include <sys/stat.h>
  2663.   #include <ctype.h>
  2664.   #include <errno.h>
  2665. --- 29,34 ----
  2666.  
  2667. Index: lib/can_open.c
  2668. Prereq: 5.1
  2669. *** ../elm2.4/lib/can_open.c    Sat Oct  3 18:42:22 1992
  2670. --- lib/can_open.c    Fri Dec 11 20:29:27 1992
  2671. ***************
  2672. *** 1,8 ****
  2673.   
  2674. ! static char rcsid[] = "@(#)$Id: can_open.c,v 5.1 1992/10/03 22:41:36 syd Exp $";
  2675.   
  2676.   /*******************************************************************************
  2677. !  *  The Elm Mail System  -  $Revision: 5.1 $   $State: Exp $
  2678.    *
  2679.    *            Copyright (c) 1988-1992 USENET Community Trust
  2680.    *            Copyright (c) 1986,1987 Dave Taylor
  2681. --- 1,8 ----
  2682.   
  2683. ! static char rcsid[] = "@(#)$Id: can_open.c,v 5.2 1992/12/12 01:29:26 syd Exp $";
  2684.   
  2685.   /*******************************************************************************
  2686. !  *  The Elm Mail System  -  $Revision: 5.2 $   $State: Exp $
  2687.    *
  2688.    *            Copyright (c) 1988-1992 USENET Community Trust
  2689.    *            Copyright (c) 1986,1987 Dave Taylor
  2690. ***************
  2691. *** 14,19 ****
  2692. --- 14,23 ----
  2693.    *
  2694.    *******************************************************************************
  2695.    * $Log: can_open.c,v $
  2696. +  * Revision 5.2  1992/12/12  01:29:26  syd
  2697. +  * Fix double inclusion of sys/types.h
  2698. +  * From: Tom Moore <tmoore@wnas.DaytonOH.NCR.COM>
  2699. +  *
  2700.    * Revision 5.1  1992/10/03  22:41:36  syd
  2701.    * Initial checkin as of 2.4 Release at PL0
  2702.    *
  2703. ***************
  2704. *** 25,31 ****
  2705.   **/
  2706.   
  2707.   #include "headers.h"
  2708. - #include <sys/types.h>
  2709.   #include <sys/stat.h>
  2710.   #include <ctype.h>
  2711.   #include <errno.h>
  2712. --- 29,34 ----
  2713.  
  2714. Index: lib/ndbz.c
  2715. Prereq: 5.2
  2716. *** ../elm2.4/lib/ndbz.c    Mon Oct 12 23:25:52 1992
  2717. --- lib/ndbz.c    Fri Dec 11 20:29:28 1992
  2718. ***************
  2719. *** 1,7 ****
  2720. ! static char rcsid[] = "@(#)$Id: ndbz.c,v 5.2 1992/10/11 01:46:35 syd Exp $";
  2721.   
  2722.   /*******************************************************************************
  2723. !  *  The Elm Mail System  -  $Revision: 5.2 $   $State: Exp $
  2724.    *
  2725.    *            Copyright (c) 1988-1992 USENET Community Trust
  2726.    *            Copyright (c) 1986,1987 Dave Taylor
  2727. --- 1,7 ----
  2728. ! static char rcsid[] = "@(#)$Id: ndbz.c,v 5.3 1992/12/12 01:29:26 syd Exp $";
  2729.   
  2730.   /*******************************************************************************
  2731. !  *  The Elm Mail System  -  $Revision: 5.3 $   $State: Exp $
  2732.    *
  2733.    *            Copyright (c) 1988-1992 USENET Community Trust
  2734.    *            Copyright (c) 1986,1987 Dave Taylor
  2735. ***************
  2736. *** 13,18 ****
  2737. --- 13,22 ----
  2738.    *
  2739.    *******************************************************************************
  2740.    * $Log: ndbz.c,v $
  2741. +  * Revision 5.3  1992/12/12  01:29:26  syd
  2742. +  * Fix double inclusion of sys/types.h
  2743. +  * From: Tom Moore <tmoore@wnas.DaytonOH.NCR.COM>
  2744. +  *
  2745.    * Revision 5.2  1992/10/11  01:46:35  syd
  2746.    * change dbm name to dbz to avoid conflicts with partial call
  2747.    * ins from shared librarys, and from mixing code with yp code.
  2748. ***************
  2749. *** 57,63 ****
  2750.   */
  2751.   
  2752.   #include "headers.h"
  2753. - #include <sys/types.h>
  2754.   #include <ctype.h>
  2755.   #include <errno.h>
  2756.   #ifndef ANSI_C
  2757. --- 61,66 ----
  2758.  
  2759. -- 
  2760. ========================================================================
  2761. Sydney S. Weinstein, CDP, CCP          Elm Coordinator - Current 2.4PL17
  2762. Datacomp Systems, Inc.                 Projected 3.0 Release: ??? ?,1994
  2763. syd@DSI.COM or dsinc!syd      Voice: (215) 947-9900, FAX: (215) 938-0235
  2764.