home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1992 March / Source_Code_CD-ROM_Walnut_Creek_March_1992.iso / usenet / compsrcs / misc / volume03 / dnamail < prev    next >
SHell self-extracting ARchive  |  1991-08-27  |  45.6 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was processed as: SHell self-extracting ARchive (archive/shar).

You can browse this item here: dnamail

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert Newsgroup Content (archive/news) magic Supported
100% dexvert SHell self-extracting ARchive (archive/shar) magic Supported
1% dexvert Text File (text/txt) fallback Supported
100% file news text default
99% file makefile script, ASCII text default
100% checkBytes Printable ASCII default
100% dexmagic PrintFox/Pagefox WEAK default
100% perlTextCheck Likely Text (Perl) default
100% siegfried fmt/329 Shell Archive Format default
100% detectItEasy Format: plain text[LF] default (weak)
100% xdgMime message/news default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 50 61 74 68 3a 20 78 61 | 6e 74 68 21 6d 63 6e 63 |Path: xa|nth!mcnc|
|00000010| 21 67 61 74 65 63 68 21 | 62 6c 6f 6f 6d 2d 62 65 |!gatech!|bloom-be|
|00000020| 61 63 6f 6e 21 68 75 73 | 63 36 21 6e 65 63 6e 74 |acon!hus|c6!necnt|
|00000030| 63 21 6e 63 6f 61 73 74 | 21 61 6c 6c 62 65 72 79 |c!ncoast|!allbery|
|00000040| 0a 46 72 6f 6d 3a 20 64 | 61 72 69 6e 40 64 65 63 |.From: d|arin@dec|
|00000050| 77 72 6c 2e 64 65 63 2e | 63 6f 6d 40 63 2e 55 55 |wrl.dec.|com@c.UU|
|00000060| 43 50 20 28 44 61 72 69 | 6e 20 4a 6f 68 6e 73 6f |CP (Dari|n Johnso|
|00000070| 6e 29 0a 4e 65 77 73 67 | 72 6f 75 70 73 3a 20 63 |n).Newsg|roups: c|
|00000080| 6f 6d 70 2e 73 6f 75 72 | 63 65 73 2e 6d 69 73 63 |omp.sour|ces.misc|
|00000090| 0a 53 75 62 6a 65 63 74 | 3a 20 76 30 33 69 30 31 |.Subject|: v03i01|
|000000a0| 32 3a 20 53 55 4e 20 3c | 2d 3e 20 44 45 43 4e 45 |2: SUN <|-> DECNE|
|000000b0| 54 20 6d 61 69 6c 65 72 | 0a 4d 65 73 73 61 67 65 |T mailer|.Message|
|000000c0| 2d 49 44 3a 20 3c 32 33 | 36 40 6c 61 69 63 2e 55 |-ID: <23|6@laic.U|
|000000d0| 55 43 50 3e 0a 44 61 74 | 65 3a 20 38 20 4d 61 79 |UCP>.Dat|e: 8 May|
|000000e0| 20 38 38 20 32 31 3a 30 | 34 3a 33 37 20 47 4d 54 | 88 21:0|4:37 GMT|
|000000f0| 0a 53 65 6e 64 65 72 3a | 20 61 6c 6c 62 65 72 79 |.Sender:| allbery|
|00000100| 40 6e 63 6f 61 73 74 2e | 55 55 43 50 0a 52 65 70 |@ncoast.|UUCP.Rep|
|00000110| 6c 79 2d 54 6f 3a 20 64 | 61 72 69 6e 40 64 65 63 |ly-To: d|arin@dec|
|00000120| 77 72 6c 2e 64 65 63 2e | 63 6f 6d 40 63 2e 55 55 |wrl.dec.|com@c.UU|
|00000130| 43 50 20 28 44 61 72 69 | 6e 20 4a 6f 68 6e 73 6f |CP (Dari|n Johnso|
|00000140| 6e 29 0a 4f 72 67 61 6e | 69 7a 61 74 69 6f 6e 3a |n).Organ|ization:|
|00000150| 20 4c 6f 63 6b 68 65 65 | 64 20 41 49 20 43 65 6e | Lockhee|d AI Cen|
|00000160| 74 65 72 2c 20 4d 65 6e | 6c 6f 20 50 61 72 6b 0a |ter, Men|lo Park.|
|00000170| 4c 69 6e 65 73 3a 20 31 | 36 33 38 0a 41 70 70 72 |Lines: 1|638.Appr|
|00000180| 6f 76 65 64 3a 20 61 6c | 6c 62 65 72 79 40 6e 63 |oved: al|lbery@nc|
|00000190| 6f 61 73 74 2e 55 55 43 | 50 0a 0a 63 6f 6d 70 2e |oast.UUC|P..comp.|
|000001a0| 73 6f 75 72 63 65 73 2e | 6d 69 73 63 3a 20 56 6f |sources.|misc: Vo|
|000001b0| 6c 75 6d 65 20 33 2c 20 | 49 73 73 75 65 20 31 32 |lume 3, |Issue 12|
|000001c0| 0a 53 75 62 6d 69 74 74 | 65 64 2d 42 79 3a 20 22 |.Submitt|ed-By: "|
|000001d0| 44 61 72 69 6e 20 4a 6f | 68 6e 73 6f 6e 22 20 3c |Darin Jo|hnson" <|
|000001e0| 64 61 72 69 6e 40 64 65 | 63 77 72 6c 2e 64 65 63 |darin@de|cwrl.dec|
|000001f0| 2e 63 6f 6d 40 63 2e 55 | 55 43 50 3e 0a 41 72 63 |.com@c.U|UCP>.Arc|
|00000200| 68 69 76 65 2d 4e 61 6d | 65 3a 20 64 6e 61 6d 61 |hive-Nam|e: dnama|
|00000210| 69 6c 0a 0a 54 68 69 73 | 20 6d 61 69 6c 65 72 20 |il..This| mailer |
|00000220| 68 61 6e 64 6c 65 73 20 | 64 65 63 6e 65 74 20 6d |handles |decnet m|
|00000230| 61 69 6c 20 74 6f 2f 66 | 72 6f 6d 20 61 20 53 75 |ail to/f|rom a Su|
|00000240| 6e 20 72 75 6e 6e 69 6e | 67 20 53 75 6e 6c 69 6e |n runnin|g Sunlin|
|00000250| 6b 2f 44 4e 49 2e 0a 0a | 49 20 61 6d 20 70 6f 73 |k/DNI...|I am pos|
|00000260| 74 69 6e 67 20 74 68 69 | 73 20 6d 61 69 6c 65 72 |ting thi|s mailer|
|00000270| 20 74 6f 20 62 6f 74 68 | 20 63 6f 6d 70 2e 73 79 | to both| comp.sy|
|00000280| 73 2e 73 75 6e 20 61 6e | 64 20 63 6f 6d 70 2e 73 |s.sun an|d comp.s|
|00000290| 6f 75 72 63 65 73 2e 6d | 69 73 63 2e 0a 54 68 65 |ources.m|isc..The|
|000002a0| 20 72 65 61 73 6f 6e 20 | 66 6f 72 20 62 6f 74 68 | reason |for both|
|000002b0| 20 67 72 6f 75 70 73 20 | 69 73 20 74 68 61 74 20 | groups |is that |
|000002c0| 49 20 75 73 65 64 20 74 | 6f 20 68 61 76 65 20 70 |I used t|o have p|
|000002d0| 72 6f 62 6c 65 6d 73 20 | 67 65 74 74 69 6e 67 20 |roblems |getting |
|000002e0| 73 6f 75 72 63 65 73 0a | 66 72 6f 6d 20 74 68 65 |sources.|from the|
|000002f0| 20 63 6f 6d 70 2e 73 79 | 73 2e 73 75 6e 20 61 72 | comp.sy|s.sun ar|
|00000300| 63 68 69 76 65 73 2c 20 | 61 6e 64 20 49 20 61 73 |chives, |and I as|
|00000310| 73 75 6d 65 20 6f 74 68 | 65 72 20 70 65 6f 70 6c |sume oth|er peopl|
|00000320| 65 20 73 74 69 6c 6c 20 | 68 61 76 65 0a 74 68 69 |e still |have.thi|
|00000330| 73 20 70 72 6f 62 6c 65 | 6d 2e 0a 0a 54 68 65 20 |s proble|m...The |
|00000340| 66 6f 6c 6c 6f 77 69 6e | 67 20 69 73 20 61 20 73 |followin|g is a s|
|00000350| 68 61 72 20 66 69 6c 65 | 2c 20 79 6f 75 20 73 68 |har file|, you sh|
|00000360| 6f 75 6c 64 20 6b 6e 6f | 77 20 77 68 61 74 20 74 |ould kno|w what t|
|00000370| 6f 20 64 6f 2e 2e 2e 0a | 0a 3d 3d 3d 3d 3d 3d 3d |o do....|.=======|
|00000380| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 20 20 43 75 74 2c 20 |========|= Cut, |
|00000390| 66 6f 6c 64 2c 20 6f 72 | 20 6d 75 74 69 6c 61 74 |fold, or| mutilat|
|000003a0| 65 20 68 65 72 65 20 3d | 3d 3d 3d 3d 3d 3d 3d 3d |e here =|========|
|000003b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 0a |========|=======.|
|000003c0| 23 21 20 2f 62 69 6e 2f | 73 68 0a 23 20 54 68 69 |#! /bin/|sh.# Thi|
|000003d0| 73 20 69 73 20 61 20 73 | 68 65 6c 6c 20 61 72 63 |s is a s|hell arc|
|000003e0| 68 69 76 65 2c 20 6d 65 | 61 6e 69 6e 67 3a 0a 23 |hive, me|aning:.#|
|000003f0| 20 31 2e 20 52 65 6d 6f | 76 65 20 65 76 65 72 79 | 1. Remo|ve every|
|00000400| 74 68 69 6e 67 20 61 62 | 6f 76 65 20 74 68 65 20 |thing ab|ove the |
|00000410| 23 21 20 2f 62 69 6e 2f | 73 68 20 6c 69 6e 65 2e |#! /bin/|sh line.|
|00000420| 0a 23 20 32 2e 20 53 61 | 76 65 20 74 68 65 20 72 |.# 2. Sa|ve the r|
|00000430| 65 73 75 6c 74 69 6e 67 | 20 74 65 78 74 20 69 6e |esulting| text in|
|00000440| 20 61 20 66 69 6c 65 2e | 0a 23 20 33 2e 20 45 78 | a file.|.# 3. Ex|
|00000450| 65 63 75 74 65 20 74 68 | 65 20 66 69 6c 65 20 77 |ecute th|e file w|
|00000460| 69 74 68 20 2f 62 69 6e | 2f 73 68 20 28 6e 6f 74 |ith /bin|/sh (not|
|00000470| 20 63 73 68 29 20 74 6f | 20 63 72 65 61 74 65 20 | csh) to| create |
|00000480| 74 68 65 20 66 69 6c 65 | 73 3a 0a 23 09 4d 61 6b |the file|s:.#.Mak|
|00000490| 65 66 69 6c 65 0a 23 09 | 52 45 41 44 4d 45 0a 23 |efile.#.|README.#|
|000004a0| 09 64 6e 61 6d 61 69 6c | 2e 64 6f 63 0a 23 09 64 |.dnamail|.doc.#.d|
|000004b0| 6e 61 6d 61 69 6c 2e 68 | 0a 23 09 64 6e 61 6d 61 |namail.h|.#.dnama|
|000004c0| 69 6c 2e 63 0a 23 09 64 | 6e 61 6d 61 69 6c 64 2e |il.c.#.d|namaild.|
|000004d0| 63 0a 23 09 64 6e 61 6d | 69 73 63 2e 63 0a 23 09 |c.#.dnam|isc.c.#.|
|000004e0| 64 6e 61 65 72 72 6f 72 | 2e 63 0a 23 09 6d 61 69 |dnaerror|.c.#.mai|
|000004f0| 6e 2e 64 69 66 66 0a 23 | 09 73 75 62 2e 64 69 66 |n.diff.#|.sub.dif|
|00000500| 66 0a 23 20 54 68 69 73 | 20 61 72 63 68 69 76 65 |f.# This| archive|
|00000510| 20 63 72 65 61 74 65 64 | 3a 20 53 75 6e 20 4d 61 | created|: Sun Ma|
|00000520| 79 20 20 38 20 31 33 3a | 35 36 3a 30 34 20 31 39 |y 8 13:|56:04 19|
|00000530| 38 38 0a 65 78 70 6f 72 | 74 20 50 41 54 48 3b 20 |88.expor|t PATH; |
|00000540| 50 41 54 48 3d 2f 62 69 | 6e 3a 24 50 41 54 48 0a |PATH=/bi|n:$PATH.|
|00000550| 65 63 68 6f 20 73 68 61 | 72 3a 20 65 78 74 72 61 |echo sha|r: extra|
|00000560| 63 74 69 6e 67 20 22 27 | 4d 61 6b 65 66 69 6c 65 |cting "'|Makefile|
|00000570| 27 22 20 27 28 34 31 35 | 20 63 68 61 72 61 63 74 |'" '(415| charact|
|00000580| 65 72 73 29 27 0a 69 66 | 20 74 65 73 74 20 2d 66 |ers)'.if| test -f|
|00000590| 20 27 4d 61 6b 65 66 69 | 6c 65 27 0a 74 68 65 6e | 'Makefi|le'.then|
|000005a0| 0a 09 65 63 68 6f 20 73 | 68 61 72 3a 20 77 69 6c |..echo s|har: wil|
|000005b0| 6c 20 6e 6f 74 20 6f 76 | 65 72 2d 77 72 69 74 65 |l not ov|er-write|
|000005c0| 20 65 78 69 73 74 69 6e | 67 20 66 69 6c 65 20 22 | existin|g file "|
|000005d0| 27 4d 61 6b 65 66 69 6c | 65 27 22 0a 65 6c 73 65 |'Makefil|e'".else|
|000005e0| 0a 63 61 74 20 3c 3c 20 | 5c 53 48 41 52 5f 45 4f |.cat << |\SHAR_EO|
|000005f0| 46 20 3e 20 27 4d 61 6b | 65 66 69 6c 65 27 0a 23 |F > 'Mak|efile'.#|
|00000600| 0a 44 49 53 54 52 49 42 | 20 3d 20 4d 61 6b 65 66 |.DISTRIB| = Makef|
|00000610| 69 6c 65 20 52 45 41 44 | 4d 45 20 64 6e 61 6d 61 |ile READ|ME dnama|
|00000620| 69 6c 2e 64 6f 63 20 64 | 6e 61 6d 61 69 6c 2e 68 |il.doc d|namail.h|
|00000630| 20 64 6e 61 6d 61 69 6c | 2e 63 20 64 6e 61 6d 61 | dnamail|.c dnama|
|00000640| 69 6c 64 2e 63 20 64 6e | 61 6d 69 73 63 2e 63 20 |ild.c dn|amisc.c |
|00000650| 5c 0a 09 20 20 64 6e 61 | 65 72 72 6f 72 2e 63 20 |\.. dna|error.c |
|00000660| 6d 61 69 6e 2e 64 69 66 | 66 20 73 75 62 2e 64 69 |main.dif|f sub.di|
|00000670| 66 66 0a 0a 4f 42 4a 53 | 20 3d 20 64 6e 61 65 72 |ff..OBJS| = dnaer|
|00000680| 72 6f 72 2e 6f 20 64 6e | 61 6d 69 73 63 2e 6f 0a |ror.o dn|amisc.o.|
|00000690| 0a 61 6c 6c 3a 20 64 6e | 61 6d 61 69 6c 20 64 6e |.all: dn|amail dn|
|000006a0| 61 6d 61 69 6c 64 0a 0a | 64 6e 61 6d 61 69 6c 3a |amaild..|dnamail:|
|000006b0| 20 64 6e 61 6d 61 69 6c | 2e 6f 20 24 28 4f 42 4a | dnamail|.o $(OBJ|
|000006c0| 53 29 0a 09 63 63 20 2d | 6f 20 64 6e 61 6d 61 69 |S)..cc -|o dnamai|
|000006d0| 6c 20 64 6e 61 6d 61 69 | 6c 2e 6f 20 24 28 4f 42 |l dnamai|l.o $(OB|
|000006e0| 4a 53 29 0a 0a 64 6e 61 | 6d 61 69 6c 64 3a 20 64 |JS)..dna|maild: d|
|000006f0| 6e 61 6d 61 69 6c 64 2e | 6f 20 24 28 4f 42 4a 53 |namaild.|o $(OBJS|
|00000700| 29 0a 09 63 63 20 2d 6f | 20 64 6e 61 6d 61 69 6c |)..cc -o| dnamail|
|00000710| 64 20 64 6e 61 6d 61 69 | 6c 64 2e 6f 20 24 28 4f |d dnamai|ld.o $(O|
|00000720| 42 4a 53 29 0a 0a 64 6e | 61 6d 61 69 6c 2e 6f 20 |BJS)..dn|amail.o |
|00000730| 64 6e 61 6d 61 69 6c 64 | 2e 6f 20 64 6e 61 6d 69 |dnamaild|.o dnami|
|00000740| 73 63 2e 6f 3a 20 64 6e | 61 6d 61 69 6c 2e 68 0a |sc.o: dn|amail.h.|
|00000750| 0a 73 68 61 72 3a 20 24 | 28 44 49 53 54 52 49 42 |.shar: $|(DISTRIB|
|00000760| 29 0a 09 73 68 61 72 20 | 2d 63 76 20 24 28 44 49 |)..shar |-cv $(DI|
|00000770| 53 54 52 49 42 29 20 3e | 20 64 6e 61 6d 61 69 6c |STRIB) >| dnamail|
|00000780| 2e 73 68 61 72 0a 0a 63 | 6c 65 61 6e 3a 0a 09 72 |.shar..c|lean:..r|
|00000790| 6d 20 2d 66 20 2a 2e 6f | 20 63 6f 72 65 0a 53 48 |m -f *.o| core.SH|
|000007a0| 41 52 5f 45 4f 46 0a 69 | 66 20 74 65 73 74 20 34 |AR_EOF.i|f test 4|
|000007b0| 31 35 20 2d 6e 65 20 22 | 60 77 63 20 2d 63 20 3c |15 -ne "|`wc -c <|
|000007c0| 20 27 4d 61 6b 65 66 69 | 6c 65 27 60 22 0a 74 68 | 'Makefi|le'`".th|
|000007d0| 65 6e 0a 09 65 63 68 6f | 20 73 68 61 72 3a 20 65 |en..echo| shar: e|
|000007e0| 72 72 6f 72 20 74 72 61 | 6e 73 6d 69 74 74 69 6e |rror tra|nsmittin|
|000007f0| 67 20 22 27 4d 61 6b 65 | 66 69 6c 65 27 22 20 27 |g "'Make|file'" '|
|00000800| 28 73 68 6f 75 6c 64 20 | 68 61 76 65 20 62 65 65 |(should |have bee|
|00000810| 6e 20 34 31 35 20 63 68 | 61 72 61 63 74 65 72 73 |n 415 ch|aracters|
|00000820| 29 27 0a 66 69 0a 63 68 | 6d 6f 64 20 2b 78 20 27 |)'.fi.ch|mod +x '|
|00000830| 4d 61 6b 65 66 69 6c 65 | 27 0a 66 69 20 23 20 65 |Makefile|'.fi # e|
|00000840| 6e 64 20 6f 66 20 6f 76 | 65 72 77 72 69 74 69 6e |nd of ov|erwritin|
|00000850| 67 20 63 68 65 63 6b 0a | 65 63 68 6f 20 73 68 61 |g check.|echo sha|
|00000860| 72 3a 20 65 78 74 72 61 | 63 74 69 6e 67 20 22 27 |r: extra|cting "'|
|00000870| 52 45 41 44 4d 45 27 22 | 20 27 28 38 37 37 20 63 |README'"| '(877 c|
|00000880| 68 61 72 61 63 74 65 72 | 73 29 27 0a 69 66 20 74 |haracter|s)'.if t|
|00000890| 65 73 74 20 2d 66 20 27 | 52 45 41 44 4d 45 27 0a |est -f '|README'.|
|000008a0| 74 68 65 6e 0a 09 65 63 | 68 6f 20 73 68 61 72 3a |then..ec|ho shar:|
|000008b0| 20 77 69 6c 6c 20 6e 6f | 74 20 6f 76 65 72 2d 77 | will no|t over-w|
|000008c0| 72 69 74 65 20 65 78 69 | 73 74 69 6e 67 20 66 69 |rite exi|sting fi|
|000008d0| 6c 65 20 22 27 52 45 41 | 44 4d 45 27 22 0a 65 6c |le "'REA|DME'".el|
|000008e0| 73 65 0a 63 61 74 20 3c | 3c 20 5c 53 48 41 52 5f |se.cat <|< \SHAR_|
|000008f0| 45 4f 46 20 3e 20 27 52 | 45 41 44 4d 45 27 0a 4f |EOF > 'R|EADME'.O|
|00000900| 4b 2c 20 68 65 72 65 20 | 69 73 20 6d 79 20 6d 61 |K, here |is my ma|
|00000910| 69 6c 65 72 20 66 6f 72 | 20 75 73 65 20 77 69 74 |iler for| use wit|
|00000920| 68 20 53 75 6e 6c 69 6e | 6b 2f 44 4e 49 2e 20 20 |h Sunlin|k/DNI. |
|00000930| 59 6f 75 20 6d 61 79 20 | 75 73 65 20 74 68 69 73 |You may |use this|
|00000940| 20 77 69 74 68 0a 6f 72 | 20 77 69 74 68 6f 75 74 | with.or| without|
|00000950| 20 73 65 6e 64 6d 61 69 | 6c 2c 20 61 6c 74 68 6f | sendmai|l, altho|
|00000960| 75 67 68 20 75 73 69 6e | 67 20 69 74 20 77 69 74 |ugh usin|g it wit|
|00000970| 68 20 73 65 6e 64 6d 61 | 69 6c 20 69 73 20 6d 75 |h sendma|il is mu|
|00000980| 63 68 20 6d 6f 72 65 20 | 63 6f 6e 76 65 6e 69 65 |ch more |convenie|
|00000990| 6e 74 0a 28 61 6c 74 68 | 6f 75 67 68 20 69 74 20 |nt.(alth|ough it |
|000009a0| 72 65 71 75 69 72 65 73 | 20 63 68 61 6e 67 65 73 |requires| changes|
|000009b0| 20 74 6f 20 74 68 65 20 | 73 65 6e 64 6d 61 69 6c | to the |sendmail|
|000009c0| 20 63 6f 6e 66 69 67 75 | 72 61 74 69 6f 6e 20 66 | configu|ration f|
|000009d0| 69 6c 65 73 2e 29 0a 0a | 31 29 20 52 65 61 64 20 |iles.)..|1) Read |
|000009e0| 64 6e 61 6d 61 69 6c 2e | 64 6f 63 20 66 6f 72 20 |dnamail.|doc for |
|000009f0| 69 6e 73 74 72 75 63 74 | 69 6f 6e 73 0a 0a 32 29 |instruct|ions..2)|
|00000a00| 0a 09 54 68 65 20 70 61 | 74 63 68 20 66 69 6c 65 |..The pa|tch file|
|00000a10| 73 20 73 68 6f 75 6c 64 | 20 77 6f 72 6b 20 77 69 |s should| work wi|
|00000a20| 74 68 20 74 68 65 20 64 | 65 66 61 75 6c 74 20 27 |th the d|efault '|
|00000a30| 73 65 6e 64 6d 61 69 6c | 2e 63 66 27 20 66 69 6c |sendmail|.cf' fil|
|00000a40| 65 73 0a 09 6f 66 66 20 | 6f 66 20 74 68 65 20 53 |es..off |of the S|
|00000a50| 75 6e 20 64 69 73 74 72 | 69 62 75 74 69 6f 6e 20 |un distr|ibution |
|00000a60| 74 61 70 65 2e 20 20 49 | 66 20 6e 6f 74 2c 20 79 |tape. I|f not, y|
|00000a70| 6f 75 20 63 61 6e 20 69 | 6e 73 74 61 6c 6c 20 74 |ou can i|nstall t|
|00000a80| 68 65 0a 09 70 61 74 63 | 68 65 73 20 62 79 20 68 |he..patc|hes by h|
|00000a90| 61 6e 64 2e 20 20 42 65 | 20 53 55 52 45 20 74 6f |and. Be| SURE to|
|00000aa0| 20 6b 65 65 70 20 74 68 | 65 20 22 2e 6f 72 69 67 | keep th|e ".orig|
|00000ab0| 22 20 66 69 6c 65 73 20 | 61 72 6f 75 6e 64 20 69 |" files |around i|
|00000ac0| 6e 0a 09 63 61 73 65 20 | 6f 66 20 70 72 6f 62 6c |n..case |of probl|
|00000ad0| 65 6d 73 2e 0a 0a 34 29 | 0a 09 4c 65 74 20 6d 65 |ems...4)|..Let me|
|00000ae0| 20 6b 6e 6f 77 20 6f 66 | 20 61 6e 79 20 70 72 6f | know of| any pro|
|00000af0| 62 6c 65 6d 73 20 79 6f | 75 20 68 61 76 65 20 73 |blems yo|u have s|
|00000b00| 65 74 74 69 6e 67 20 74 | 68 69 73 20 75 70 2c 20 |etting t|his up, |
|00000b10| 6f 72 20 6f 66 20 61 6e | 79 20 62 75 67 73 2e 0a |or of an|y bugs..|
|00000b20| 20 20 20 20 20 20 20 20 | 54 68 69 73 20 77 61 79 | |This way|
|00000b30| 20 49 20 63 61 6e 20 65 | 69 74 68 65 72 20 66 69 | I can e|ither fi|
|00000b40| 78 20 74 68 65 20 63 6f | 64 65 2c 20 6f 72 20 66 |x the co|de, or f|
|00000b50| 69 78 20 74 68 65 20 64 | 6f 63 75 6d 65 6e 74 61 |ix the d|ocumenta|
|00000b60| 74 69 6f 6e 2e 0a 0a 09 | 4e 6f 74 65 20 74 68 65 |tion....|Note the|
|00000b70| 20 63 6f 70 79 72 69 67 | 68 74 20 72 65 73 74 72 | copyrig|ht restr|
|00000b80| 69 63 74 69 6f 6e 73 20 | 28 61 73 20 73 6d 61 6c |ictions |(as smal|
|00000b90| 6c 20 61 73 20 74 68 65 | 79 20 61 72 65 29 2e 20 |l as the|y are). |
|00000ba0| 20 4f 66 20 63 6f 75 72 | 73 65 2c 20 0a 20 20 20 | Of cour|se, . |
|00000bb0| 20 20 20 20 20 69 66 20 | 53 75 6e 20 69 73 20 6e | if |Sun is n|
|00000bc0| 65 67 6f 74 69 61 62 6c | 65 2c 20 49 20 6d 61 79 |egotiabl|e, I may|
|00000bd0| 20 6c 65 74 20 74 68 65 | 6d 20 68 61 76 65 20 69 | let the|m have i|
|00000be0| 74 20 3b 2d 29 0a 0a 44 | 61 72 69 6e 20 4a 6f 68 |t ;-)..D|arin Joh|
|00000bf0| 6e 73 6f 6e 20 0a 4c 6f | 63 6b 68 65 65 64 20 4d |nson .Lo|ckheed M|
|00000c00| 69 73 73 69 6c 65 73 20 | 26 20 53 70 61 63 65 0a |issiles |& Space.|
|00000c10| 09 20 20 20 20 20 20 28 | 2e 2e 2e 6c 6c 6c 2d 6c |. (|...lll-l|
|00000c20| 63 63 2e 61 72 70 61 21 | 6c 65 61 64 73 76 21 6c |cc.arpa!|leadsv!l|
|00000c30| 61 69 63 21 64 61 72 69 | 6e 29 0a 09 20 20 20 20 |aic!dari|n).. |
|00000c40| 20 20 28 2e 2e 2e 75 63 | 62 76 61 78 21 73 75 6e | (...uc|bvax!sun|
|00000c50| 21 73 75 6e 6e 63 61 6c | 21 6c 65 61 64 73 76 21 |!sunncal|!leadsv!|
|00000c60| 6c 61 69 63 21 64 61 72 | 69 6e 29 0a 53 48 41 52 |laic!dar|in).SHAR|
|00000c70| 5f 45 4f 46 0a 69 66 20 | 74 65 73 74 20 38 37 37 |_EOF.if |test 877|
|00000c80| 20 2d 6e 65 20 22 60 77 | 63 20 2d 63 20 3c 20 27 | -ne "`w|c -c < '|
|00000c90| 52 45 41 44 4d 45 27 60 | 22 0a 74 68 65 6e 0a 09 |README'`|".then..|
|00000ca0| 65 63 68 6f 20 73 68 61 | 72 3a 20 65 72 72 6f 72 |echo sha|r: error|
|00000cb0| 20 74 72 61 6e 73 6d 69 | 74 74 69 6e 67 20 22 27 | transmi|tting "'|
|00000cc0| 52 45 41 44 4d 45 27 22 | 20 27 28 73 68 6f 75 6c |README'"| '(shoul|
|00000cd0| 64 20 68 61 76 65 20 62 | 65 65 6e 20 38 37 37 20 |d have b|een 877 |
|00000ce0| 63 68 61 72 61 63 74 65 | 72 73 29 27 0a 66 69 0a |characte|rs)'.fi.|
|00000cf0| 63 68 6d 6f 64 20 2b 78 | 20 27 52 45 41 44 4d 45 |chmod +x| 'README|
|00000d00| 27 0a 66 69 20 23 20 65 | 6e 64 20 6f 66 20 6f 76 |'.fi # e|nd of ov|
|00000d10| 65 72 77 72 69 74 69 6e | 67 20 63 68 65 63 6b 0a |erwritin|g check.|
|00000d20| 65 63 68 6f 20 73 68 61 | 72 3a 20 65 78 74 72 61 |echo sha|r: extra|
|00000d30| 63 74 69 6e 67 20 22 27 | 64 6e 61 6d 61 69 6c 2e |cting "'|dnamail.|
|00000d40| 64 6f 63 27 22 20 27 28 | 39 30 33 31 20 63 68 61 |doc'" '(|9031 cha|
|00000d50| 72 61 63 74 65 72 73 29 | 27 0a 69 66 20 74 65 73 |racters)|'.if tes|
|00000d60| 74 20 2d 66 20 27 64 6e | 61 6d 61 69 6c 2e 64 6f |t -f 'dn|amail.do|
|00000d70| 63 27 0a 74 68 65 6e 0a | 09 65 63 68 6f 20 73 68 |c'.then.|.echo sh|
|00000d80| 61 72 3a 20 77 69 6c 6c | 20 6e 6f 74 20 6f 76 65 |ar: will| not ove|
|00000d90| 72 2d 77 72 69 74 65 20 | 65 78 69 73 74 69 6e 67 |r-write |existing|
|00000da0| 20 66 69 6c 65 20 22 27 | 64 6e 61 6d 61 69 6c 2e | file "'|dnamail.|
|00000db0| 64 6f 63 27 22 0a 65 6c | 73 65 0a 63 61 74 20 3c |doc'".el|se.cat <|
|00000dc0| 3c 20 5c 53 48 41 52 5f | 45 4f 46 20 3e 20 27 64 |< \SHAR_|EOF > 'd|
|00000dd0| 6e 61 6d 61 69 6c 2e 64 | 6f 63 27 0a 31 29 20 49 |namail.d|oc'.1) I|
|00000de0| 6e 74 72 6f 0a 0a 20 20 | 44 6e 61 6d 61 69 6c 20 |ntro.. |Dnamail |
|00000df0| 61 6e 64 20 64 6e 61 6d | 61 69 6c 64 20 61 6c 6c |and dnam|aild all|
|00000e00| 6f 77 20 61 20 53 75 6e | 20 63 6f 6d 70 75 74 65 |ow a Sun| compute|
|00000e10| 72 20 77 69 74 68 20 74 | 68 65 20 53 75 6e 6c 69 |r with t|he Sunli|
|00000e20| 6e 6b 2f 44 4e 49 20 73 | 6f 66 74 77 61 72 65 0a |nk/DNI s|oftware.|
|00000e30| 20 20 74 6f 20 73 65 6e | 64 20 61 6e 64 20 72 65 | to sen|d and re|
|00000e40| 63 65 69 76 65 20 6d 61 | 69 6c 20 66 72 6f 6d 20 |ceive ma|il from |
|00000e50| 56 4d 53 20 63 6f 6d 70 | 75 74 65 72 73 20 28 6d |VMS comp|uters (m|
|00000e60| 61 79 20 77 6f 72 6b 20 | 77 69 74 68 20 6f 74 68 |ay work |with oth|
|00000e70| 65 72 20 44 45 43 6e 65 | 74 0a 20 20 63 6f 6d 70 |er DECne|t. comp|
|00000e80| 75 74 65 72 73 2c 20 62 | 75 74 20 68 61 73 6e 27 |uters, b|ut hasn'|
|00000e90| 74 20 62 65 65 6e 20 74 | 65 73 74 65 64 29 2e 0a |t been t|ested)..|
|00000ea0| 0a 20 20 54 68 65 73 65 | 20 70 72 6f 67 72 61 6d |. These| program|
|00000eb0| 73 20 63 6f 6f 70 65 72 | 61 74 65 20 77 69 74 68 |s cooper|ate with|
|00000ec0| 20 74 68 65 20 73 65 6e | 64 6d 61 69 6c 20 70 72 | the sen|dmail pr|
|00000ed0| 6f 67 72 61 6d 2c 20 73 | 6f 20 74 68 61 74 20 75 |ogram, s|o that u|
|00000ee0| 73 65 72 73 0a 20 20 64 | 6f 20 6e 6f 74 20 6e 65 |sers. d|o not ne|
|00000ef0| 65 64 20 74 6f 20 75 73 | 65 20 61 6e 79 20 73 70 |ed to us|e any sp|
|00000f00| 65 63 69 61 6c 20 63 6f | 6d 6d 61 6e 64 73 20 74 |ecial co|mmands t|
|00000f10| 6f 20 73 65 6e 64 20 61 | 6e 64 20 72 65 63 65 69 |o send a|nd recei|
|00000f20| 76 65 20 6d 61 69 6c 2e | 0a 20 20 54 68 69 73 20 |ve mail.|. This |
|00000f30| 6d 65 61 6e 73 20 74 68 | 61 74 20 27 6d 61 69 6c |means th|at 'mail|
|00000f40| 74 6f 6f 6c 27 20 6d 61 | 79 20 62 65 20 75 73 65 |tool' ma|y be use|
|00000f50| 64 20 74 6f 20 72 65 61 | 64 20 61 6e 64 20 63 6f |d to rea|d and co|
|00000f60| 6d 70 6f 73 65 20 6d 65 | 73 73 61 67 65 73 2e 0a |mpose me|ssages..|
|00000f70| 20 20 44 6e 61 6d 61 69 | 6c 20 6d 61 79 20 61 6c | Dnamai|l may al|
|00000f80| 73 6f 20 62 65 20 75 73 | 65 64 20 69 6e 64 65 70 |so be us|ed indep|
|00000f90| 65 6e 64 65 6e 74 6c 79 | 20 6f 66 20 73 65 6e 64 |endently| of send|
|00000fa0| 6d 61 69 6c 2c 20 61 6c | 74 68 6f 75 67 68 20 6d |mail, al|though m|
|00000fb0| 65 73 73 61 67 65 0a 20 | 20 65 64 69 74 69 6e 67 |essage. | editing|
|00000fc0| 20 69 73 20 6c 61 63 6b | 69 6e 67 2e 0a 0a 32 29 | is lack|ing...2)|
|00000fd0| 20 49 6e 73 74 61 6c 6c | 61 74 69 6f 6e 0a 0a 20 | Install|ation.. |
|00000fe0| 20 3e 3e 09 54 68 65 20 | 44 4e 49 20 73 6f 66 74 | >>.The |DNI soft|
|00000ff0| 77 61 72 65 20 68 61 73 | 20 61 20 62 75 67 20 74 |ware has| a bug t|
|00001000| 68 61 74 20 6e 65 65 64 | 73 20 74 6f 20 62 65 20 |hat need|s to be |
|00001010| 66 69 78 65 64 20 62 65 | 66 6f 72 65 0a 20 20 3e |fixed be|fore. >|
|00001020| 3e 09 64 6e 61 6d 61 69 | 6c 20 77 69 6c 6c 20 77 |>.dnamai|l will w|
|00001030| 6f 72 6b 2e 20 20 54 68 | 65 20 62 75 67 20 69 73 |ork. Th|e bug is|
|00001040| 20 72 65 6c 61 74 65 64 | 20 74 6f 20 66 61 69 6c | related| to fail|
|00001050| 75 72 65 20 74 6f 20 72 | 65 61 64 2f 77 72 69 74 |ure to r|ead/writ|
|00001060| 65 0a 20 20 3e 3e 09 7a | 65 72 6f 2d 6c 65 6e 67 |e. >>.z|ero-leng|
|00001070| 74 68 20 72 65 63 6f 72 | 64 73 2e 20 20 59 6f 75 |th recor|ds. You|
|00001080| 20 63 61 6e 20 67 65 74 | 20 74 68 65 20 70 61 74 | can get| the pat|
|00001090| 63 68 20 66 72 6f 6d 20 | 53 75 6e 20 0a 20 20 3e |ch from |Sun . >|
|000010a0| 3e 09 28 62 75 67 20 23 | 31 30 30 37 32 32 38 29 |>.(bug #|1007228)|
|000010b0| 2c 20 61 6e 64 20 70 6f | 73 73 69 62 6c 79 20 66 |, and po|ssibly f|
|000010c0| 72 6f 6d 20 74 68 65 20 | 73 75 6e 20 61 72 63 68 |rom the |sun arch|
|000010d0| 69 76 65 73 20 61 74 20 | 72 69 63 65 2e 65 64 75 |ives at |rice.edu|
|000010e0| 2e 0a 20 20 3e 3e 09 59 | 6f 75 20 63 6f 75 6c 64 |.. >>.Y|ou could|
|000010f0| 20 70 6f 73 73 69 62 6c | 79 20 67 65 74 20 74 68 | possibl|y get th|
|00001100| 65 6d 20 66 72 6f 6d 20 | 6d 65 2c 20 62 75 74 20 |em from |me, but |
|00001110| 73 61 76 65 20 74 68 69 | 73 20 61 73 20 61 20 6c |save thi|s as a l|
|00001120| 61 73 74 20 72 65 73 6f | 72 74 2e 0a 0a 20 20 4c |ast reso|rt... L|
|00001130| 6f 6f 6b 20 6f 76 65 72 | 20 27 4d 61 6b 65 66 69 |ook over| 'Makefi|
|00001140| 6c 65 27 20 61 6e 64 20 | 27 64 6e 61 6d 61 69 6c |le' and |'dnamail|
|00001150| 2e 68 27 2e 20 20 49 66 | 20 79 6f 75 20 77 61 6e |.h'. If| you wan|
|00001160| 74 20 74 6f 20 68 61 76 | 65 20 64 6e 61 6d 61 69 |t to hav|e dnamai|
|00001170| 6c 64 0a 20 20 72 75 6e | 20 27 73 74 61 6e 64 61 |ld. run| 'standa|
|00001180| 6c 6f 6e 65 27 2c 20 74 | 68 65 6e 20 75 6e 63 6f |lone', t|hen unco|
|00001190| 6d 6d 65 6e 74 20 74 68 | 65 20 53 54 41 4e 44 41 |mment th|e STANDA|
|000011a0| 4c 4f 4e 45 20 64 65 66 | 69 6e 69 74 69 6f 6e 20 |LONE def|inition |
|000011b0| 69 6e 0a 20 20 64 6e 61 | 6d 61 69 6c 2e 68 2e 20 |in. dna|mail.h. |
|000011c0| 20 57 68 65 6e 20 64 6e | 61 6d 61 69 6c 64 20 69 | When dn|amaild i|
|000011d0| 73 20 63 6f 6d 70 69 6c | 65 64 20 77 69 74 68 20 |s compil|ed with |
|000011e0| 74 68 65 20 53 54 41 4e | 44 41 4c 4f 4e 45 20 6f |the STAN|DALONE o|
|000011f0| 70 74 69 6f 6e 2c 20 74 | 68 65 6e 0a 20 20 69 74 |ption, t|hen. it|
|00001200| 20 77 69 6c 6c 20 6e 6f | 74 20 61 75 74 6f 6d 61 | will no|t automa|
|00001210| 74 69 63 61 6c 6c 79 20 | 62 65 20 63 61 6c 6c 65 |tically |be calle|
|00001220| 64 20 66 72 6f 6d 20 64 | 6e 61 73 65 72 76 65 72 |d from d|naserver|
|00001230| 2c 20 62 75 74 20 6d 75 | 73 74 20 62 65 20 72 75 |, but mu|st be ru|
|00001240| 6e 0a 20 20 62 65 66 6f | 72 65 20 79 6f 75 20 65 |n. befo|re you e|
|00001250| 78 70 65 63 74 20 61 6e | 79 20 6d 61 69 6c 20 74 |xpect an|y mail t|
|00001260| 6f 20 73 68 6f 77 20 75 | 70 2e 20 20 49 74 20 77 |o show u|p. It w|
|00001270| 69 6c 6c 20 68 61 6e 64 | 6c 65 20 6f 6e 65 20 6d |ill hand|le one m|
|00001280| 61 69 6c 20 63 6f 6e 6e | 65 63 74 69 6f 6e 0a 20 |ail conn|ection. |
|00001290| 20 61 6e 64 20 74 68 65 | 6e 20 65 78 69 74 2e 20 | and the|n exit. |
|000012a0| 20 4f 62 76 69 6f 75 73 | 6c 79 2c 20 74 68 69 73 | Obvious|ly, this|
|000012b0| 20 6f 70 74 69 6f 6e 20 | 69 73 20 6e 6f 74 20 74 | option |is not t|
|000012c0| 6f 6f 20 75 73 65 66 75 | 6c 2c 20 62 75 74 20 69 |oo usefu|l, but i|
|000012d0| 74 20 68 65 6c 70 73 0a | 20 20 69 66 20 79 6f 75 |t helps.| if you|
|000012e0| 20 61 72 65 20 74 72 79 | 69 6e 67 20 74 6f 20 64 | are try|ing to d|
|000012f0| 65 62 75 67 2e 0a 0a 20 | 20 44 6f 20 27 6d 61 6b |ebug... | Do 'mak|
|00001300| 65 20 61 6c 6c 27 2e 20 | 20 54 68 69 73 20 73 68 |e all'. | This sh|
|00001310| 6f 75 6c 64 20 6d 61 6b | 65 20 74 68 65 20 65 78 |ould mak|e the ex|
|00001320| 65 63 75 74 61 62 6c 65 | 73 20 27 64 6e 61 6d 61 |ecutable|s 'dnama|
|00001330| 69 6c 27 20 61 6e 64 20 | 27 64 6e 61 6d 61 69 6c |il' and |'dnamail|
|00001340| 64 27 2e 0a 0a 20 20 50 | 75 74 20 74 68 65 20 65 |d'... P|ut the e|
|00001350| 78 65 63 75 74 61 62 6c | 65 73 20 69 6e 74 6f 20 |xecutabl|es into |
|00001360| 2f 75 73 72 2f 73 75 6e | 6c 69 6e 6b 2f 64 6e 61 |/usr/sun|link/dna|
|00001370| 2c 20 6f 72 20 75 73 65 | 20 61 20 73 79 6d 62 6f |, or use| a symbo|
|00001380| 6c 69 63 20 6c 69 6e 6b | 2e 0a 0a 20 20 41 64 64 |lic link|... Add|
|00001390| 20 74 68 65 20 66 6f 6c | 6c 6f 77 69 6e 67 20 6c | the fol|lowing l|
|000013a0| 69 6e 65 20 74 6f 20 2f | 75 73 72 2f 73 75 6e 6c |ine to /|usr/sunl|
|000013b0| 69 6e 6b 2f 64 6e 61 2f | 64 6e 61 73 65 72 76 65 |ink/dna/|dnaserve|
|000013c0| 72 2e 72 65 67 20 28 69 | 66 20 79 6f 75 20 77 61 |r.reg (i|f you wa|
|000013d0| 6e 74 0a 20 20 74 6f 20 | 72 75 6e 20 64 6e 61 6d |nt. to |run dnam|
|000013e0| 61 69 6c 64 20 27 73 74 | 61 6e 64 61 6c 6f 6e 65 |aild 'st|andalone|
|000013f0| 27 2c 20 74 68 65 6e 20 | 79 6f 75 20 73 68 6f 75 |', then |you shou|
|00001400| 6c 64 6e 27 74 20 64 6f | 20 74 68 69 73 29 3a 0a |ldn't do| this):.|
|00001410| 0a 20 20 20 20 20 32 37 | 09 4d 41 49 4c 09 2f 75 |. 27|.MAIL./u|
|00001420| 73 72 2f 73 75 6e 6c 69 | 6e 6b 2f 64 6e 61 2f 64 |sr/sunli|nk/dna/d|
|00001430| 6e 61 6d 61 69 6c 64 0a | 0a 20 20 4d 6f 64 69 66 |namaild.|. Modif|
|00001440| 79 20 73 65 6e 64 6d 61 | 69 6c 2e 63 66 20 61 70 |y sendma|il.cf ap|
|00001450| 70 72 6f 70 72 69 61 74 | 65 6c 79 20 61 6e 64 20 |propriat|ely and |
|00001460| 72 65 73 74 61 72 74 20 | 73 65 6e 64 6d 61 69 6c |restart |sendmail|
|00001470| 2e 0a 0a 20 20 54 65 73 | 74 2e 2e 2e 20 20 42 65 |... Tes|t... Be|
|00001480| 66 6f 72 65 20 6d 61 6b | 69 6e 67 20 73 65 6e 64 |fore mak|ing send|
|00001490| 6d 61 69 6c 2e 63 66 20 | 63 68 61 6e 67 65 73 2c |mail.cf |changes,|
|000014a0| 20 79 6f 75 20 63 61 6e | 20 74 72 79 0a 20 20 72 | you can| try. r|
|000014b0| 75 6e 6e 69 6e 67 20 64 | 6e 61 6d 61 69 6c 20 64 |unning d|namail d|
|000014c0| 69 72 65 63 74 6c 79 20 | 2d 20 6a 75 73 74 20 74 |irectly |- just t|
|000014d0| 79 70 65 20 2f 75 73 72 | 2f 73 75 6e 6c 69 6e 6b |ype /usr|/sunlink|
|000014e0| 2f 64 6e 61 2f 64 6e 61 | 6d 61 69 6c 2e 0a 20 20 |/dna/dna|mail.. |
|000014f0| 41 66 74 65 72 20 6d 61 | 6b 69 6e 67 20 74 68 65 |After ma|king the|
|00001500| 20 73 65 6e 64 6d 61 69 | 6c 2e 63 66 20 63 68 61 | sendmai|l.cf cha|
|00001510| 6e 67 65 73 2c 20 79 6f | 75 20 63 61 6e 20 74 65 |nges, yo|u can te|
|00001520| 73 74 20 62 79 20 6a 75 | 73 74 20 73 65 6e 64 69 |st by ju|st sendi|
|00001530| 6e 67 0a 20 20 6d 61 69 | 6c 2e 0a 0a 33 29 20 53 |ng. mai|l...3) S|
|00001540| 65 6e 64 6d 61 69 6c 2e | 63 66 20 63 68 61 6e 67 |endmail.|cf chang|
|00001550| 65 73 0a 0a 20 20 49 6e | 20 6f 72 64 65 72 20 74 |es.. In| order t|
|00001560| 6f 20 68 61 76 65 20 64 | 6e 61 6d 61 69 6c 20 61 |o have d|namail a|
|00001570| 6e 64 20 64 6e 61 6d 61 | 69 6c 64 20 63 6f 6f 70 |nd dnama|ild coop|
|00001580| 65 72 61 74 65 20 77 69 | 74 68 20 73 65 6e 64 6d |erate wi|th sendm|
|00001590| 61 69 6c 2c 20 63 68 61 | 6e 67 65 73 0a 20 20 6d |ail, cha|nges. m|
|000015a0| 75 73 74 20 62 65 20 6d | 61 64 65 20 74 6f 20 2f |ust be m|ade to /|
|000015b0| 75 73 72 2f 6c 69 62 2f | 73 65 6e 64 6d 61 69 6c |usr/lib/|sendmail|
|000015c0| 2e 63 66 2e 20 0a 0a 20 | 20 3e 3e 20 20 49 66 20 |.cf. .. | >> If |
|000015d0| 79 6f 75 20 68 61 76 65 | 20 6d 61 64 65 20 63 68 |you have| made ch|
|000015e0| 61 6e 67 65 73 20 74 6f | 20 73 65 6e 64 6d 61 69 |anges to| sendmai|
|000015f0| 6c 2e 63 66 20 62 65 66 | 6f 72 65 2c 20 6f 72 20 |l.cf bef|ore, or |
|00001600| 6e 6f 20 73 6f 6d 65 6f | 6e 65 0a 20 20 3e 3e 20 |no someo|ne. >> |
|00001610| 20 77 68 6f 20 68 61 73 | 2c 20 74 68 65 6e 20 74 | who has|, then t|
|00001620| 68 65 20 6d 6f 64 69 66 | 69 63 61 74 69 6f 6e 73 |he modif|ications|
|00001630| 20 77 69 6c 6c 20 62 65 | 20 72 65 6c 61 74 69 76 | will be| relativ|
|00001640| 65 6c 79 20 73 74 72 61 | 69 67 68 74 66 6f 72 77 |ely stra|ightforw|
|00001650| 61 72 64 2e 0a 20 20 3e | 3e 20 20 49 66 20 79 6f |ard.. >|> If yo|
|00001660| 75 20 64 6f 6e 27 74 20 | 66 69 74 20 69 6e 74 6f |u don't |fit into|
|00001670| 20 74 68 65 20 61 62 6f | 76 65 20 63 61 74 65 67 | the abo|ve categ|
|00001680| 6f 72 79 2c 20 74 68 65 | 6e 20 49 20 73 75 67 67 |ory, the|n I sugg|
|00001690| 65 73 74 20 74 68 61 74 | 20 79 6f 75 0a 20 20 3e |est that| you. >|
|000016a0| 3e 20 20 72 65 61 64 20 | 74 68 65 20 27 53 65 6e |> read |the 'Sen|
|000016b0| 64 6d 61 69 6c 20 49 6e | 73 74 61 6c 6c 61 74 69 |dmail In|stallati|
|000016c0| 6f 6e 20 61 6e 64 20 4f | 70 65 72 61 74 69 6f 6e |on and O|peration|
|000016d0| 27 20 74 75 74 6f 72 69 | 61 6c 20 69 6e 20 74 68 |' tutori|al in th|
|000016e0| 65 0a 20 20 3e 3e 20 20 | 53 75 6e 20 73 79 73 74 |e. >> |Sun syst|
|000016f0| 65 6d 20 61 64 6d 69 6e | 69 73 74 72 61 74 6f 72 |em admin|istrator|
|00001700| 73 20 67 75 69 64 65 20 | 74 6f 20 66 61 6d 69 6c |s guide |to famil|
|00001710| 69 61 72 69 7a 65 20 79 | 6f 75 72 73 65 6c 66 20 |iarize y|ourself |
|00001720| 77 69 74 68 0a 20 20 3e | 3e 20 20 73 65 6e 64 6d |with. >|> sendm|
|00001730| 61 69 6c 2e 0a 0a 20 20 | 4f 6e 20 74 68 65 20 53 |ail... |On the S|
|00001740| 75 6e 20 69 6e 73 74 61 | 6c 6c 61 74 69 6f 6e 20 |un insta|llation |
|00001750| 74 61 70 65 28 73 29 2c | 20 73 65 6e 64 6d 61 69 |tape(s),| sendmai|
|00001760| 6c 2e 63 66 20 63 61 6d | 65 20 69 6e 20 74 77 6f |l.cf cam|e in two|
|00001770| 20 66 6f 72 6d 73 2c 0a | 20 20 73 65 6e 64 6d 61 | forms,.| sendma|
|00001780| 69 6c 2e 6d 61 69 6e 2e | 63 66 20 61 6e 64 20 73 |il.main.|cf and s|
|00001790| 65 6e 64 6d 61 69 6c 2e | 73 75 62 73 69 64 69 61 |endmail.|subsidia|
|000017a0| 72 79 2e 63 66 2e 20 20 | 57 69 74 68 20 64 6e 61 |ry.cf. |With dna|
|000017b0| 6d 61 69 6c 2c 20 74 68 | 65 72 65 0a 20 20 61 72 |mail, th|ere. ar|
|000017c0| 65 20 66 6f 75 72 20 63 | 6f 6d 62 69 6e 61 74 69 |e four c|ombinati|
|000017d0| 6f 6e 73 20 2d 20 6d 61 | 69 6e 2c 20 73 75 62 73 |ons - ma|in, subs|
|000017e0| 69 64 69 61 72 79 2c 20 | 73 75 62 5f 64 65 63 6e |idiary, |sub_decn|
|000017f0| 65 74 2c 20 61 6e 64 20 | 6d 61 69 6e 5f 64 65 63 |et, and |main_dec|
|00001800| 6e 65 74 2e 0a 20 20 52 | 65 6d 65 6d 62 65 72 20 |net.. R|emember |
|00001810| 74 6f 20 6d 61 6b 65 20 | 61 20 73 79 6d 62 6f 6c |to make |a symbol|
|00001820| 69 63 20 6c 69 6e 6b 20 | 74 6f 20 74 68 65 20 63 |ic link |to the c|
|00001830| 6f 72 72 65 63 74 20 66 | 69 6c 65 20 6f 6e 20 65 |orrect f|ile on e|
|00001840| 61 63 68 20 6d 61 63 68 | 69 6e 65 0a 20 20 28 73 |ach mach|ine. (s|
|00001850| 65 65 20 74 68 65 20 53 | 75 6e 20 73 79 73 74 65 |ee the S|un syste|
|00001860| 6d 20 61 64 6d 69 6e 69 | 73 74 72 61 74 6f 72 73 |m admini|strators|
|00001870| 20 6d 61 6e 75 61 6c 29 | 2e 0a 0a 20 20 27 64 69 | manual)|... 'di|
|00001880| 66 66 27 20 6f 75 74 70 | 75 74 20 69 73 20 69 6e |ff' outp|ut is in|
|00001890| 63 6c 75 64 65 64 20 69 | 6e 20 74 68 69 73 20 64 |cluded i|n this d|
|000018a0| 69 73 74 72 69 62 75 74 | 69 6f 6e 20 73 68 6f 77 |istribut|ion show|
|000018b0| 69 6e 67 20 74 68 65 20 | 63 68 61 6e 67 65 73 20 |ing the |changes |
|000018c0| 74 6f 0a 20 20 62 65 20 | 6d 61 64 65 20 74 6f 20 |to. be |made to |
|000018d0| 74 68 65 20 6f 72 69 67 | 69 6e 61 6c 20 73 65 6e |the orig|inal sen|
|000018e0| 64 6d 61 69 6c 2e 6d 61 | 69 6e 2e 63 66 20 61 6e |dmail.ma|in.cf an|
|000018f0| 64 20 73 65 6e 64 6d 61 | 69 6c 2e 73 75 62 73 69 |d sendma|il.subsi|
|00001900| 64 69 61 72 79 2e 63 66 | 0a 20 20 73 6f 20 74 68 |diary.cf|. so th|
|00001910| 61 74 20 74 68 65 79 20 | 77 69 6c 6c 20 68 61 6e |at they |will han|
|00001920| 64 6c 65 20 44 45 43 6e | 65 74 2e 20 20 49 66 20 |dle DECn|et. If |
|00001930| 79 6f 75 20 68 61 76 65 | 20 6e 6f 74 20 63 68 61 |you have| not cha|
|00001940| 6e 67 65 64 20 79 6f 75 | 72 0a 20 20 6f 72 69 67 |nged you|r. orig|
|00001950| 69 6e 61 6c 20 2e 63 66 | 20 6d 75 63 68 20 66 72 |inal .cf| much fr|
|00001960| 6f 6d 20 74 68 65 20 6f | 72 69 67 69 6e 61 6c 20 |om the o|riginal |
|00001970| 53 4d 49 2d 33 2e 32 20 | 76 65 72 73 69 6f 6e 2c |SMI-3.2 |version,|
|00001980| 20 74 68 65 6e 20 74 68 | 65 20 70 61 74 63 68 65 | then th|e patche|
|00001990| 73 0a 20 20 6d 61 79 20 | 77 6f 72 6b 20 61 73 20 |s. may |work as |
|000019a0| 69 73 2e 20 20 49 66 20 | 6e 6f 74 2c 20 74 68 65 |is. If |not, the|
|000019b0| 6e 20 75 73 65 20 74 68 | 65 20 70 61 74 63 68 65 |n use th|e patche|
|000019c0| 73 20 61 6e 64 20 74 68 | 65 20 66 6f 6c 6c 6f 77 |s and th|e follow|
|000019d0| 69 6e 67 0a 20 20 69 6e | 73 74 72 75 63 74 69 6f |ing. in|structio|
|000019e0| 6e 73 20 61 73 20 61 20 | 67 75 69 64 65 2e 20 20 |ns as a |guide. |
|000019f0| 45 76 65 6e 20 69 66 20 | 70 61 74 63 68 20 77 6f |Even if |patch wo|
|00001a00| 72 6b 73 2c 20 79 6f 75 | 20 73 74 69 6c 6c 20 6e |rks, you| still n|
|00001a10| 65 65 64 0a 20 20 74 6f | 20 72 65 61 64 20 74 68 |eed. to| read th|
|00001a20| 65 73 65 20 69 6e 73 74 | 72 75 63 74 69 6f 6e 73 |ese inst|ructions|
|00001a30| 20 28 74 77 6f 20 6f 74 | 68 65 72 20 66 69 6c 65 | (two ot|her file|
|00001a40| 73 20 6e 65 65 64 20 63 | 68 61 6e 67 69 6e 67 29 |s need c|hanging)|
|00001a50| 2e 0a 0a 20 20 42 72 69 | 65 66 6c 79 20 2d 20 75 |... Bri|efly - u|
|00001a60| 73 65 20 70 61 74 63 68 | 20 74 6f 20 63 72 65 61 |se patch| to crea|
|00001a70| 74 65 20 6e 65 77 20 76 | 65 72 73 69 6f 6e 20 6f |te new v|ersion o|
|00001a80| 66 20 74 68 65 20 2e 63 | 66 20 66 69 6c 65 73 2e |f the .c|f files.|
|00001a90| 20 20 54 68 65 6e 20 66 | 6f 72 0a 20 20 65 76 65 | Then f|or. eve|
|00001aa0| 72 79 20 53 75 6e 20 74 | 68 61 74 20 72 75 6e 73 |ry Sun t|hat runs|
|00001ab0| 20 44 4e 49 2c 20 75 6e | 63 6f 6d 6d 65 6e 74 20 | DNI, un|comment |
|00001ac0| 74 68 65 20 27 44 53 64 | 6e 61 68 6f 73 74 27 20 |the 'DSd|nahost' |
|00001ad0| 6c 69 6e 65 20 66 6f 72 | 20 69 74 20 28 75 73 65 |line for| it (use|
|00001ae0| 0a 20 20 61 20 70 72 69 | 76 61 74 65 20 63 6f 70 |. a pri|vate cop|
|00001af0| 79 21 29 2e 0a 0a 20 20 | 52 45 4d 45 4d 42 45 52 |y!)... |REMEMBER|
|00001b00| 3a 20 20 4d 61 6b 65 20 | 62 61 63 6b 75 70 73 20 |: Make |backups |
|00001b10| 6f 66 20 74 68 65 20 6f | 72 69 67 69 6e 61 6c 20 |of the o|riginal |
|00001b20| 2e 63 66 20 66 69 6c 65 | 73 21 21 20 20 49 74 20 |.cf file|s!! It |
|00001b30| 61 6c 73 6f 20 68 65 6c | 70 73 0a 20 20 20 20 20 |also hel|ps. |
|00001b40| 20 20 20 20 20 20 20 20 | 74 6f 20 63 6f 6d 6d 65 | |to comme|
|00001b50| 6e 74 20 65 61 63 68 20 | 6f 66 20 74 68 65 20 6c |nt each |of the l|
|00001b60| 69 6e 65 73 20 79 6f 75 | 20 63 68 61 6e 67 65 64 |ines you| changed|
|00001b70| 2e 0a 0a 20 20 48 65 72 | 65 20 61 72 65 20 74 68 |... Her|e are th|
|00001b80| 65 20 62 61 73 69 63 20 | 63 68 61 6e 67 65 73 2e |e basic |changes.|
|00001b90| 20 20 41 6e 79 74 68 69 | 6e 67 20 74 68 61 74 20 | Anythi|ng that |
|00001ba0| 6c 6f 6f 6b 73 20 6c 69 | 6b 65 20 6d 75 6c 74 69 |looks li|ke multi|
|00001bb0| 70 6c 65 20 73 70 61 63 | 65 73 0a 20 20 73 68 6f |ple spac|es. sho|
|00001bc0| 75 6c 64 20 61 63 74 75 | 61 6c 6c 79 20 62 65 20 |uld actu|ally be |
|00001bd0| 61 20 74 61 62 2e 0a 0a | 20 20 2d 20 69 6e 20 2f |a tab...| - in /|
|00001be0| 65 74 63 2f 68 6f 73 74 | 73 2c 20 61 64 64 20 27 |etc/host|s, add '|
|00001bf0| 64 6e 61 68 6f 73 74 27 | 20 61 73 20 61 6e 20 61 |dnahost'| as an a|
|00001c00| 6c 74 65 72 6e 61 74 65 | 20 6e 61 6d 65 20 66 6f |lternate| name fo|
|00001c10| 72 20 74 68 65 20 6d 61 | 63 68 69 6e 65 0a 20 20 |r the ma|chine. |
|00001c20| 20 20 79 6f 75 20 77 61 | 6e 74 20 74 6f 20 62 65 | you wa|nt to be|
|00001c30| 20 74 68 65 20 44 45 43 | 6e 65 74 20 72 65 6c 61 | the DEC|net rela|
|00001c40| 79 2e 20 20 46 6f 72 20 | 65 78 61 6d 70 6c 65 2c |y. For |example,|
|00001c50| 20 6d 79 20 73 69 74 65 | 20 68 61 73 3a 0a 0a 09 | my site| has:...|
|00001c60| 31 39 32 2e 39 2e 32 30 | 30 2e 31 09 6e 6f 76 61 |192.9.20|0.1.nova|
|00001c70| 20 64 6e 61 68 6f 73 74 | 0a 0a 20 20 20 20 49 66 | dnahost|.. If|
|00001c80| 20 79 6f 75 20 68 61 76 | 65 20 6d 6f 72 65 20 74 | you hav|e more t|
|00001c90| 68 61 6e 20 6f 6e 65 20 | 6d 61 63 68 69 6e 65 20 |han one |machine |
|00001ca0| 72 75 6e 6e 69 6e 67 20 | 53 75 6e 6c 69 6e 6b 2f |running |Sunlink/|
|00001cb0| 44 4e 49 2c 20 74 68 65 | 6e 20 70 69 63 6b 0a 20 |DNI, the|n pick. |
|00001cc0| 20 20 20 6f 6e 65 20 6d | 61 63 68 69 6e 65 20 74 | one m|achine t|
|00001cd0| 6f 20 62 65 20 74 68 65 | 20 72 65 6c 61 79 20 66 |o be the| relay f|
|00001ce0| 6f 72 20 6d 61 63 68 69 | 6e 65 73 20 77 69 74 68 |or machi|nes with|
|00001cf0| 6f 75 74 20 53 75 6e 6c | 69 6e 6b 2f 44 4e 49 2e |out Sunl|ink/DNI.|
|00001d00| 0a 0a 20 20 2d 20 45 64 | 69 74 20 61 20 66 69 6c |.. - Ed|it a fil|
|00001d10| 65 20 63 61 6c 6c 65 64 | 20 22 2f 75 73 72 2f 73 |e called| "/usr/s|
|00001d20| 75 6e 6c 69 6e 6b 2f 64 | 6e 61 2f 64 6e 61 68 6f |unlink/d|na/dnaho|
|00001d30| 73 74 73 22 20 74 6f 20 | 63 6f 6e 74 61 69 6e 20 |sts" to |contain |
|00001d40| 61 20 6c 69 73 74 20 6f | 66 0a 20 20 20 20 61 6c |a list o|f. al|
|00001d50| 6c 20 56 4d 53 2f 44 45 | 43 6e 65 74 20 6e 6f 64 |l VMS/DE|Cnet nod|
|00001d60| 65 73 20 79 6f 75 20 77 | 61 6e 74 20 74 6f 20 73 |es you w|ant to s|
|00001d70| 65 6e 64 20 6d 61 69 6c | 20 74 6f 2c 20 6f 6e 65 |end mail| to, one|
|00001d80| 20 6e 6f 64 65 20 70 65 | 72 20 6c 69 6e 65 2e 0a | node pe|r line..|
|00001d90| 20 20 20 20 59 6f 75 20 | 64 6f 20 6e 6f 74 20 6e | You |do not n|
|00001da0| 65 65 64 20 74 6f 20 68 | 61 76 65 20 41 4c 4c 20 |eed to h|ave ALL |
|00001db0| 74 68 65 20 56 4d 53 20 | 6d 61 63 68 69 6e 65 73 |the VMS |machines|
|00001dc0| 20 6c 69 73 74 65 64 2c | 20 6a 75 73 74 20 74 68 | listed,| just th|
|00001dd0| 65 20 6f 6e 65 73 0a 20 | 20 20 20 79 6f 75 20 77 |e ones. | you w|
|00001de0| 61 6e 74 20 74 6f 20 73 | 65 6e 64 20 6d 61 69 6c |ant to s|end mail|
|00001df0| 20 74 6f 20 28 61 20 6c | 69 73 74 65 64 20 6d 61 | to (a l|isted ma|
|00001e00| 63 68 69 6e 65 20 63 61 | 6e 20 64 65 6c 69 76 65 |chine ca|n delive|
|00001e10| 72 20 6d 61 69 6c 20 74 | 6f 20 61 20 6d 61 63 68 |r mail t|o a mach|
|00001e20| 69 6e 65 0a 20 20 20 20 | 74 68 61 74 20 79 6f 75 |ine. |that you|
|00001e30| 20 64 69 64 6e 27 74 20 | 6c 69 73 74 29 2e 0a 0a | didn't |list)...|
|00001e40| 20 20 2d 20 41 64 64 20 | 74 68 65 20 66 6f 6c 6c | - Add |the foll|
|00001e50| 6f 77 69 6e 67 20 6c 69 | 6e 65 73 20 73 6f 6d 65 |owing li|nes some|
|00001e60| 77 68 65 72 65 20 6e 65 | 61 72 20 74 68 65 20 62 |where ne|ar the b|
|00001e70| 65 67 69 6e 6e 69 6e 67 | 20 6f 66 20 73 65 6e 64 |eginning| of send|
|00001e80| 6d 61 69 6c 2e 6d 61 69 | 6e 2e 63 66 0a 20 20 20 |mail.mai|n.cf. |
|00001e90| 20 61 6e 64 20 73 65 6e | 64 6d 61 69 6c 2e 73 75 | and sen|dmail.su|
|00001ea0| 62 73 69 64 69 61 72 79 | 2e 63 66 2e 0a 0a 09 23 |bsidiary|.cf....#|
|00001eb0| 20 4d 61 6a 6f 72 20 64 | 65 63 6e 65 74 20 72 65 | Major d|ecnet re|
|00001ec0| 6c 61 79 20 28 72 65 6c | 61 79 65 64 20 62 79 20 |lay (rel|ayed by |
|00001ed0| 23 65 74 68 65 72 29 0a | 09 44 53 64 6e 61 68 6f |#ether).|.DSdnaho|
|00001ee0| 73 74 0a 09 23 20 67 65 | 74 20 6c 69 73 74 20 6f |st..# ge|t list o|
|00001ef0| 66 20 64 65 63 6e 65 74 | 20 6d 61 63 68 69 6e 65 |f decnet| machine|
|00001f00| 73 20 77 65 20 77 61 6e | 74 20 74 6f 20 62 65 20 |s we wan|t to be |
|00001f10| 61 62 6c 65 20 74 6f 20 | 73 65 6e 64 20 6d 61 69 |able to |send mai|
|00001f20| 6c 20 74 6f 0a 09 46 53 | 2f 75 73 72 2f 73 75 6e |l to..FS|/usr/sun|
|00001f30| 6c 69 6e 6b 2f 64 6e 61 | 2f 64 6e 61 68 6f 73 74 |link/dna|/dnahost|
|00001f40| 73 0a 0a 20 20 20 20 54 | 68 65 20 44 53 20 6c 69 |s.. T|he DS li|
|00001f50| 6e 65 20 64 65 66 69 6e | 65 73 20 61 20 6d 61 63 |ne defin|es a mac|
|00001f60| 72 6f 2c 20 24 53 2c 20 | 74 6f 20 62 65 20 74 68 |ro, $S, |to be th|
|00001f70| 65 20 6e 61 6d 65 20 6f | 66 20 74 68 65 20 6d 61 |e name o|f the ma|
|00001f80| 63 68 69 6e 65 20 74 68 | 61 74 20 77 69 6c 6c 0a |chine th|at will.|
|00001f90| 20 20 20 20 61 63 74 75 | 61 6c 6c 79 20 63 6f 6e | actu|ally con|
|00001fa0| 6e 65 63 74 20 74 6f 20 | 44 45 43 6e 65 74 2e 20 |nect to |DECnet. |
|00001fb0| 20 41 6e 79 20 6d 61 63 | 68 69 6e 65 20 74 68 61 | Any mac|hine tha|
|00001fc0| 74 20 63 61 6e 27 74 20 | 68 61 6e 64 6c 65 20 44 |t can't |handle D|
|00001fd0| 45 43 6e 65 74 20 6d 61 | 69 6c 0a 20 20 20 20 77 |ECnet ma|il. w|
|00001fe0| 69 6c 6c 20 66 6f 72 77 | 61 72 64 20 61 6e 79 20 |ill forw|ard any |
|00001ff0| 44 45 43 6e 65 74 20 6d | 61 69 6c 20 74 6f 20 74 |DECnet m|ail to t|
|00002000| 68 69 73 20 6d 61 63 68 | 69 6e 65 20 74 6f 20 68 |his mach|ine to h|
|00002010| 61 6e 64 6c 65 20 69 74 | 20 69 6e 73 74 65 61 64 |andle it| instead|
|00002020| 2e 0a 20 20 20 20 49 66 | 20 61 6c 6c 20 79 6f 75 |.. If| all you|
|00002030| 72 20 6d 61 63 68 69 6e | 65 73 20 61 72 65 20 6f |r machin|es are o|
|00002040| 6e 20 44 45 43 6e 65 74 | 2c 20 74 68 65 6e 20 79 |n DECnet|, then y|
|00002050| 6f 75 20 64 6f 6e 27 74 | 20 6e 65 65 64 20 74 6f |ou don't| need to|
|00002060| 20 64 6f 20 74 68 69 73 | 2e 0a 20 20 20 20 49 66 | do this|.. If|
|00002070| 20 79 6f 75 20 61 6c 72 | 65 61 64 79 20 68 61 76 | you alr|eady hav|
|00002080| 65 20 61 20 24 53 20 6d | 61 63 72 6f 20 28 73 65 |e a $S m|acro (se|
|00002090| 61 72 63 68 20 66 6f 72 | 20 5e 44 53 20 69 6e 20 |arch for| ^DS in |
|000020a0| 76 69 29 2c 20 74 68 65 | 6e 20 63 68 6f 6f 73 65 |vi), the|n choose|
|000020b0| 20 61 6e 0a 20 20 20 20 | 75 6e 75 73 65 64 20 6d | an. |unused m|
|000020c0| 61 63 72 6f 20 69 6e 73 | 74 65 61 64 2e 0a 0a 20 |acro ins|tead... |
|000020d0| 20 20 20 54 68 65 20 46 | 53 20 6c 69 6e 65 20 64 | The F|S line d|
|000020e0| 65 66 69 6e 65 73 20 61 | 20 63 6c 61 73 73 2c 20 |efines a| class, |
|000020f0| 24 53 2c 20 74 68 61 74 | 20 64 65 66 69 6e 65 73 |$S, that| defines|
|00002100| 20 74 68 65 20 56 4d 53 | 20 6e 6f 64 65 73 0a 20 | the VMS| nodes. |
|00002110| 20 20 20 77 65 20 63 61 | 6e 20 73 65 6e 64 20 6d | we ca|n send m|
|00002120| 61 69 6c 20 74 6f 20 77 | 69 74 68 20 64 6e 61 6d |ail to w|ith dnam|
|00002130| 61 69 6c 2e 0a 20 20 20 | 0a 20 20 2d 20 41 64 64 |ail.. |. - Add|
|00002140| 20 27 64 6e 61 27 20 61 | 73 20 61 20 74 72 75 73 | 'dna' a|s a trus|
|00002150| 74 65 64 20 75 73 65 72 | 2e 20 20 4c 6f 6f 6b 20 |ted user|. Look |
|00002160| 66 6f 72 20 74 68 65 20 | 66 6f 6c 6c 6f 77 69 6e |for the |followin|
|00002170| 67 20 6c 69 6e 65 73 20 | 69 6e 0a 20 20 20 20 73 |g lines |in. s|
|00002180| 65 6e 64 6d 61 69 6c 2e | 6d 61 69 6e 2e 63 66 20 |endmail.|main.cf |
|00002190| 61 6e 64 20 73 65 6e 64 | 6d 61 69 6c 2e 73 75 62 |and send|mail.sub|
|000021a0| 73 69 64 69 61 72 79 2e | 63 66 3a 0a 0a 09 54 72 |sidiary.|cf:...Tr|
|000021b0| 6f 6f 74 0a 09 54 64 61 | 65 6d 6f 6e 0a 09 54 75 |oot..Tda|emon..Tu|
|000021c0| 75 63 70 0a 0a 20 20 20 | 20 61 6e 64 20 61 64 64 |ucp.. | and add|
|000021d0| 20 74 68 65 20 66 6f 6c | 6c 6f 77 69 6e 67 20 6c | the fol|lowing l|
|000021e0| 69 6e 65 20 74 6f 20 74 | 68 65 73 65 3a 0a 0a 09 |ine to t|hese:...|
|000021f0| 54 64 6e 61 0a 0a 20 20 | 2d 20 49 6e 20 73 65 6e |Tdna.. |- In sen|
|00002200| 64 6d 61 69 6c 2e 6d 61 | 69 6e 2e 63 66 20 28 6f |dmail.ma|in.cf (o|
|00002210| 6e 6c 79 29 2c 20 6c 6f | 6f 6b 20 66 6f 72 20 74 |nly), lo|ok for t|
|00002220| 68 65 20 66 6f 6c 6c 6f | 77 69 6e 67 20 6c 69 6e |he follo|wing lin|
|00002230| 65 73 20 28 69 6e 20 72 | 75 6c 65 73 65 74 20 30 |es (in r|uleset 0|
|00002240| 29 3a 0a 0a 09 23 20 72 | 65 73 6f 6c 76 65 20 55 |):...# r|esolve U|
|00002250| 55 43 50 20 64 6f 6d 61 | 69 6e 0a 09 52 3c 40 24 |UCP doma|in..R<@$|
|00002260| 2d 2e 75 75 63 70 3e 3a | 24 2b 09 09 24 23 75 75 |-.uucp>:|$+..$#uu|
|00002270| 63 70 09 24 40 24 31 20 | 24 3a 24 32 09 40 68 6f |cp.$@$1 |$:$2.@ho|
|00002280| 73 74 2e 75 75 63 70 3a | 2e 2e 2e 0a 0a 20 20 20 |st.uucp:|..... |
|00002290| 20 61 6e 64 20 61 64 64 | 20 74 68 65 73 65 20 6e | and add| these n|
|000022a0| 65 78 74 20 6c 69 6e 65 | 73 20 42 45 46 4f 52 45 |ext line|s BEFORE|
|000022b0| 20 74 68 65 6d 3a 0a 0a | 20 20 20 20 20 20 20 20 | them:..| |
|000022c0| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|000022d0| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|000022e0| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|000022f0| 23 23 23 23 0a 20 20 20 | 20 20 20 20 20 23 20 20 |####. | # |
|00002300| 49 66 20 24 53 20 28 64 | 65 63 6e 65 74 20 67 61 |If $S (d|ecnet ga|
|00002310| 74 65 77 61 79 29 20 69 | 73 20 64 65 66 69 6e 65 |teway) i|s define|
|00002320| 64 2c 20 74 68 65 6e 20 | 66 6f 72 77 61 72 64 20 |d, then |forward |
|00002330| 74 6f 20 24 53 2c 20 65 | 6c 73 65 0a 20 20 20 20 |to $S, e|lse. |
|00002340| 20 20 20 20 23 20 20 72 | 65 73 6f 6c 76 65 20 74 | # r|esolve t|
|00002350| 6f 20 64 6e 61 20 6d 61 | 69 6c 65 72 2e 0a 20 20 |o dna ma|iler.. |
|00002360| 20 20 20 20 20 20 23 23 | 23 23 23 23 23 23 23 23 | ##|########|
|00002370| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00002380| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00002390| 23 23 23 23 23 23 23 23 | 23 23 0a 20 20 20 20 20 |########|##. |
|000023a0| 20 20 20 52 24 2b 3c 40 | 24 3d 53 3e 09 09 24 3f | R$+<@|$=S>..$?|
|000023b0| 53 20 24 23 65 74 68 65 | 72 20 24 40 24 53 20 24 |S $#ethe|r $@$S $|
|000023c0| 3a 24 32 21 24 31 20 24 | 7c 20 24 23 64 6e 61 20 |:$2!$1 $|| $#dna |
|000023d0| 24 40 24 32 20 24 3a 24 | 31 20 24 2e 0a 20 20 20 |$@$2 $:$|1 $.. |
|000023e0| 20 20 20 20 20 52 24 2b | 3c 40 24 3d 53 2e 75 75 | R$+|<@$=S.uu|
|000023f0| 63 70 3e 09 09 24 3f 53 | 20 24 23 65 74 68 65 72 |cp>..$?S| $#ether|
|00002400| 20 24 40 24 53 20 24 3a | 24 32 21 24 31 20 24 7c | $@$S $:|$2!$1 $||
|00002410| 20 24 23 64 6e 61 20 24 | 40 24 32 20 24 3a 24 31 | $#dna $|@$2 $:$1|
|00002420| 20 24 2e 0a 0a 20 20 20 | 20 28 49 66 20 79 6f 75 | $... | (If you|
|00002430| 20 61 72 65 6e 27 74 20 | 75 73 69 6e 67 20 27 53 | aren't |using 'S|
|00002440| 27 20 61 73 20 74 68 65 | 20 6d 61 63 72 6f 20 66 |' as the| macro f|
|00002450| 6f 72 20 27 64 6e 61 68 | 6f 73 74 27 2c 20 74 68 |or 'dnah|ost', th|
|00002460| 65 6e 20 73 75 62 73 69 | 74 75 74 65 0a 20 20 20 |en subsi|tute. |
|00002470| 20 69 6e 20 74 68 65 20 | 6d 61 63 72 6f 20 6c 65 | in the |macro le|
|00002480| 74 74 65 72 20 79 6f 75 | 20 61 72 65 20 75 73 69 |tter you| are usi|
|00002490| 6e 67 29 2e 0a 0a 20 20 | 2d 20 49 6e 20 73 65 6e |ng)... |- In sen|
|000024a0| 64 6d 61 69 6c 2e 73 75 | 62 73 69 64 69 61 72 79 |dmail.su|bsidiary|
|000024b0| 2e 63 66 20 28 6f 6e 6c | 79 29 2c 20 6c 6f 6f 6b |.cf (onl|y), look|
|000024c0| 20 66 6f 72 20 74 68 65 | 20 66 6f 6c 6c 6f 77 69 | for the| followi|
|000024d0| 6e 67 20 6c 69 6e 65 73 | 0a 20 20 20 20 28 69 6e |ng lines|. (in|
|000024e0| 20 72 75 6c 65 73 65 74 | 20 30 29 3a 0a 0a 20 20 | ruleset| 0):.. |
|000024f0| 20 20 20 20 20 20 23 20 | 6f 70 74 69 6d 69 7a 65 | # |optimize|
|00002500| 20 6e 61 6d 65 73 20 6f | 66 20 6b 6e 6f 77 6e 20 | names o|f known |
|00002510| 65 74 68 65 72 6e 65 74 | 20 68 6f 73 74 73 0a 20 |ethernet| hosts. |
|00002520| 20 20 20 20 20 20 20 52 | 24 2a 3c 40 24 2a 24 25 | R|$*<@$*$%|
|00002530| 79 2e 4c 4f 43 41 4c 3e | 24 2a 09 24 23 65 74 68 |y.LOCAL>|$*.$#eth|
|00002540| 65 72 20 24 40 24 33 20 | 24 3a 24 31 3c 40 24 32 |er $@$3 |$:$1<@$2|
|00002550| 24 33 3e 24 34 09 75 73 | 65 72 40 68 6f 73 74 2e |$3>$4.us|er@host.|
|00002560| 68 65 72 65 0a 0a 20 20 | 20 20 61 6e 64 20 61 64 |here.. | and ad|
|00002570| 64 20 74 68 65 73 65 20 | 6e 65 78 74 20 6c 69 6e |d these |next lin|
|00002580| 65 73 20 42 45 46 4f 52 | 45 20 74 68 65 6d 3a 0a |es BEFOR|E them:.|
|00002590| 0a 20 20 20 20 20 20 20 | 20 23 23 23 23 23 23 23 |. | #######|
|000025a0| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|000025b0| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|000025c0| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 0a 20 20 |########|#####. |
|000025d0| 20 20 20 20 20 20 23 20 | 20 49 66 20 24 53 20 28 | # | If $S (|
|000025e0| 64 65 63 6e 65 74 20 67 | 61 74 65 77 61 79 29 20 |decnet g|ateway) |
|000025f0| 69 73 20 64 65 66 69 6e | 65 64 2c 20 74 68 65 6e |is defin|ed, then|
|00002600| 20 66 6f 72 77 61 72 64 | 20 74 6f 20 24 53 2c 20 | forward| to $S, |
|00002610| 65 6c 73 65 0a 20 20 20 | 20 20 20 20 20 23 20 20 |else. | # |
|00002620| 72 65 73 6f 6c 76 65 20 | 74 6f 20 64 6e 61 20 6d |resolve |to dna m|
|00002630| 61 69 6c 65 72 2e 0a 20 | 20 20 20 20 20 20 20 23 |ailer.. | #|
|00002640| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00002650| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00002660| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00002670| 23 23 23 0a 20 20 20 20 | 20 20 20 20 52 24 2b 3c |###. | R$+<|
|00002680| 40 24 3d 53 3e 09 09 24 | 3f 53 20 24 23 65 74 68 |@$=S>..$|?S $#eth|
|00002690| 65 72 20 24 40 24 53 20 | 24 3a 24 32 21 24 31 20 |er $@$S |$:$2!$1 |
|000026a0| 24 7c 20 24 23 64 6e 61 | 20 24 40 24 32 20 24 3a |$| $#dna| $@$2 $:|
|000026b0| 24 31 20 24 2e 0a 20 20 | 20 20 20 20 20 20 52 24 |$1 $.. | R$|
|000026c0| 2b 3c 40 24 3d 53 2e 75 | 75 63 70 3e 09 09 24 3f |+<@$=S.u|ucp>..$?|
|000026d0| 53 20 24 23 65 74 68 65 | 72 20 24 40 24 53 20 24 |S $#ethe|r $@$S $|
|000026e0| 3a 24 32 21 24 31 20 24 | 7c 20 24 23 64 6e 61 20 |:$2!$1 $|| $#dna |
|000026f0| 24 40 24 32 20 24 3a 24 | 31 20 24 2e 0a 0a 20 20 |$@$2 $:$|1 $... |
|00002700| 20 20 28 49 66 20 79 6f | 75 20 61 72 65 6e 27 74 | (If yo|u aren't|
|00002710| 20 75 73 69 6e 67 20 27 | 53 27 20 61 73 20 74 68 | using '|S' as th|
|00002720| 65 20 6d 61 63 72 6f 20 | 66 6f 72 20 27 64 6e 61 |e macro |for 'dna|
|00002730| 68 6f 73 74 27 2c 20 74 | 68 65 6e 20 73 75 62 73 |host', t|hen subs|
|00002740| 69 74 75 74 65 0a 20 20 | 20 20 69 6e 20 74 68 65 |itute. | in the|
|00002750| 20 6d 61 63 72 6f 20 6c | 65 74 74 65 72 20 79 6f | macro l|etter yo|
|00002760| 75 20 61 72 65 20 75 73 | 69 6e 67 29 2e 0a 0a 20 |u are us|ing)... |
|00002770| 20 2d 20 41 64 64 20 74 | 68 65 20 66 6f 6c 6c 6f | - Add t|he follo|
|00002780| 77 69 6e 67 20 6c 69 6e | 65 73 20 74 6f 20 73 65 |wing lin|es to se|
|00002790| 6e 64 6d 61 69 6c 2e 6d | 61 69 6e 2e 63 66 20 61 |ndmail.m|ain.cf a|
|000027a0| 6e 64 20 73 65 6e 64 6d | 61 69 6c 2e 73 75 62 73 |nd sendm|ail.subs|
|000027b0| 69 64 69 61 72 79 2e 63 | 66 0a 20 20 20 20 28 61 |idiary.c|f. (a|
|000027c0| 74 20 74 68 65 20 65 6e | 64 20 6f 66 20 74 68 65 |t the en|d of the|
|000027d0| 20 66 69 6c 65 2c 20 6f | 72 20 67 72 6f 75 70 65 | file, o|r groupe|
|000027e0| 64 20 77 69 74 68 20 74 | 68 65 20 6f 74 68 65 72 |d with t|he other|
|000027f0| 20 6d 61 69 6c 65 72 20 | 64 65 66 69 6e 69 74 69 | mailer |definiti|
|00002800| 6f 6e 73 29 3a 0a 0a 09 | 23 23 23 23 23 23 23 23 |ons):...|########|
|00002810| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00002820| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00002830| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00002840| 23 23 23 23 0a 09 23 23 | 23 23 23 23 23 23 23 23 |####..##|########|
|00002850| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00002860| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00002870| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00002880| 23 23 0a 09 23 23 23 23 | 23 0a 09 23 23 23 23 23 |##..####|#..#####|
|00002890| 09 09 44 45 43 6e 65 74 | 20 4d 61 69 6c 65 72 20 |..DECnet| Mailer |
|000028a0| 73 70 65 63 69 66 69 63 | 61 74 69 6f 6e 0a 09 23 |specific|ation..#|
|000028b0| 23 23 23 23 0a 09 23 23 | 23 23 23 09 4d 65 73 73 |####..##|###.Mess|
|000028c0| 61 67 65 73 20 70 72 6f | 63 65 73 73 65 64 20 62 |ages pro|cessed b|
|000028d0| 79 20 74 68 69 73 20 63 | 6f 6e 66 69 67 75 72 61 |y this c|onfigura|
|000028e0| 74 69 6f 6e 20 61 72 65 | 20 61 73 73 75 6d 65 64 |tion are| assumed|
|000028f0| 20 74 6f 20 6c 65 61 76 | 65 0a 09 23 23 23 23 23 | to leav|e..#####|
|00002900| 20 20 20 74 68 65 20 69 | 6e 74 65 72 6e 65 74 20 | the i|nternet |
|00002910| 64 6f 6d 61 69 6e 2e 20 | 20 48 65 6e 63 65 2c 20 |domain. | Hence, |
|00002920| 74 68 65 79 20 6d 61 79 | 20 6e 6f 74 20 6e 65 63 |they may| not nec|
|00002930| 65 73 73 61 72 69 6c 79 | 20 63 6f 72 72 65 73 70 |essarily| corresp|
|00002940| 6f 6e 64 0a 09 23 23 23 | 23 23 09 74 6f 20 52 46 |ond..###|##.to RF|
|00002950| 43 38 32 32 20 69 6e 20 | 61 6c 6c 20 64 65 74 61 |C822 in |all deta|
|00002960| 69 6c 73 2e 0a 09 23 23 | 23 23 23 0a 09 23 23 23 |ils...##|###..###|
|00002970| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00002980| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|00002990| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|000029a0| 23 23 23 23 23 23 23 23 | 23 0a 09 23 23 23 23 23 |########|#..#####|
|000029b0| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|000029c0| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|000029d0| 23 23 23 23 23 23 23 23 | 23 23 23 23 23 23 23 23 |########|########|
|000029e0| 23 23 23 23 23 23 23 0a | 0a 09 4d 64 6e 61 2c 09 |#######.|..Mdna,.|
|000029f0| 50 3d 2f 75 73 72 2f 73 | 75 6e 6c 69 6e 6b 2f 64 |P=/usr/s|unlink/d|
|00002a00| 6e 61 2f 64 6e 61 6d 61 | 69 6c 2c 20 46 3d 6d 6e |na/dnama|il, F=mn|
|00002a10| 53 46 2c 20 53 3d 31 34 | 2c 20 52 3d 32 34 2c 0a |SF, S=14|, R=24,.|
|00002a20| 09 09 41 3d 64 6e 61 6d | 61 69 6c 20 2d 66 20 24 |..A=dnam|ail -f $|
|00002a30| 66 20 2d 6e 20 24 68 20 | 24 75 0a 0a 09 53 31 34 |f -n $h |$u...S14|
|00002a40| 0a 09 23 20 6e 6f 6e 65 | 20 6e 65 65 64 65 64 0a |..# none| needed.|
|00002a50| 09 53 32 34 0a 09 23 20 | 6e 6f 6e 65 20 6e 65 65 |.S24..# |none nee|
|00002a60| 64 65 64 0a 0a 20 20 2d | 20 4e 6f 77 20 63 6f 70 |ded.. -| Now cop|
|00002a70| 79 20 73 65 6e 64 6d 61 | 69 6c 2e 6d 61 69 6e 2e |y sendma|il.main.|
|00002a80| 63 66 20 74 6f 20 73 65 | 6e 64 6d 61 69 6c 2e 6d |cf to se|ndmail.m|
|00002a90| 61 69 6e 5f 64 65 63 6e | 65 74 2e 63 66 2e 20 20 |ain_decn|et.cf. |
|00002aa0| 41 6c 73 6f 20 63 6f 70 | 79 0a 20 20 20 20 73 65 |Also cop|y. se|
|00002ab0| 6e 64 6d 61 69 6c 2e 73 | 75 62 73 69 64 69 61 72 |ndmail.s|ubsidiar|
|00002ac0| 79 2e 63 66 20 74 6f 20 | 73 65 6e 64 6d 61 69 6c |y.cf to |sendmail|
|00002ad0| 2e 73 75 62 5f 64 65 63 | 6e 65 74 2e 63 66 2e 20 |.sub_dec|net.cf. |
|00002ae0| 20 45 64 69 74 20 62 6f | 74 68 20 6f 66 0a 20 20 | Edit bo|th of. |
|00002af0| 20 20 74 68 65 73 65 20 | 6e 65 77 20 66 69 6c 65 | these |new file|
|00002b00| 73 20 61 6e 64 20 63 68 | 61 6e 67 65 20 74 68 65 |s and ch|ange the|
|00002b10| 20 66 6f 6c 6c 6f 77 69 | 6e 67 20 6c 69 6e 65 3a | followi|ng line:|
|00002b20| 0a 0a 09 44 53 64 6e 61 | 68 6f 73 74 0a 0a 20 20 |...DSdna|host.. |
|00002b30| 20 20 74 6f 3a 0a 0a 09 | 23 20 44 53 64 6e 61 68 | to:...|# DSdnah|
|00002b40| 6f 73 74 0a 0a 20 20 20 | 20 28 74 68 69 73 20 63 |ost.. | (this c|
|00002b50| 6f 6d 6d 65 6e 74 73 20 | 74 68 65 20 6c 69 6e 65 |omments |the line|
|00002b60| 20 6f 75 74 29 2e 20 20 | 54 68 69 73 20 6f 6e 65 | out). |This one|
|00002b70| 20 6c 69 6e 65 20 73 68 | 6f 75 6c 64 20 62 65 20 | line sh|ould be |
|00002b80| 74 68 65 20 6f 6e 6c 79 | 20 63 68 61 6e 67 65 2e |the only| change.|
|00002b90| 0a 20 20 20 20 4e 6f 77 | 20 66 6f 72 20 65 61 63 |. Now| for eac|
|00002ba0| 68 20 6d 61 63 68 69 6e | 65 20 74 68 61 74 20 69 |h machin|e that i|
|00002bb0| 73 20 61 20 76 61 6c 69 | 64 20 44 45 43 6e 65 74 |s a vali|d DECnet|
|00002bc0| 20 6e 6f 64 65 2c 20 6d | 61 6b 65 20 61 20 6c 69 | node, m|ake a li|
|00002bd0| 6e 6b 20 66 72 6f 6d 0a | 20 20 20 20 73 65 6e 64 |nk from.| send|
|00002be0| 6d 61 69 6c 2e 63 66 20 | 28 69 6e 20 2f 70 72 69 |mail.cf |(in /pri|
|00002bf0| 76 61 74 65 2f 75 73 72 | 2f 6c 69 62 20 66 6f 72 |vate/usr|/lib for|
|00002c00| 20 73 74 61 6e 64 61 72 | 64 20 69 6e 73 74 61 6c | standar|d instal|
|00002c10| 6c 61 74 69 6f 6e 73 29 | 20 74 6f 0a 20 20 20 20 |lations)| to. |
|00002c20| 73 65 6e 64 6d 61 69 6c | 2e 6d 61 69 6e 5f 64 65 |sendmail|.main_de|
|00002c30| 63 6e 65 74 2e 63 66 20 | 6f 72 20 73 65 6e 64 6d |cnet.cf |or sendm|
|00002c40| 61 69 6c 2e 73 75 62 5f | 64 65 63 6e 65 74 2e 63 |ail.sub_|decnet.c|
|00002c50| 66 2e 20 20 44 65 70 65 | 6e 64 69 6e 67 20 75 70 |f. Depe|nding up|
|00002c60| 6f 6e 0a 20 20 20 20 77 | 68 65 74 68 65 72 20 74 |on. w|hether t|
|00002c70| 68 65 20 6d 61 63 68 69 | 6e 65 20 69 73 20 61 20 |he machi|ne is a |
|00002c80| 6d 61 69 6e 20 6d 61 69 | 6c 20 6d 61 63 68 69 6e |main mai|l machin|
|00002c90| 65 20 6f 72 20 6e 6f 74 | 2c 20 75 73 65 20 6f 6e |e or not|, use on|
|00002ca0| 65 20 6f 66 20 74 68 65 | 0a 20 20 20 20 66 6f 6c |e of the|. fol|
|00002cb0| 6c 6f 77 69 6e 67 20 63 | 6f 6d 6d 61 6e 64 73 3a |lowing c|ommands:|
|00002cc0| 0a 0a 09 6c 6e 20 2d 73 | 20 2f 75 73 72 2f 6c 69 |...ln -s| /usr/li|
|00002cd0| 62 2f 73 65 6e 64 6d 61 | 69 6c 2e 6d 61 69 6e 5f |b/sendma|il.main_|
|00002ce0| 64 65 63 6e 65 74 2e 63 | 66 20 2f 70 72 69 76 61 |decnet.c|f /priva|
|00002cf0| 74 65 2f 75 73 72 2f 6c | 69 62 2f 73 65 6e 64 6d |te/usr/l|ib/sendm|
|00002d00| 61 69 6c 2e 63 66 0a 20 | 20 20 20 6f 72 0a 09 6c |ail.cf. | or..l|
|00002d10| 6e 20 2d 73 20 2f 75 73 | 72 2f 6c 69 62 2f 73 65 |n -s /us|r/lib/se|
|00002d20| 6e 64 6d 61 69 6c 2e 73 | 75 62 5f 64 65 63 6e 65 |ndmail.s|ub_decne|
|00002d30| 74 2e 63 66 20 2f 70 72 | 69 76 61 74 65 2f 75 73 |t.cf /pr|ivate/us|
|00002d40| 72 2f 6c 69 62 2f 73 65 | 6e 64 6d 61 69 6c 2e 63 |r/lib/se|ndmail.c|
|00002d50| 66 0a 0a 20 20 54 68 61 | 74 27 73 20 69 74 21 21 |f.. Tha|t's it!!|
|00002d60| 20 41 66 74 65 72 20 6d | 61 6b 69 6e 67 20 74 68 | After m|aking th|
|00002d70| 65 20 63 68 61 6e 67 65 | 73 2c 20 79 6f 75 20 6e |e change|s, you n|
|00002d80| 65 65 64 20 74 6f 20 72 | 65 73 74 61 72 74 20 73 |eed to r|estart s|
|00002d90| 65 6e 64 6d 61 69 6c 2e | 0a 20 20 53 69 6e 63 65 |endmail.|. Since|
|00002da0| 20 73 65 6e 64 6d 61 69 | 6c 20 64 6f 65 73 20 6e | sendmai|l does n|
|00002db0| 6f 74 20 68 61 76 65 20 | 74 68 65 20 63 61 70 61 |ot have |the capa|
|00002dc0| 62 69 6c 69 74 79 20 6f | 66 20 27 72 65 2d 72 65 |bility o|f 're-re|
|00002dd0| 61 64 69 6e 67 27 20 74 | 68 65 20 0a 20 20 63 6f |ading' t|he . co|
|00002de0| 6e 66 69 67 75 72 61 74 | 69 6f 6e 20 66 69 6c 65 |nfigurat|ion file|
|00002df0| 2c 20 79 6f 75 20 77 69 | 6c 6c 20 68 61 76 65 20 |, you wi|ll have |
|00002e00| 74 6f 20 73 74 6f 70 20 | 74 68 65 20 63 75 72 72 |to stop |the curr|
|00002e10| 65 6e 74 6c 79 20 72 75 | 6e 6e 69 6e 67 0a 20 20 |ently ru|nning. |
|00002e20| 73 65 6e 64 6d 61 69 6c | 2c 20 61 6e 64 20 74 68 |sendmail|, and th|
|00002e30| 65 6e 20 72 75 6e 20 69 | 74 20 61 67 61 69 6e 20 |en run i|t again |
|00002e40| 28 61 73 20 72 6f 6f 74 | 29 20 77 69 74 68 20 74 |(as root|) with t|
|00002e50| 68 65 20 73 61 6d 65 20 | 70 61 72 61 6d 65 74 65 |he same |paramete|
|00002e60| 72 73 0a 20 20 61 73 20 | 74 68 65 20 6f 6c 64 20 |rs. as |the old |
|00002e70| 69 6e 76 6f 63 61 74 69 | 6f 6e 20 28 75 73 75 61 |invocati|on (usua|
|00002e80| 6c 6c 79 2c 20 2f 75 73 | 72 2f 6c 69 62 2f 73 65 |lly, /us|r/lib/se|
|00002e90| 6e 64 6d 61 69 6c 20 2d | 62 64 20 2d 71 31 68 29 |ndmail -|bd -q1h)|
|00002ea0| 2e 0a 0a 34 29 20 55 73 | 61 67 65 0a 0a 20 20 49 |...4) Us|age.. I|
|00002eb0| 66 20 74 68 65 20 69 6e | 73 74 61 6c 6c 61 74 69 |f the in|stallati|
|00002ec0| 6f 6e 20 68 61 73 20 67 | 6f 6e 65 20 73 6d 6f 6f |on has g|one smoo|
|00002ed0| 74 68 6c 79 2c 20 65 76 | 65 72 79 74 68 69 6e 67 |thly, ev|erything|
|00002ee0| 20 73 68 6f 75 6c 64 0a | 20 20 62 65 20 6e 65 61 | should.| be nea|
|00002ef0| 72 6c 79 20 74 72 61 6e | 73 70 61 72 65 6e 74 20 |rly tran|sparent |
|00002f00| 74 6f 20 75 73 65 72 73 | 2e 0a 0a 20 20 54 6f 20 |to users|... To |
|00002f10| 73 65 6e 64 20 6d 61 69 | 6c 20 66 72 6f 6d 20 53 |send mai|l from S|
|00002f20| 75 6e 20 74 6f 20 56 41 | 58 2c 20 75 73 65 20 61 |un to VA|X, use a|
|00002f30| 6e 20 61 64 64 72 65 73 | 73 20 6c 69 6b 65 3a 0a |n addres|s like:.|
|00002f40| 0a 20 20 20 20 76 6d 73 | 6e 6f 64 65 21 75 73 65 |. vms|node!use|
|00002f50| 72 0a 0a 20 20 54 6f 20 | 73 65 6e 64 20 6d 61 69 |r.. To |send mai|
|00002f60| 6c 20 66 72 6f 6d 74 20 | 56 41 58 20 74 6f 20 53 |l fromt |VAX to S|
|00002f70| 75 6e 2c 20 75 73 65 20 | 61 6e 20 61 64 64 72 65 |un, use |an addre|
|00002f80| 73 73 20 6c 69 6b 65 3a | 0a 0a 20 20 20 20 53 55 |ss like:|.. SU|
|00002f90| 4e 4e 4f 44 45 3a 3a 22 | 75 73 65 72 22 0a 0a 20 |NNODE::"|user".. |
|00002fa0| 20 54 68 65 20 71 75 6f | 74 65 73 20 28 22 29 20 | The quo|tes (") |
|00002fb0| 61 72 65 20 6e 65 63 65 | 73 73 61 72 79 20 73 6f |are nece|ssary so|
|00002fc0| 20 74 68 61 74 20 56 4d | 53 20 6d 61 69 6c 20 64 | that VM|S mail d|
|00002fd0| 6f 65 73 20 6e 6f 74 20 | 63 6f 6e 76 65 72 74 0a |oes not |convert.|
|00002fe0| 20 20 65 76 65 72 79 74 | 68 69 6e 67 20 74 6f 20 | everyt|hing to |
|00002ff0| 75 70 70 65 72 63 61 73 | 65 2e 20 20 4c 6f 6e 67 |uppercas|e. Long|
|00003000| 65 72 20 61 64 64 72 65 | 73 73 65 73 20 61 72 65 |er addre|sses are|
|00003010| 20 6a 75 73 74 20 61 73 | 20 65 61 73 79 3a 0a 0a | just as| easy:..|
|00003020| 20 20 20 20 53 55 4e 4e | 4f 44 45 3a 3a 22 6e 6f | SUNN|ODE::"no|
|00003030| 64 65 31 21 6e 6f 64 65 | 32 21 2e 2e 2e 22 0a 0a |de1!node|2!..."..|
|00003040| 20 20 28 49 6e 20 74 68 | 69 73 20 63 61 73 65 2c | (In th|is case,|
|00003050| 20 6c 65 61 76 69 6e 67 | 20 6f 66 66 20 74 68 65 | leaving| off the|
|00003060| 20 71 75 6f 74 65 73 20 | 63 61 75 73 65 73 20 74 | quotes |causes t|
|00003070| 68 65 20 27 21 27 20 74 | 6f 20 62 65 20 74 72 65 |he '!' t|o be tre|
|00003080| 61 74 65 64 20 61 73 0a | 20 20 63 6f 6d 6d 65 6e |ated as.| commen|
|00003090| 74 20 63 68 61 72 61 63 | 74 65 72 73 29 2e 20 20 |t charac|ters). |
|000030a0| 54 6f 20 73 65 74 20 6d | 61 69 6c 20 74 6f 20 62 |To set m|ail to b|
|000030b0| 65 20 66 6f 72 77 61 72 | 64 65 64 20 66 72 6f 6d |e forwar|ded from|
|000030c0| 20 74 68 65 20 76 61 78 | 2c 20 79 6f 75 20 77 69 | the vax|, you wi|
|000030d0| 6c 6c 0a 20 20 68 61 76 | 65 20 74 6f 20 75 73 65 |ll. hav|e to use|
|000030e0| 20 33 20 71 75 6f 74 65 | 73 20 69 6e 73 74 65 61 | 3 quote|s instea|
|000030f0| 64 20 6f 66 20 6f 6e 65 | 3a 0a 0a 20 20 20 20 53 |d of one|:.. S|
|00003100| 45 54 20 46 4f 52 57 41 | 52 44 20 53 4f 4d 45 53 |ET FORWA|RD SOMES|
|00003110| 55 4e 3a 3a 22 22 22 73 | 6f 6d 65 75 73 65 72 22 |UN::"""s|omeuser"|
|00003120| 22 22 0a 53 48 41 52 5f | 45 4f 46 0a 69 66 20 74 |"".SHAR_|EOF.if t|
|00003130| 65 73 74 20 39 30 33 31 | 20 2d 6e 65 20 22 60 77 |est 9031| -ne "`w|
|00003140| 63 20 2d 63 20 3c 20 27 | 64 6e 61 6d 61 69 6c 2e |c -c < '|dnamail.|
|00003150| 64 6f 63 27 60 22 0a 74 | 68 65 6e 0a 09 65 63 68 |doc'`".t|hen..ech|
|00003160| 6f 20 73 68 61 72 3a 20 | 65 72 72 6f 72 20 74 72 |o shar: |error tr|
|00003170| 61 6e 73 6d 69 74 74 69 | 6e 67 20 22 27 64 6e 61 |ansmitti|ng "'dna|
|00003180| 6d 61 69 6c 2e 64 6f 63 | 27 22 20 27 28 73 68 6f |mail.doc|'" '(sho|
|00003190| 75 6c 64 20 68 61 76 65 | 20 62 65 65 6e 20 39 30 |uld have| been 90|
|000031a0| 33 31 20 63 68 61 72 61 | 63 74 65 72 73 29 27 0a |31 chara|cters)'.|
|000031b0| 66 69 0a 63 68 6d 6f 64 | 20 2b 78 20 27 64 6e 61 |fi.chmod| +x 'dna|
|000031c0| 6d 61 69 6c 2e 64 6f 63 | 27 0a 66 69 20 23 20 65 |mail.doc|'.fi # e|
|000031d0| 6e 64 20 6f 66 20 6f 76 | 65 72 77 72 69 74 69 6e |nd of ov|erwritin|
|000031e0| 67 20 63 68 65 63 6b 0a | 65 63 68 6f 20 73 68 61 |g check.|echo sha|
|000031f0| 72 3a 20 65 78 74 72 61 | 63 74 69 6e 67 20 22 27 |r: extra|cting "'|
|00003200| 64 6e 61 6d 61 69 6c 2e | 68 27 22 20 27 28 34 36 |dnamail.|h'" '(46|
|00003210| 30 20 63 68 61 72 61 63 | 74 65 72 73 29 27 0a 69 |0 charac|ters)'.i|
|00003220| 66 20 74 65 73 74 20 2d | 66 20 27 64 6e 61 6d 61 |f test -|f 'dnama|
|00003230| 69 6c 2e 68 27 0a 74 68 | 65 6e 0a 09 65 63 68 6f |il.h'.th|en..echo|
|00003240| 20 73 68 61 72 3a 20 77 | 69 6c 6c 20 6e 6f 74 20 | shar: w|ill not |
|00003250| 6f 76 65 72 2d 77 72 69 | 74 65 20 65 78 69 73 74 |over-wri|te exist|
|00003260| 69 6e 67 20 66 69 6c 65 | 20 22 27 64 6e 61 6d 61 |ing file| "'dnama|
|00003270| 69 6c 2e 68 27 22 0a 65 | 6c 73 65 0a 63 61 74 20 |il.h'".e|lse.cat |
|00003280| 3c 3c 20 5c 53 48 41 52 | 5f 45 4f 46 20 3e 20 27 |<< \SHAR|_EOF > '|
|00003290| 64 6e 61 6d 61 69 6c 2e | 68 27 0a 20 20 2f 2a 20 |dnamail.|h'. /* |
|000032a0| 74 68 65 73 65 20 6c 69 | 6e 65 73 20 67 65 74 20 |these li|nes get |
|000032b0| 63 6f 6d 70 69 6c 65 64 | 20 69 6e 74 6f 20 65 76 |compiled| into ev|
|000032c0| 65 72 79 20 6f 62 6a 65 | 63 74 20 66 69 6c 65 20 |ery obje|ct file |
|000032d0| 2a 2f 0a 73 74 61 74 69 | 63 20 63 68 61 72 20 2a |*/.stati|c char *|
|000032e0| 76 65 72 73 69 6f 6e 20 | 3d 20 22 44 6e 61 4d 61 |version |= "DnaMa|
|000032f0| 69 6c 20 28 76 31 2e 31 | 29 22 3b 0a 73 74 61 74 |il (v1.1|)";.stat|
|00003300| 69 63 20 63 68 61 72 20 | 2a 43 6f 70 79 52 69 67 |ic char |*CopyRig|
|00003310| 68 74 20 0a 09 3d 20 22 | 43 6f 70 79 72 69 67 68 |ht ..= "|Copyrigh|
|00003320| 74 20 28 43 29 20 44 2e | 20 42 2e 20 4a 6f 68 6e |t (C) D.| B. John|
|00003330| 73 6f 6e 2c 20 46 65 62 | 2e 2c 20 31 39 38 38 3b |son, Feb|., 1988;|
|00003340| 20 4c 6f 63 6b 68 65 65 | 64 20 4d 69 73 73 69 6c | Lockhee|d Missil|
|00003350| 65 73 20 26 20 53 70 61 | 63 65 22 3b 0a 0a 2f 2a |es & Spa|ce";../*|
|00003360| 20 75 6e 63 6f 6d 6d 65 | 6e 74 20 74 68 69 73 20 | uncomme|nt this |
|00003370| 69 66 20 79 6f 75 20 77 | 61 6e 74 20 74 6f 20 72 |if you w|ant to r|
|00003380| 75 6e 20 73 74 61 6e 64 | 61 6c 6f 6e 65 20 2a 2f |un stand|alone */|
|00003390| 0a 2f 2a 20 23 64 65 66 | 69 6e 65 20 53 54 41 4e |./* #def|ine STAN|
|000033a0| 44 41 4c 4f 4e 45 20 2a | 2f 0a 0a 2f 2a 20 6c 6f |DALONE *|/../* lo|
|000033b0| 63 61 6c 20 64 65 66 69 | 6e 65 73 20 2a 2f 0a 23 |cal defi|nes */.#|
|000033c0| 64 65 66 69 6e 65 20 4d | 41 58 4c 49 4e 45 20 32 |define M|AXLINE 2|
|000033d0| 35 36 0a 23 64 65 66 69 | 6e 65 20 4d 41 49 4c 5f |56.#defi|ne MAIL_|
|000033e0| 4f 42 4a 45 43 54 20 32 | 37 0a 23 64 65 66 69 6e |OBJECT 2|7.#defin|
|000033f0| 65 20 54 4d 50 46 49 4c | 45 20 22 2f 74 6d 70 2f |e TMPFIL|E "/tmp/|
|00003400| 64 6e 61 6d 61 69 6c 2e | 58 58 58 58 58 58 22 0a |dnamail.|XXXXXX".|
|00003410| 0a 23 64 65 66 69 6e 65 | 20 54 52 55 45 20 31 0a |.#define| TRUE 1.|
|00003420| 23 64 65 66 69 6e 65 20 | 46 41 4c 53 45 20 30 0a |#define |FALSE 0.|
|00003430| 0a 2f 2a 20 65 78 74 65 | 72 6e 61 6c 20 72 6f 75 |./* exte|rnal rou|
|00003440| 74 69 6e 65 73 20 2a 2f | 0a 63 68 61 72 20 2a 63 |tines */|.char *c|
|00003450| 6f 70 79 73 74 72 28 29 | 2c 20 2a 6d 61 69 6c 74 |opystr()|, *mailt|
|00003460| 69 6d 65 28 29 3b 0a 53 | 48 41 52 5f 45 4f 46 0a |ime();.S|HAR_EOF.|
|00003470| 69 66 20 74 65 73 74 20 | 34 36 30 20 2d 6e 65 20 |if test |460 -ne |
|00003480| 22 60 77 63 20 2d 63 20 | 3c 20 27 64 6e 61 6d 61 |"`wc -c |< 'dnama|
|00003490| 69 6c 2e 68 27 60 22 0a | 74 68 65 6e 0a 09 65 63 |il.h'`".|then..ec|
|000034a0| 68 6f 20 73 68 61 72 3a | 20 65 72 72 6f 72 20 74 |ho shar:| error t|
|000034b0| 72 61 6e 73 6d 69 74 74 | 69 6e 67 20 22 27 64 6e |ransmitt|ing "'dn|
|000034c0| 61 6d 61 69 6c 2e 68 27 | 22 20 27 28 73 68 6f 75 |amail.h'|" '(shou|
|000034d0| 6c 64 20 68 61 76 65 20 | 62 65 65 6e 20 34 36 30 |ld have |been 460|
|000034e0| 20 63 68 61 72 61 63 74 | 65 72 73 29 27 0a 66 69 | charact|ers)'.fi|
|000034f0| 0a 63 68 6d 6f 64 20 2b | 78 20 27 64 6e 61 6d 61 |.chmod +|x 'dnama|
|00003500| 69 6c 2e 68 27 0a 66 69 | 20 23 20 65 6e 64 20 6f |il.h'.fi| # end o|
|00003510| 66 20 6f 76 65 72 77 72 | 69 74 69 6e 67 20 63 68 |f overwr|iting ch|
|00003520| 65 63 6b 0a 65 63 68 6f | 20 73 68 61 72 3a 20 65 |eck.echo| shar: e|
|00003530| 78 74 72 61 63 74 69 6e | 67 20 22 27 64 6e 61 6d |xtractin|g "'dnam|
|00003540| 61 69 6c 2e 63 27 22 20 | 27 28 31 31 37 30 30 20 |ail.c'" |'(11700 |
|00003550| 63 68 61 72 61 63 74 65 | 72 73 29 27 0a 69 66 20 |characte|rs)'.if |
|00003560| 74 65 73 74 20 2d 66 20 | 27 64 6e 61 6d 61 69 6c |test -f |'dnamail|
|00003570| 2e 63 27 0a 74 68 65 6e | 0a 09 65 63 68 6f 20 73 |.c'.then|..echo s|
|00003580| 68 61 72 3a 20 77 69 6c | 6c 20 6e 6f 74 20 6f 76 |har: wil|l not ov|
|00003590| 65 72 2d 77 72 69 74 65 | 20 65 78 69 73 74 69 6e |er-write| existin|
|000035a0| 67 20 66 69 6c 65 20 22 | 27 64 6e 61 6d 61 69 6c |g file "|'dnamail|
|000035b0| 2e 63 27 22 0a 65 6c 73 | 65 0a 63 61 74 20 3c 3c |.c'".els|e.cat <<|
|000035c0| 20 5c 53 48 41 52 5f 45 | 4f 46 20 3e 20 27 64 6e | \SHAR_E|OF > 'dn|
|000035d0| 61 6d 61 69 6c 2e 63 27 | 0a 2f 2a 2a 2a 2a 2a 2a |amail.c'|./******|
|000035e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000035f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003600| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003610| 2a 2a 2a 2a 2a 2a 2a 0a | 20 2a 20 44 4e 41 4d 41 |*******.| * DNAMA|
|00003620| 49 4c 20 2d 20 44 65 6c | 69 76 65 72 20 6d 61 69 |IL - Del|iver mai|
|00003630| 6c 20 74 6f 20 72 65 6d | 6f 74 65 20 44 45 43 6e |l to rem|ote DECn|
|00003640| 65 74 20 6e 6f 64 65 73 | 2e 0a 20 2a 20 55 73 65 |et nodes|.. * Use|
|00003650| 20 69 6e 74 65 72 61 63 | 74 69 76 65 6c 79 20 6f | interac|tively o|
|00003660| 72 20 77 69 74 68 20 73 | 65 6e 64 6d 61 69 6c 20 |r with s|endmail |
|00003670| 69 6e 74 65 72 66 61 63 | 65 0a 20 2a 0a 20 2a 20 |interfac|e. *. * |
|00003680| 43 6f 70 79 72 69 67 68 | 74 0a 20 2a 20 20 44 61 |Copyrigh|t. * Da|
|00003690| 72 69 6e 20 4a 6f 68 6e | 73 6f 6e 2c 20 4c 6f 63 |rin John|son, Loc|
|000036a0| 6b 68 65 65 64 20 4d 69 | 73 73 69 6c 65 73 20 61 |kheed Mi|ssiles a|
|000036b0| 6e 64 20 53 70 61 63 65 | 0a 20 2a 0a 20 2a 20 50 |nd Space|. *. * P|
|000036c0| 65 72 6d 69 73 73 69 6f | 6e 20 74 6f 20 63 6f 70 |ermissio|n to cop|
|000036d0| 79 20 61 6e 64 2f 6f 72 | 20 6d 6f 64 69 66 79 20 |y and/or| modify |
|000036e0| 61 73 20 6c 6f 6e 67 20 | 61 73 20 72 65 66 65 72 |as long |as refer|
|000036f0| 65 6e 63 65 20 69 73 20 | 6d 61 64 65 0a 20 2a 20 |ence is |made. * |
|00003700| 74 6f 20 74 68 65 20 61 | 75 74 68 6f 72 73 2e 20 |to the a|uthors. |
|00003710| 20 54 68 69 73 20 70 72 | 6f 67 72 61 6d 20 6d 61 | This pr|ogram ma|
|00003720| 79 20 6e 6f 74 20 62 65 | 20 73 6f 6c 64 2e 0a 20 |y not be| sold.. |
|00003730| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003740| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003750| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003760| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2f 0a 0a |********|*****/..|
|00003770| 23 69 6e 63 6c 75 64 65 | 20 3c 73 74 64 69 6f 2e |#include| <stdio.|
|00003780| 68 3e 0a 23 69 6e 63 6c | 75 64 65 20 3c 66 63 6e |h>.#incl|ude <fcn|
|00003790| 74 6c 2e 68 3e 0a 23 69 | 6e 63 6c 75 64 65 20 3c |tl.h>.#i|nclude <|
|000037a0| 70 77 64 2e 68 3e 0a 23 | 69 6e 63 6c 75 64 65 20 |pwd.h>.#|include |
|000037b0| 3c 63 74 79 70 65 2e 68 | 3e 0a 23 69 6e 63 6c 75 |<ctype.h|>.#inclu|
|000037c0| 64 65 20 3c 73 79 73 65 | 78 69 74 73 2e 68 3e 09 |de <syse|xits.h>.|
|000037d0| 09 2f 2a 20 74 68 65 20 | 27 70 72 6f 70 65 72 27 |./* the |'proper'|
|000037e0| 20 65 78 69 74 73 20 74 | 6f 20 72 65 74 75 72 6e | exits t|o return|
|000037f0| 20 74 6f 20 73 65 6e 64 | 6d 61 69 6c 20 2a 2f 0a | to send|mail */.|
|00003800| 23 69 6e 63 6c 75 64 65 | 20 3c 73 79 73 2f 69 6f |#include| <sys/io|
|00003810| 63 74 6c 2e 68 3e 0a 23 | 69 6e 63 6c 75 64 65 20 |ctl.h>.#|include |
|00003820| 3c 6e 65 74 64 6e 61 2f | 64 6e 61 2e 68 3e 0a 23 |<netdna/|dna.h>.#|
|00003830| 69 6e 63 6c 75 64 65 20 | 3c 73 79 73 2f 74 69 6d |include |<sys/tim|
|00003840| 65 2e 68 3e 0a 23 69 6e | 63 6c 75 64 65 20 22 64 |e.h>.#in|clude "d|
|00003850| 6e 61 6d 61 69 6c 2e 68 | 22 0a 0a 2f 2a 20 6c 69 |namail.h|"../* li|
|00003860| 73 74 20 6f 66 20 73 74 | 72 69 6e 67 73 20 2a 2f |st of st|rings */|
|00003870| 0a 73 74 72 75 63 74 20 | 63 6c 69 73 74 20 7b 0a |.struct |clist {.|
|00003880| 20 20 63 68 61 72 20 2a | 73 74 72 3b 0a 20 20 73 | char *|str;. s|
|00003890| 74 72 75 63 74 20 63 6c | 69 73 74 20 2a 6e 65 78 |truct cl|ist *nex|
|000038a0| 74 3b 0a 7d 3b 0a 0a 65 | 78 74 65 72 6e 20 69 6e |t;.};..e|xtern in|
|000038b0| 74 20 65 72 72 6e 6f 3b | 0a 0a 63 68 61 72 20 2a |t errno;|..char *|
|000038c0| 75 73 65 5f 73 74 72 20 | 3d 20 22 55 53 41 47 45 |use_str |= "USAGE|
|000038d0| 3a 20 25 73 20 5b 2d 64 | 5d 20 5b 2d 73 20 73 75 |: %s [-d|] [-s su|
|000038e0| 62 6a 65 63 74 5d 20 5b | 2d 6e 20 6e 6f 64 65 5d |bject] [|-n node]|
|000038f0| 20 5b 61 64 64 72 65 73 | 73 2d 6c 69 73 74 5d 5c | [addres|s-list]\|
|00003900| 6e 22 3b 0a 23 64 65 66 | 69 6e 65 20 75 73 61 67 |n";.#def|ine usag|
|00003910| 65 28 29 20 70 72 69 6e | 74 66 28 75 73 65 5f 73 |e() prin|tf(use_s|
|00003920| 74 72 2c 20 61 72 67 76 | 5b 30 5d 29 0a 20 20 0a |tr, argv|[0]). .|
|00003930| 63 68 61 72 20 62 75 66 | 66 5b 4d 41 58 4c 49 4e |char buf|f[MAXLIN|
|00003940| 45 5d 3b 0a 63 68 61 72 | 20 2a 73 75 62 6a 65 63 |E];.char| *subjec|
|00003950| 74 3b 0a 63 68 61 72 20 | 2a 6e 6f 64 65 3b 0a 63 |t;.char |*node;.c|
|00003960| 68 61 72 20 64 65 62 75 | 67 3b 0a 63 68 61 72 20 |har debu|g;.char |
|00003970| 74 74 79 66 6c 61 67 3b | 0a 63 68 61 72 20 2a 66 |ttyflag;|.char *f|
|00003980| 72 6f 6d 3b 0a 63 68 61 | 72 20 2a 66 72 6f 6d 5f |rom;.cha|r *from_|
|00003990| 6f 3b 0a 69 6e 74 20 6e | 75 6d 5f 61 64 64 72 3b |o;.int n|um_addr;|
|000039a0| 0a 63 68 61 72 20 2a 74 | 6f 5f 6c 69 6e 65 3b 0a |.char *t|o_line;.|
|000039b0| 69 6e 74 20 62 61 64 75 | 73 65 72 5f 66 6c 61 67 |int badu|ser_flag|
|000039c0| 3b 0a 0a 63 68 61 72 20 | 2a 2a 74 6f 3b 09 2f 2a |;..char |**to;./*|
|000039d0| 20 63 68 61 72 20 2a 74 | 6f 5b 5d 20 2a 2f 0a 0a | char *t|o[] */..|
|000039e0| 69 6e 74 20 6c 6c 3b 09 | 09 09 2f 2a 20 44 45 43 |int ll;.|../* DEC|
|000039f0| 6e 65 74 20 66 69 6c 65 | 20 64 65 73 63 72 69 70 |net file| descrip|
|00003a00| 74 6f 72 20 2a 2f 0a 0a | 2f 2a 20 6f 70 65 6e 20 |tor */..|/* open |
|00003a10| 44 45 43 6e 65 74 20 63 | 6f 6e 6e 65 63 74 69 6f |DECnet c|onnectio|
|00003a20| 6e 20 74 6f 20 6d 61 69 | 6c 20 70 72 6f 74 6f 63 |n to mai|l protoc|
|00003a30| 6f 6c 2e 20 20 44 65 73 | 63 72 69 70 74 6f 72 20 |ol. Des|criptor |
|00003a40| 69 73 20 69 6e 20 27 6c | 6c 27 20 2a 2f 0a 67 65 |is in 'l|l' */.ge|
|00003a50| 74 5f 63 6f 6e 6e 65 63 | 74 69 6f 6e 28 29 20 7b |t_connec|tion() {|
|00003a60| 0a 20 20 4f 70 65 6e 42 | 6c 6f 63 6b 20 6f 62 3b |. OpenB|lock ob;|
|00003a70| 09 09 09 2f 2a 20 69 6e | 66 6f 20 66 6f 72 20 6f |.../* in|fo for o|
|00003a80| 70 65 6e 69 6e 67 20 44 | 45 43 6e 65 74 20 6c 69 |pening D|ECnet li|
|00003a90| 6e 6b 20 2a 2f 0a 20 20 | 69 6e 74 20 72 65 74 3b |nk */. |int ret;|
|00003aa0| 09 09 09 2f 2a 20 72 65 | 74 75 72 6e 20 73 74 61 |.../* re|turn sta|
|00003ab0| 74 75 73 20 63 6f 64 65 | 20 2a 2f 0a 0a 20 20 69 |tus code| */.. i|
|00003ac0| 66 20 28 64 65 62 75 67 | 29 0a 20 20 20 20 66 70 |f (debug|). fp|
|00003ad0| 72 69 6e 74 66 28 73 74 | 64 65 72 72 2c 20 22 54 |rintf(st|derr, "T|
|00003ae0| 72 79 69 6e 67 20 74 6f | 20 6f 70 65 6e 20 2f 64 |rying to| open /d|
|00003af0| 65 76 2f 64 6e 61 5c 6e | 22 29 3b 0a 0a 20 20 69 |ev/dna\n|");.. i|
|00003b00| 66 20 28 28 6c 6c 20 3d | 20 6f 70 65 6e 28 22 2f |f ((ll =| open("/|
|00003b10| 64 65 76 2f 64 6e 61 22 | 2c 20 4f 5f 52 44 57 52 |dev/dna"|, O_RDWR|
|00003b20| 29 29 20 3c 20 30 29 20 | 7b 0a 20 20 20 20 64 6e |)) < 0) |{. dn|
|00003b30| 61 65 72 72 6f 72 28 22 | 4f 70 65 6e 20 66 61 69 |aerror("|Open fai|
|00003b40| 6c 65 64 22 29 3b 0a 20 | 20 20 20 65 78 69 74 28 |led");. | exit(|
|00003b50| 45 58 5f 53 4f 46 54 57 | 41 52 45 29 3b 0a 20 20 |EX_SOFTW|ARE);. |
|00003b60| 7d 0a 0a 20 20 69 66 20 | 28 64 65 62 75 67 29 0a |}.. if |(debug).|
|00003b70| 20 20 20 20 66 70 72 69 | 6e 74 66 28 73 74 64 65 | fpri|ntf(stde|
|00003b80| 72 72 2c 20 22 54 72 79 | 69 6e 67 20 74 6f 20 67 |rr, "Try|ing to g|
|00003b90| 65 74 20 6c 6f 67 69 63 | 61 6c 20 6c 69 6e 6b 5c |et logic|al link\|
|00003ba0| 6e 22 29 3b 0a 0a 20 20 | 69 66 20 28 69 6f 63 74 |n");.. |if (ioct|
|00003bb0| 6c 28 6c 6c 2c 20 53 45 | 53 5f 47 45 54 5f 4c 49 |l(ll, SE|S_GET_LI|
|00003bc0| 4e 4b 2c 20 30 29 29 20 | 7b 0a 20 20 20 20 64 6e |NK, 0)) |{. dn|
|00003bd0| 61 65 72 72 6f 72 28 22 | 45 72 72 6f 72 20 67 65 |aerror("|Error ge|
|00003be0| 74 74 69 6e 67 20 6c 6f | 67 69 63 61 6c 20 6c 69 |tting lo|gical li|
|00003bf0| 6e 6b 22 29 3b 0a 20 20 | 20 20 65 78 69 74 5f 77 |nk");. | exit_w|
|00003c00| 69 74 68 5f 73 74 61 74 | 75 73 28 29 3b 0a 20 20 |ith_stat|us();. |
|00003c10| 7d 0a 0a 20 20 69 66 20 | 28 64 65 62 75 67 29 0a |}.. if |(debug).|
|00003c20| 20 20 20 20 66 70 72 69 | 6e 74 66 28 73 74 64 65 | fpri|ntf(stde|
|00003c30| 72 72 2c 20 22 54 72 79 | 69 6e 67 20 74 6f 20 67 |rr, "Try|ing to g|
|00003c40| 65 74 20 6c 69 6e 6b 20 | 74 6f 20 6d 61 69 6c 20 |et link |to mail |
|00003c50| 73 65 72 76 65 72 20 6f | 6e 20 72 65 6d 6f 74 65 |server o|n remote|
|00003c60| 20 6e 6f 64 65 5c 6e 22 | 29 3b 0a 20 20 0a 20 20 | node\n"|);. . |
|00003c70| 20 20 2f 2a 20 73 65 74 | 20 75 70 20 6f 70 65 6e | /* set| up open|
|00003c80| 20 62 6c 6f 63 6b 20 77 | 69 74 68 20 61 63 63 65 | block w|ith acce|
|00003c90| 73 73 20 69 6e 66 6f 72 | 6d 61 74 69 6f 6e 20 2a |ss infor|mation *|
|00003ca0| 2f 0a 20 20 73 74 72 63 | 70 79 28 6f 62 2e 6f 70 |/. strc|py(ob.op|
|00003cb0| 5f 6e 6f 64 65 5f 6e 61 | 6d 65 2c 20 6e 6f 64 65 |_node_na|me, node|
|00003cc0| 29 3b 20 20 2f 2a 20 6e | 6f 64 65 20 77 65 20 77 |); /* n|ode we w|
|00003cd0| 61 6e 74 20 74 6f 20 73 | 65 6e 64 20 6d 61 69 6c |ant to s|end mail|
|00003ce0| 20 74 6f 20 2a 2f 0a 20 | 20 6f 62 2e 6f 70 5f 6f | to */. | ob.op_o|
|00003cf0| 62 6a 65 63 74 5f 6e 62 | 72 20 3d 20 4d 41 49 4c |bject_nb|r = MAIL|
|00003d00| 5f 4f 42 4a 45 43 54 3b | 0a 20 20 6f 62 2e 6f 70 |_OBJECT;|. ob.op|
|00003d10| 5f 75 73 65 72 69 64 5b | 30 5d 20 3d 20 6f 62 2e |_userid[|0] = ob.|
|00003d20| 6f 70 5f 61 63 63 6f 75 | 6e 74 5b 30 5d 20 3d 20 |op_accou|nt[0] = |
|00003d30| 6f 62 2e 6f 70 5f 70 61 | 73 73 77 6f 72 64 5b 30 |ob.op_pa|ssword[0|
|00003d40| 5d 20 3d 20 4e 55 4c 4c | 3b 0a 20 20 6f 62 2e 6f |] = NULL|;. ob.o|
|00003d50| 70 5f 6f 70 74 5f 64 61 | 74 61 2e 69 6d 5f 6c 65 |p_opt_da|ta.im_le|
|00003d60| 6e 67 74 68 20 3d 20 30 | 3b 0a 20 20 69 66 20 28 |ngth = 0|;. if (|
|00003d70| 69 6f 63 74 6c 28 6c 6c | 2c 20 53 45 53 5f 4c 49 |ioctl(ll|, SES_LI|
|00003d80| 4e 4b 5f 41 43 43 45 53 | 53 2c 20 26 6f 62 29 20 |NK_ACCES|S, &ob) |
|00003d90| 3c 20 30 29 20 7b 0a 20 | 20 20 20 64 6e 61 65 72 |< 0) {. | dnaer|
|00003da0| 72 6f 72 28 22 6c 69 6e | 6b 20 61 63 63 65 73 73 |ror("lin|k access|
|00003db0| 22 29 3b 0a 20 20 20 20 | 65 78 69 74 5f 77 69 74 |");. |exit_wit|
|00003dc0| 68 5f 73 74 61 74 75 73 | 28 29 3b 0a 20 20 7d 0a |h_status|();. }.|
|00003dd0| 20 20 0a 20 20 69 66 20 | 28 64 65 62 75 67 29 0a | . if |(debug).|
|00003de0| 20 20 20 20 66 70 72 69 | 6e 74 66 28 73 74 64 65 | fpri|ntf(stde|
|00003df0| 72 72 2c 20 22 4c 69 6e | 6b 20 65 73 74 61 62 6c |rr, "Lin|k establ|
|00003e00| 69 73 68 65 64 2e 2e 2e | 5c 6e 22 29 3b 0a 20 20 |ished...|\n");. |
|00003e10| 2f 2a 20 6c 6c 20 6e 6f | 77 20 63 6f 6e 74 61 69 |/* ll no|w contai|
|00003e20| 6e 73 20 64 65 73 63 72 | 69 70 74 6f 72 20 74 6f |ns descr|iptor to|
|00003e30| 20 6f 70 65 6e 20 44 45 | 43 6e 65 74 20 63 6f 6e | open DE|Cnet con|
|00003e40| 6e 65 63 74 69 6f 6e 20 | 74 6f 20 4d 41 49 4c 2e |nection |to MAIL.|
|00003e50| 45 58 45 20 6f 6e 0a 20 | 20 20 20 20 6e 6f 64 65 |EXE on. | node|
|00003e60| 20 27 6e 6f 64 65 27 20 | 2a 2f 0a 7d 0a 0a 2f 2a | 'node' |*/.}../*|
|00003e70| 20 63 6f 6e 76 65 72 74 | 20 64 6e 61 20 65 72 72 | convert| dna err|
|00003e80| 6f 72 73 20 69 6e 74 6f | 20 65 72 72 6f 72 73 20 |ors into| errors |
|00003e90| 73 65 6e 64 6d 61 69 6c | 20 63 61 6e 20 75 6e 64 |sendmail| can und|
|00003ea0| 65 72 73 74 61 6e 64 2e | 20 20 54 68 65 6e 20 65 |erstand.| Then e|
|00003eb0| 78 69 74 2e 20 2a 2f 0a | 65 78 69 74 5f 77 69 74 |xit. */.|exit_wit|
|00003ec0| 68 5f 73 74 61 74 75 73 | 28 29 20 7b 0a 20 20 73 |h_status|() {. s|
|00003ed0| 77 69 74 63 68 28 65 72 | 72 6e 6f 29 20 7b 0a 20 |witch(er|rno) {. |
|00003ee0| 20 63 61 73 65 20 4e 45 | 54 5f 52 45 53 4f 55 52 | case NE|T_RESOUR|
|00003ef0| 3a 0a 20 20 63 61 73 65 | 20 4e 4f 44 45 5f 44 4f |:. case| NODE_DO|
|00003f00| 57 4e 3a 0a 20 20 63 61 | 73 65 20 4e 4f 44 45 5f |WN:. ca|se NODE_|
|00003f10| 55 4e 52 45 41 43 48 3a | 0a 20 20 20 20 65 78 69 |UNREACH:|. exi|
|00003f20| 74 28 45 58 5f 54 45 4d | 50 46 41 49 4c 29 3b 0a |t(EX_TEM|PFAIL);.|
|00003f30| 20 20 63 61 73 65 20 4e | 4f 44 45 5f 4e 41 4d 45 | case N|ODE_NAME|
|00003f40| 3a 0a 20 20 20 20 65 78 | 69 74 28 45 58 5f 4e 4f |:. ex|it(EX_NO|
|00003f50| 48 4f 53 54 29 3b 0a 20 | 20 63 61 73 65 20 4f 42 |HOST);. | case OB|
|00003f60| 4a 5f 4e 41 4d 45 3a 0a | 20 20 20 20 65 78 69 74 |J_NAME:.| exit|
|00003f70| 28 45 58 5f 55 4e 41 56 | 41 49 4c 41 42 4c 45 29 |(EX_UNAV|AILABLE)|
|00003f80| 3b 0a 20 20 64 65 66 61 | 75 6c 74 3a 0a 20 20 20 |;. defa|ult:. |
|00003f90| 20 65 78 69 74 28 45 58 | 5f 50 52 4f 54 4f 43 4f | exit(EX|_PROTOCO|
|00003fa0| 4c 29 3b 0a 20 20 7d 0a | 7d 0a 0a 2f 2a 20 63 6c |L);. }.|}../* cl|
|00003fb0| 6f 73 65 20 75 70 20 63 | 6f 6e 6e 65 63 74 69 6f |ose up c|onnectio|
|00003fc0| 6e 20 2a 2f 0a 64 72 6f | 70 5f 63 6f 6e 6e 65 63 |n */.dro|p_connec|
|00003fd0| 74 69 6f 6e 28 29 20 7b | 0a 20 20 53 65 73 73 69 |tion() {|. Sessi|
|00003fe0| 6f 6e 44 61 74 61 20 73 | 64 3b 09 09 2f 2a 20 6d |onData s|d;../* m|
|00003ff0| 69 73 63 20 73 65 73 73 | 69 6f 6e 20 69 6e 66 6f |isc sess|ion info|
|00004000| 20 2a 2f 0a 0a 20 20 73 | 64 2e 73 64 5f 72 65 61 | */.. s|d.sd_rea|
|00004010| 73 6f 6e 20 3d 20 30 3b | 0a 20 20 73 64 2e 73 64 |son = 0;|. sd.sd|
|00004020| 5f 64 61 74 61 2e 69 6d | 5f 6c 65 6e 67 74 68 20 |_data.im|_length |
|00004030| 3d 20 30 3b 0a 20 20 69 | 6f 63 74 6c 28 6c 6c 2c |= 0;. i|octl(ll,|
|00004040| 20 53 45 53 5f 44 49 53 | 43 4f 4e 4e 45 43 54 2c | SES_DIS|CONNECT,|
|00004050| 20 26 73 64 29 3b 0a 20 | 20 63 6c 6f 73 65 28 6c | &sd);. | close(l|
|00004060| 6c 29 3b 0a 20 20 69 66 | 20 28 64 65 62 75 67 29 |l);. if| (debug)|
|00004070| 0a 20 20 20 20 66 70 72 | 69 6e 74 66 28 73 74 64 |. fpr|intf(std|
|00004080| 65 72 72 2c 20 22 43 6f | 6e 6e 65 63 74 69 6f 6e |err, "Co|nnection|
|00004090| 20 74 65 72 6d 69 6e 61 | 74 65 64 20 62 79 20 75 | termina|ted by u|
|000040a0| 73 5c 6e 22 29 3b 0a 7d | 0a 0a 2f 2a 20 53 65 6e |s\n");.}|../* Sen|
|000040b0| 64 73 20 68 65 61 64 65 | 72 73 2e 20 20 43 6f 6c |ds heade|rs. Col|
|000040c0| 6c 65 63 74 73 20 68 65 | 61 64 65 72 73 20 66 72 |lects he|aders fr|
|000040d0| 6f 6d 20 6d 65 73 73 61 | 67 65 20 69 6e 74 6f 20 |om messa|ge into |
|000040e0| 61 20 6c 69 73 74 2e 20 | 20 54 68 65 6e 0a 20 20 |a list. | Then. |
|000040f0| 20 73 65 6e 64 73 20 73 | 75 62 6a 65 63 74 20 6c | sends s|ubject l|
|00004100| 69 6e 65 20 28 77 68 69 | 63 68 20 74 65 72 6d 69 |ine (whi|ch termi|
|00004110| 6e 61 74 65 73 20 56 4d | 53 20 68 65 61 64 65 72 |nates VM|S header|
|00004120| 29 20 66 6f 6c 6c 6f 77 | 65 64 20 62 79 20 6f 74 |) follow|ed by ot|
|00004130| 68 65 72 0a 20 20 20 68 | 65 61 64 65 72 73 20 28 |her. h|eaders (|
|00004140| 77 68 69 63 68 20 61 72 | 65 20 74 72 65 61 74 65 |which ar|e treate|
|00004150| 64 20 61 73 20 70 61 72 | 74 20 6f 66 20 74 68 65 |d as par|t of the|
|00004160| 20 6e 6f 72 6d 61 6c 20 | 6d 65 73 73 61 67 65 20 | normal |message |
|00004170| 62 79 20 56 4d 53 29 2e | 0a 0a 20 20 20 54 68 65 |by VMS).|.. The|
|00004180| 20 61 63 74 75 61 6c 20 | 72 65 61 73 6f 6e 20 74 | actual |reason t|
|00004190| 68 69 73 20 72 6f 75 74 | 69 6e 65 20 65 78 69 73 |his rout|ine exis|
|000041a0| 74 73 20 69 73 20 74 6f | 20 73 65 61 72 63 68 20 |ts is to| search |
|000041b0| 66 6f 72 20 61 20 53 75 | 62 6a 65 63 74 3a 0a 20 |for a Su|bject:. |
|000041c0| 20 20 6c 69 6e 65 20 73 | 6f 20 69 74 20 63 61 6e | line s|o it can|
|000041d0| 20 62 65 20 73 65 6e 74 | 20 61 73 20 74 68 65 20 | be sent| as the |
|000041e0| 44 45 43 6e 65 74 20 73 | 75 62 6a 65 63 74 20 6c |DECnet s|ubject l|
|000041f0| 69 6e 65 2e 20 20 4f 66 | 20 63 6f 75 72 73 65 2c |ine. Of| course,|
|00004200| 0a 20 20 20 6c 61 74 65 | 72 20 76 65 72 73 69 6f |. late|r versio|
|00004210| 6e 73 20 6f 66 20 74 68 | 65 20 73 6f 66 74 77 61 |ns of th|e softwa|
|00004220| 72 65 20 6d 69 67 68 74 | 20 64 6f 20 6d 6f 72 65 |re might| do more|
|00004230| 20 77 69 74 68 20 74 68 | 65 73 65 20 68 65 61 64 | with th|ese head|
|00004240| 65 72 73 2e 20 2a 2f 0a | 73 65 6e 64 5f 68 65 61 |ers. */.|send_hea|
|00004250| 64 65 72 73 28 29 20 7b | 0a 20 20 73 74 72 75 63 |ders() {|. struc|
|00004260| 74 20 63 6c 69 73 74 20 | 2a 68 65 61 64 65 72 73 |t clist |*headers|
|00004270| 2c 20 2a 74 61 69 6c 3b | 0a 0a 20 20 69 66 20 28 |, *tail;|.. if (|
|00004280| 74 74 79 66 6c 61 67 20 | 7c 7c 20 73 75 62 6a 65 |ttyflag ||| subje|
|00004290| 63 74 29 20 7b 0a 20 20 | 20 20 20 20 20 20 2f 2a |ct) {. | /*|
|000042a0| 20 69 66 20 77 65 20 61 | 72 65 20 61 20 74 74 79 | if we a|re a tty|
|000042b0| 20 6f 72 20 68 61 76 65 | 20 61 6e 20 65 78 70 6c | or have| an expl|
|000042c0| 69 63 69 74 20 73 75 62 | 6a 65 63 74 20 2a 2f 0a |icit sub|ject */.|
|000042d0| 20 20 20 20 20 20 20 20 | 2f 2a 20 74 68 65 6e 20 | |/* then |
|000042e0| 77 65 20 6f 6e 6c 79 20 | 77 61 6e 74 20 74 6f 20 |we only |want to |
|000042f0| 73 65 6e 64 20 74 68 65 | 20 73 75 62 6a 65 63 74 |send the| subject|
|00004300| 20 72 61 74 68 65 72 20 | 74 68 61 6e 20 73 65 61 | rather |than sea|
|00004310| 72 63 68 20 66 6f 72 20 | 69 74 20 2a 2f 0a 20 20 |rch for |it */. |
|00004320| 20 20 20 20 73 65 6e 64 | 28 73 75 62 6a 65 63 74 | send|(subject|
|00004330| 29 3b 0a 20 20 20 20 20 | 20 72 65 74 75 72 6e 3b |);. | return;|
|00004340| 0a 20 20 7d 0a 20 20 73 | 70 72 69 6e 74 66 28 62 |. }. s|printf(b|
|00004350| 75 66 66 2c 20 22 52 65 | 63 65 69 76 65 64 3a 20 |uff, "Re|ceived: |
|00004360| 62 79 20 25 73 3b 20 25 | 73 22 2c 20 76 65 72 73 |by %s; %|s", vers|
|00004370| 69 6f 6e 2c 20 6d 61 69 | 6c 74 69 6d 65 28 29 29 |ion, mai|ltime())|
|00004380| 3b 0a 20 20 20 20 2f 2a | 20 69 6e 69 74 69 61 6c |;. /*| initial|
|00004390| 69 7a 65 20 6c 69 73 74 | 20 6f 66 20 68 65 61 64 |ize list| of head|
|000043a0| 65 72 73 20 2a 2f 0a 20 | 20 68 65 61 64 65 72 73 |ers */. | headers|
|000043b0| 20 3d 20 28 73 74 72 75 | 63 74 20 63 6c 69 73 74 | = (stru|ct clist|
|000043c0| 2a 29 6d 61 6c 6c 6f 63 | 28 73 69 7a 65 6f 66 28 |*)malloc|(sizeof(|
|000043d0| 73 74 72 75 63 74 20 63 | 6c 69 73 74 29 29 3b 0a |struct c|list));.|
|000043e0| 20 20 68 65 61 64 65 72 | 73 2d 3e 6e 65 78 74 20 | header|s->next |
|000043f0| 3d 20 4e 55 4c 4c 3b 0a | 20 20 68 65 61 64 65 72 |= NULL;.| header|
|00004400| 73 2d 3e 73 74 72 20 3d | 20 63 6f 70 79 73 74 72 |s->str =| copystr|
|00004410| 28 62 75 66 66 29 3b 0a | 20 20 74 61 69 6c 20 3d |(buff);.| tail =|
|00004420| 20 68 65 61 64 65 72 73 | 3b 0a 20 20 20 20 2f 2a | headers|;. /*|
|00004430| 20 72 65 61 64 20 69 6e | 20 68 65 61 64 65 72 73 | read in| headers|
|00004440| 20 2a 2f 0a 20 20 77 68 | 69 6c 65 20 28 67 65 74 | */. wh|ile (get|
|00004450| 73 28 62 75 66 66 29 20 | 3e 20 30 29 20 7b 0a 20 |s(buff) |> 0) {. |
|00004460| 20 20 20 20 20 2f 2a 20 | 61 64 64 20 6f 6e 74 6f | /* |add onto|
|00004470| 20 68 65 61 64 65 72 20 | 6c 69 73 74 20 2a 2f 0a | header |list */.|
|00004480| 20 20 20 20 74 61 69 6c | 2d 3e 6e 65 78 74 20 3d | tail|->next =|
|00004490| 20 28 73 74 72 75 63 74 | 20 63 6c 69 73 74 2a 29 | (struct| clist*)|
|000044a0| 6d 61 6c 6c 6f 63 28 73 | 69 7a 65 6f 66 28 73 74 |malloc(s|izeof(st|
|000044b0| 72 75 63 74 20 63 6c 69 | 73 74 29 29 3b 0a 20 20 |ruct cli|st));. |
|000044c0| 20 20 74 61 69 6c 20 3d | 20 74 61 69 6c 2d 3e 6e | tail =| tail->n|
|000044d0| 65 78 74 3b 0a 20 20 20 | 20 74 61 69 6c 2d 3e 6e |ext;. | tail->n|
|000044e0| 65 78 74 3d 4e 55 4c 4c | 3b 0a 20 20 20 20 74 61 |ext=NULL|;. ta|
|000044f0| 69 6c 2d 3e 73 74 72 20 | 3d 20 63 6f 70 79 73 74 |il->str |= copyst|
|00004500| 72 28 62 75 66 66 29 3b | 0a 20 20 20 20 69 66 20 |r(buff);|. if |
|00004510| 28 73 74 72 6c 65 6e 28 | 62 75 66 66 29 20 3d 3d |(strlen(|buff) ==|
|00004520| 20 30 29 09 2f 2a 20 65 | 6d 70 74 79 20 6c 69 6e | 0)./* e|mpty lin|
|00004530| 65 20 6d 65 61 6e 73 20 | 6e 6f 20 6d 6f 72 65 20 |e means |no more |
|00004540| 68 65 61 64 65 72 73 20 | 2a 2f 0a 20 20 20 20 20 |headers |*/. |
|00004550| 20 62 72 65 61 6b 3b 0a | 20 20 20 20 69 66 20 28 | break;.| if (|
|00004560| 21 73 74 72 6e 63 6d 70 | 28 62 75 66 66 2c 20 22 |!strncmp|(buff, "|
|00004570| 53 75 62 6a 65 63 74 3a | 20 22 2c 20 39 29 29 20 |Subject:| ", 9)) |
|00004580| 7b 09 2f 2a 20 66 6f 75 | 6e 64 20 74 68 65 20 53 |{./* fou|nd the S|
|00004590| 75 62 6a 65 63 74 3a 20 | 2a 2f 0a 20 20 20 20 20 |ubject: |*/. |
|000045a0| 20 73 75 62 6a 65 63 74 | 20 3d 20 26 74 61 69 6c | subject| = &tail|
|000045b0| 2d 3e 73 74 72 5b 39 5d | 3b 0a 20 20 20 20 7d 0a |->str[9]|;. }.|
|000045c0| 20 20 7d 0a 20 20 20 20 | 2f 2a 20 6e 6f 77 20 77 | }. |/* now w|
|000045d0| 72 69 74 65 20 6f 75 74 | 20 68 65 61 64 65 72 20 |rite out| header |
|000045e0| 6c 69 6e 65 73 20 2a 2f | 0a 20 20 73 65 6e 64 28 |lines */|. send(|
|000045f0| 73 75 62 6a 65 63 74 29 | 3b 09 09 2f 2a 20 74 68 |subject)|;../* th|
|00004600| 69 73 20 74 65 72 6d 69 | 6e 61 74 65 73 20 74 68 |is termi|nates th|
|00004610| 65 20 44 45 43 6e 65 74 | 20 6d 61 69 6c 20 68 65 |e DECnet| mail he|
|00004620| 61 64 65 72 20 2a 2f 0a | 20 20 74 61 69 6c 3d 68 |ader */.| tail=h|
|00004630| 65 61 64 65 72 73 3b 0a | 20 20 20 20 2f 2a 20 73 |eaders;.| /* s|
|00004640| 65 6e 64 20 6c 69 73 74 | 20 6f 66 20 68 65 61 64 |end list| of head|
|00004650| 65 72 73 20 2d 20 74 68 | 65 73 65 20 61 72 65 20 |ers - th|ese are |
|00004660| 74 72 65 61 74 65 64 20 | 62 79 20 44 45 43 6e 65 |treated |by DECne|
|00004670| 74 20 6d 61 69 6c 20 61 | 73 20 70 61 72 74 20 6f |t mail a|s part o|
|00004680| 66 0a 20 20 20 20 20 20 | 20 74 68 65 20 6e 6f 72 |f. | the nor|
|00004690| 6d 61 6c 20 6d 65 73 73 | 61 67 65 20 2a 2f 0a 20 |mal mess|age */. |
|000046a0| 20 77 68 69 6c 65 20 28 | 74 61 69 6c 29 20 7b 0a | while (|tail) {.|
|000046b0| 20 20 20 20 73 65 6e 64 | 28 74 61 69 6c 2d 3e 73 | send|(tail->s|
|000046c0| 74 72 29 3b 0a 20 20 20 | 20 74 61 69 6c 3d 74 61 |tr);. | tail=ta|
|000046d0| 69 6c 2d 3e 6e 65 78 74 | 3b 0a 20 20 20 20 63 66 |il->next|;. cf|
|000046e0| 72 65 65 28 68 65 61 64 | 65 72 73 2d 3e 73 74 72 |ree(head|ers->str|
|000046f0| 29 3b 0a 20 20 20 20 66 | 72 65 65 28 68 65 61 64 |);. f|ree(head|
|00004700| 65 72 73 29 3b 0a 20 20 | 20 20 68 65 61 64 65 72 |ers);. | header|
|00004710| 73 3d 74 61 69 6c 3b 0a | 20 20 7d 0a 7d 0a 0a 2f |s=tail;.| }.}../|
|00004720| 2a 20 74 68 65 20 61 63 | 74 75 61 6c 20 77 6f 72 |* the ac|tual wor|
|00004730| 6b 68 6f 72 73 65 2e 20 | 20 53 65 6e 64 73 20 6d |khorse. | Sends m|
|00004740| 61 69 6c 20 75 73 69 6e | 67 20 63 6f 72 72 65 63 |ail usin|g correc|
|00004750| 74 20 44 45 43 6e 65 74 | 20 6d 61 69 6c 20 70 72 |t DECnet| mail pr|
|00004760| 6f 74 6f 63 6f 6c 2e 0a | 20 20 20 49 6e 66 6f 72 |otocol..| Infor|
|00004770| 6d 61 74 69 6f 6e 20 61 | 62 6f 75 74 20 74 68 65 |mation a|bout the|
|00004780| 20 70 72 6f 74 6f 63 6f | 6c 20 77 61 73 20 64 65 | protoco|l was de|
|00004790| 72 69 76 65 64 20 66 72 | 6f 6d 20 6d 69 63 72 6f |rived fr|om micro|
|000047a0| 66 69 63 68 65 20 56 4d | 53 0a 20 20 20 6c 69 73 |fiche VM|S. lis|
|000047b0| 74 69 6e 67 73 20 66 6f | 72 20 56 34 2e 30 2e 20 |tings fo|r V4.0. |
|000047c0| 20 53 65 65 20 64 6e 61 | 6d 61 69 6c 64 2e 63 20 | See dna|maild.c |
|000047d0| 66 6f 72 20 74 68 65 20 | 6f 74 68 65 72 20 68 61 |for the |other ha|
|000047e0| 6c 66 20 6f 66 20 74 68 | 65 20 70 72 6f 74 6f 63 |lf of th|e protoc|
|000047f0| 6f 6c 2e 0a 20 0a 20 20 | 20 50 72 6f 74 6f 63 6f |ol.. . | Protoco|
|00004800| 6c 3a 0a 20 20 20 20 20 | 27 73 65 6e 64 27 20 6d |l:. |'send' m|
|00004810| 65 61 6e 73 20 74 6f 20 | 77 72 69 74 65 20 61 20 |eans to |write a |
|00004820| 72 65 63 6f 72 64 20 6f | 76 65 72 20 64 65 63 6e |record o|ver decn|
|00004830| 65 74 2e 20 20 41 20 27 | 6d 61 72 6b 65 72 27 20 |et. A '|marker' |
|00004840| 69 73 20 61 20 72 65 63 | 6f 72 64 0a 20 20 20 20 |is a rec|ord. |
|00004850| 20 63 6f 6e 74 61 69 6e | 69 6e 67 20 61 20 73 69 | contain|ing a si|
|00004860| 6e 67 6c 65 20 4e 55 4c | 4c 20 28 75 73 65 64 20 |ngle NUL|L (used |
|00004870| 74 6f 20 74 65 72 6d 69 | 6e 61 74 65 20 6c 69 73 |to termi|nate lis|
|00004880| 74 20 6f 66 20 75 73 65 | 72 73 20 61 6e 64 0a 20 |t of use|rs and. |
|00004890| 20 20 20 20 6d 65 73 73 | 61 67 65 29 2e 0a 20 20 | mess|age).. |
|000048a0| 20 20 20 31 29 20 73 65 | 6e 64 20 77 68 6f 20 74 | 1) se|nd who t|
|000048b0| 68 69 73 20 6d 61 69 6c | 20 69 73 20 66 72 6f 6d |his mail| is from|
|000048c0| 20 28 62 65 63 6f 6d 65 | 73 20 46 72 6f 6d 3a 20 | (become|s From: |
|000048d0| 6c 69 6e 65 29 0a 20 20 | 20 20 20 32 29 20 66 6f |line). | 2) fo|
|000048e0| 72 20 65 61 63 68 20 75 | 73 65 72 20 77 65 20 61 |r each u|ser we a|
|000048f0| 72 65 20 73 65 6e 64 69 | 6e 67 20 6d 61 69 6c 20 |re sendi|ng mail |
|00004900| 74 6f 3a 0a 20 20 20 20 | 20 20 20 20 61 29 20 73 |to:. | a) s|
|00004910| 65 6e 64 20 61 64 64 72 | 65 73 73 0a 20 20 20 20 |end addr|ess. |
|00004920| 20 20 20 20 62 29 20 67 | 65 74 20 73 74 61 74 75 | b) g|et statu|
|00004930| 73 20 62 61 63 6b 20 28 | 74 65 6c 6c 73 20 75 73 |s back (|tells us|
|00004940| 20 69 66 20 61 64 64 72 | 65 73 73 20 69 73 20 76 | if addr|ess is v|
|00004950| 61 6c 69 64 20 6f 72 20 | 6e 6f 74 29 0a 20 20 20 |alid or |not). |
|00004960| 20 20 33 29 20 73 65 6e | 64 20 61 20 27 6d 61 72 | 3) sen|d a 'mar|
|00004970| 6b 65 72 27 20 73 70 65 | 63 69 66 79 69 6e 67 20 |ker' spe|cifying |
|00004980| 74 68 65 20 65 6e 64 20 | 6f 66 20 73 74 65 70 20 |the end |of step |
|00004990| 32 0a 20 20 20 20 20 34 | 29 20 73 65 6e 64 20 54 |2. 4|) send T|
|000049a0| 6f 3a 20 6c 69 6e 65 2e | 20 20 54 68 69 73 20 6c |o: line.| This l|
|000049b0| 69 6e 65 20 63 6f 6e 74 | 61 69 6e 73 20 74 68 65 |ine cont|ains the|
|000049c0| 20 6f 72 69 67 69 6e 61 | 6c 20 6c 69 73 74 0a 20 | origina|l list. |
|000049d0| 20 20 20 20 20 20 20 6f | 66 20 72 65 63 69 70 69 | o|f recipi|
|000049e0| 65 6e 74 73 20 61 73 20 | 65 6e 74 65 72 65 64 20 |ents as |entered |
|000049f0| 62 79 20 74 68 65 20 75 | 73 65 72 2e 20 20 28 74 |by the u|ser. (t|
|00004a00| 68 69 73 20 6c 69 6e 65 | 20 69 73 0a 20 20 20 20 |his line| is. |
|00004a10| 20 20 20 20 74 72 65 61 | 74 65 64 20 61 73 20 61 | trea|ted as a|
|00004a20| 20 27 68 65 61 64 65 72 | 27 20 62 79 20 56 4d 53 | 'header|' by VMS|
|00004a30| 29 0a 20 20 20 20 20 35 | 29 20 73 65 6e 64 20 53 |). 5|) send S|
|00004a40| 75 62 6a 3a 20 6c 69 6e | 65 20 28 74 68 69 73 20 |ubj: lin|e (this |
|00004a50| 69 73 20 68 61 6e 64 6c | 65 64 20 62 79 20 73 65 |is handl|ed by se|
|00004a60| 6e 64 5f 68 65 61 64 65 | 72 73 28 29 20 29 0a 20 |nd_heade|rs() ). |
|00004a70| 20 20 20 20 36 29 20 73 | 65 6e 64 20 65 61 63 68 | 6) s|end each|
|00004a80| 20 6c 69 6e 65 20 6f 66 | 20 74 68 65 20 6d 65 73 | line of| the mes|
|00004a90| 73 61 67 65 0a 20 20 20 | 20 20 37 29 20 74 65 72 |sage. | 7) ter|
|00004aa0| 6d 69 6e 61 74 65 20 6d | 65 73 73 61 67 65 20 77 |minate m|essage w|
|00004ab0| 69 74 68 20 61 20 27 6d | 61 72 6b 65 72 27 2e 0a |ith a 'm|arker'..|
|00004ac0| 20 20 20 20 20 38 29 20 | 46 6f 72 20 65 61 63 68 | 8) |For each|
|00004ad0| 20 61 64 64 72 65 73 73 | 20 74 68 61 74 20 77 61 | address| that wa|
|00004ae0| 73 20 76 61 6c 69 64 20 | 69 6e 20 73 74 65 70 20 |s valid |in step |
|00004af0| 32 2c 20 72 65 61 64 20 | 61 20 73 74 61 74 75 73 |2, read |a status|
|00004b00| 20 76 61 6c 75 65 0a 20 | 20 20 20 20 20 20 20 62 | value. | b|
|00004b10| 61 63 6b 20 74 6f 20 73 | 65 65 20 69 66 20 6d 65 |ack to s|ee if me|
|00004b20| 73 73 61 67 65 20 61 63 | 74 75 61 6c 6c 79 20 67 |ssage ac|tually g|
|00004b30| 6f 74 20 73 65 6e 74 2e | 0a 2a 2f 0a 73 65 6e 64 |ot sent.|.*/.send|
|00004b40| 5f 6d 65 73 73 61 67 65 | 28 29 20 7b 0a 20 20 69 |_message|() {. i|
|00004b50| 6e 74 20 69 3b 0a 0a 20 | 20 69 66 20 28 64 65 62 |nt i;.. | if (deb|
|00004b60| 75 67 29 0a 20 20 20 20 | 66 70 72 69 6e 74 66 28 |ug). |fprintf(|
|00004b70| 73 74 64 65 72 72 2c 20 | 22 53 65 6e 64 20 74 68 |stderr, |"Send th|
|00004b80| 65 20 46 72 6f 6d 3a 20 | 6c 69 6e 65 5c 6e 22 29 |e From: |line\n")|
|00004b90| 3b 0a 20 20 73 65 6e 64 | 28 66 72 6f 6d 29 3b 0a |;. send|(from);.|
|00004ba0| 20 20 0a 20 20 20 20 2f | 2a 20 66 6f 72 20 65 61 | . /|* for ea|
|00004bb0| 63 68 20 75 73 65 72 2c | 20 73 65 6e 64 20 61 64 |ch user,| send ad|
|00004bc0| 64 72 65 73 73 20 61 6e | 64 20 67 65 74 20 73 74 |dress an|d get st|
|00004bd0| 61 74 75 73 20 2a 2f 0a | 20 20 62 61 64 75 73 65 |atus */.| baduse|
|00004be0| 72 5f 66 6c 61 67 20 3d | 20 30 3b 0a 20 20 66 6f |r_flag =| 0;. fo|
|00004bf0| 72 20 28 69 3d 30 3b 20 | 69 3c 6e 75 6d 5f 61 64 |r (i=0; |i<num_ad|
|00004c00| 64 72 3b 20 69 2b 2b 29 | 20 7b 0a 20 20 20 20 69 |dr; i++)| {. i|
|00004c10| 66 20 28 64 65 62 75 67 | 29 0a 20 20 20 20 20 20 |f (debug|). |
|00004c20| 66 70 72 69 6e 74 66 28 | 73 74 64 65 72 72 2c 20 |fprintf(|stderr, |
|00004c30| 22 43 68 65 63 6b 69 6e | 67 20 75 73 65 72 20 3c |"Checkin|g user <|
|00004c40| 25 73 3e 5c 6e 22 2c 20 | 74 6f 5b 69 5d 29 3b 0a |%s>\n", |to[i]);.|
|00004c50| 20 20 20 20 73 65 6e 64 | 28 74 6f 5b 69 5d 29 3b | send|(to[i]);|
|00004c60| 0a 20 20 20 20 69 66 20 | 28 63 68 65 63 6b 5f 73 |. if |(check_s|
|00004c70| 74 61 74 75 73 28 29 29 | 20 7b 09 2f 2a 20 73 74 |tatus())| {./* st|
|00004c80| 61 74 75 73 20 74 65 6c | 6c 20 69 66 20 64 65 6c |atus tel|l if del|
|00004c90| 69 76 65 72 61 62 6c 65 | 20 6f 72 20 6e 6f 74 20 |iverable| or not |
|00004ca0| 2a 2f 0a 20 20 20 20 20 | 20 69 66 20 28 64 65 62 |*/. | if (deb|
|00004cb0| 75 67 29 0a 20 20 20 20 | 20 20 20 20 66 70 72 69 |ug). | fpri|
|00004cc0| 6e 74 66 28 73 74 64 65 | 72 72 2c 20 22 5c 74 63 |ntf(stde|rr, "\tc|
|00004cd0| 68 65 63 6b 5f 73 74 61 | 74 75 73 20 72 65 74 75 |heck_sta|tus retu|
|00004ce0| 72 6e 65 64 20 74 72 75 | 65 5c 6e 22 29 3b 0a 20 |rned tru|e\n");. |
|00004cf0| 20 20 20 20 20 74 6f 5b | 69 5d 20 3d 20 4e 55 4c | to[|i] = NUL|
|00004d00| 4c 3b 20 0a 20 20 20 20 | 20 20 62 61 64 75 73 65 |L; . | baduse|
|00004d10| 72 5f 66 6c 61 67 20 3d | 20 31 3b 20 20 2f 2a 20 |r_flag =| 1; /* |
|00004d20| 72 65 6d 65 6d 62 65 72 | 20 74 68 61 74 20 77 65 |remember| that we|
|00004d30| 20 68 61 64 20 61 6e 20 | 69 6e 76 61 6c 69 64 20 | had an |invalid |
|00004d40| 61 64 64 72 65 73 73 20 | 2a 2f 0a 20 20 20 20 7d |address |*/. }|
|00004d50| 0a 20 20 7d 0a 20 20 73 | 65 6e 64 5f 6d 61 72 6b |. }. s|end_mark|
|00004d60| 65 72 28 29 3b 09 2f 2a | 20 73 70 65 63 69 66 69 |er();./*| specifi|
|00004d70| 65 73 20 65 6e 64 20 6f | 66 20 61 64 64 72 65 73 |es end o|f addres|
|00004d80| 73 20 63 68 65 63 6b 20 | 2a 2f 0a 0a 20 20 69 66 |s check |*/.. if|
|00004d90| 20 28 64 65 62 75 67 29 | 0a 20 20 20 20 66 70 72 | (debug)|. fpr|
|00004da0| 69 6e 74 66 28 73 74 64 | 65 72 72 2c 20 22 73 65 |intf(std|err, "se|
|00004db0| 6e 64 69 6e 67 20 54 6f | 3a 20 6c 69 6e 65 5c 6e |nding To|: line\n|
|00004dc0| 22 29 3b 0a 20 20 73 65 | 6e 64 20 28 74 6f 5f 6c |");. se|nd (to_l|
|00004dd0| 69 6e 65 29 3b 0a 0a 20 | 20 20 20 2f 2a 20 73 65 |ine);.. | /* se|
|00004de0| 6e 64 5f 68 65 61 64 65 | 72 73 28 29 20 77 69 6c |nd_heade|rs() wil|
|00004df0| 6c 20 73 65 6e 64 20 74 | 68 65 20 53 75 62 6a 3a |l send t|he Subj:|
|00004e00| 20 6c 69 6e 65 20 61 66 | 74 65 72 20 70 61 72 73 | line af|ter pars|
|00004e10| 69 6e 67 20 74 68 65 20 | 68 65 61 64 65 72 73 20 |ing the |headers |
|00004e20| 2a 2f 0a 20 20 73 65 6e | 64 5f 68 65 61 64 65 72 |*/. sen|d_header|
|00004e30| 73 28 29 3b 0a 0a 20 20 | 20 20 2f 2a 20 6e 6f 77 |s();.. | /* now|
|00004e40| 20 73 65 6e 64 20 61 63 | 74 75 61 6c 20 6d 65 73 | send ac|tual mes|
|00004e50| 73 61 67 65 20 2a 2f 0a | 20 20 69 66 20 28 64 65 |sage */.| if (de|
|00004e60| 62 75 67 29 0a 20 20 20 | 20 66 70 72 69 6e 74 66 |bug). | fprintf|
|00004e70| 28 73 74 64 65 72 72 2c | 20 22 53 65 6e 64 69 6e |(stderr,| "Sendin|
|00004e80| 67 20 6d 65 73 73 61 67 | 65 20 62 6f 64 79 5c 6e |g messag|e body\n|
|00004e90| 22 29 3b 0a 20 20 69 66 | 20 28 74 74 79 66 6c 61 |");. if| (ttyfla|
|00004ea0| 67 29 0a 20 20 20 20 70 | 72 69 6e 74 66 28 22 45 |g). p|rintf("E|
|00004eb0| 6e 74 65 72 20 79 6f 75 | 72 20 6d 65 73 73 61 67 |nter you|r messag|
|00004ec0| 65 20 62 65 6c 6f 77 2e | 20 20 50 72 65 73 73 20 |e below.| Press |
|00004ed0| 43 54 52 4c 2f 44 20 77 | 68 65 6e 20 63 6f 6d 70 |CTRL/D w|hen comp|
|00004ee0| 6c 65 74 65 2c 20 6f 72 | 20 43 54 52 4c 2f 43 20 |lete, or| CTRL/C |
|00004ef0| 74 6f 20 71 75 69 74 3a | 5c 6e 22 29 3b 0a 20 20 |to quit:|\n");. |
|00004f00| 77 68 69 6c 65 20 28 67 | 65 74 73 28 62 75 66 66 |while (g|ets(buff|
|00004f10| 29 20 3e 20 30 29 0a 20 | 20 20 20 73 65 6e 64 28 |) > 0). | send(|
|00004f20| 62 75 66 66 29 3b 0a 20 | 20 73 65 6e 64 5f 6d 61 |buff);. | send_ma|
|00004f30| 72 6b 65 72 28 29 3b 20 | 20 2f 2a 20 73 70 65 63 |rker(); | /* spec|
|00004f40| 69 66 69 65 73 20 65 6e | 64 20 6f 66 20 6d 65 73 |ifies en|d of mes|
|00004f50| 73 61 67 65 20 2a 2f 0a | 0a 20 20 20 20 2f 2a 20 |sage */.|. /* |
|00004f60| 66 6f 72 20 65 61 63 68 | 20 61 64 64 72 65 73 73 |for each| address|
|00004f70| 2c 20 63 68 65 63 6b 20 | 73 74 61 74 75 73 20 74 |, check |status t|
|00004f80| 6f 20 73 65 65 20 69 66 | 20 69 74 20 77 61 73 20 |o see if| it was |
|00004f90| 61 63 74 75 61 6c 6c 79 | 20 73 65 6e 74 20 2a 2f |actually| sent */|
|00004fa0| 0a 20 20 66 6f 72 20 28 | 69 3d 30 3b 20 69 3c 6e |. for (|i=0; i<n|
|00004fb0| 75 6d 5f 61 64 64 72 3b | 20 69 2b 2b 29 0a 20 20 |um_addr;| i++). |
|00004fc0| 20 20 69 66 20 28 74 6f | 5b 69 5d 20 26 26 20 63 | if (to|[i] && c|
|00004fd0| 68 65 63 6b 5f 73 74 61 | 74 75 73 28 29 29 0a 20 |heck_sta|tus()). |
|00004fe0| 20 20 20 20 20 62 61 64 | 75 73 65 72 5f 66 6c 61 | bad|user_fla|
|00004ff0| 67 20 3d 20 31 3b 20 20 | 2f 2a 20 73 6f 20 77 65 |g = 1; |/* so we|
|00005000| 20 63 61 6e 20 65 78 69 | 74 20 77 69 74 68 20 61 | can exi|t with a|
|00005010| 6e 20 61 70 70 72 6f 70 | 72 69 61 74 65 20 65 72 |n approp|riate er|
|00005020| 72 6f 72 20 2a 2f 0a 7d | 0a 0a 2f 2a 20 72 65 61 |ror */.}|../* rea|
|00005030| 64 20 73 74 61 74 75 73 | 20 62 61 63 6b 20 66 72 |d status| back fr|
|00005040| 6f 6d 20 72 65 6d 6f 74 | 65 20 6e 6f 64 65 2e 20 |om remot|e node. |
|00005050| 20 53 69 6e 63 65 20 49 | 20 61 6d 20 61 73 73 75 | Since I| am assu|
|00005060| 6d 69 6e 67 20 74 68 65 | 20 72 65 6d 6f 74 65 0a |ming the| remote.|
|00005070| 20 20 20 6e 6f 64 65 20 | 69 73 20 61 20 56 41 58 | node |is a VAX|
|00005080| 2c 20 49 20 61 73 73 75 | 6d 65 20 61 20 56 41 58 |, I assu|me a VAX|
|00005090| 20 62 79 74 65 20 6f 72 | 64 65 72 2e 20 20 49 66 | byte or|der. If|
|000050a0| 20 74 68 65 72 65 20 77 | 61 73 20 61 6e 0a 20 20 | there w|as an. |
|000050b0| 20 65 72 72 6f 72 2c 20 | 74 68 65 6e 20 72 65 61 | error, |then rea|
|000050c0| 64 20 69 6e 20 73 74 61 | 74 75 73 20 6d 65 73 73 |d in sta|tus mess|
|000050d0| 61 67 65 20 2a 2f 0a 69 | 6e 74 20 63 68 65 63 6b |age */.i|nt check|
|000050e0| 5f 73 74 61 74 75 73 28 | 29 20 7b 0a 23 69 66 6e |_status(|) {.#ifn|
|000050f0| 64 65 66 20 44 45 42 55 | 47 0a 20 20 6c 6f 6e 67 |def DEBU|G. long|
|00005100| 20 73 74 3b 0a 20 20 20 | 20 2f 2a 20 72 65 61 64 | st;. | /* read|
|00005110| 20 6c 6f 6e 67 77 6f 72 | 64 20 2a 2f 0a 20 20 69 | longwor|d */. i|
|00005120| 66 20 28 72 65 61 64 28 | 6c 6c 2c 20 26 73 74 2c |f (read(|ll, &st,|
|00005130| 20 73 69 7a 65 6f 66 28 | 6c 6f 6e 67 29 29 20 3c | sizeof(|long)) <|
|00005140| 20 30 29 20 7b 0a 20 20 | 20 20 64 6e 61 65 72 72 | 0) {. | dnaerr|
|00005150| 6f 72 28 22 43 68 65 63 | 6b 53 74 61 74 75 73 22 |or("Chec|kStatus"|
|00005160| 29 3b 0a 20 20 20 20 65 | 78 69 74 5f 77 69 74 68 |);. e|xit_with|
|00005170| 5f 73 74 61 74 75 73 28 | 29 3b 0a 20 20 7d 0a 20 |_status(|);. }. |
|00005180| 20 20 20 2f 2a 20 30 78 | 30 31 30 30 30 30 30 30 | /* 0x|01000000|
|00005190| 20 69 73 20 72 65 61 6c | 6c 79 20 30 78 31 20 6f | is real|ly 0x1 o|
|000051a0| 6e 20 56 41 58 20 2a 2f | 0a 20 20 69 66 20 28 73 |n VAX */|. if (s|
|000051b0| 74 20 3d 3d 20 30 78 30 | 31 30 30 30 30 30 30 29 |t == 0x0|1000000)|
|000051c0| 0a 20 20 20 20 72 65 74 | 75 72 6e 20 30 3b 0a 20 |. ret|urn 0;. |
|000051d0| 20 20 20 2f 2a 20 65 6c | 73 65 20 77 65 20 68 61 | /* el|se we ha|
|000051e0| 76 65 20 61 6e 20 65 72 | 72 6f 72 20 2d 20 72 65 |ve an er|ror - re|
|000051f0| 61 64 20 65 72 72 6f 72 | 20 6d 65 73 73 61 67 65 |ad error| message|
|00005200| 20 2a 2f 0a 20 20 77 68 | 69 6c 65 20 28 31 29 20 | */. wh|ile (1) |
|00005210| 7b 0a 20 20 20 20 69 66 | 20 28 28 73 74 3d 72 65 |{. if| ((st=re|
|00005220| 61 64 28 6c 6c 2c 20 62 | 75 66 66 2c 20 73 69 7a |ad(ll, b|uff, siz|
|00005230| 65 6f 66 28 62 75 66 66 | 29 29 29 20 3c 20 30 29 |eof(buff|))) < 0)|
|00005240| 20 7b 0a 20 20 20 20 20 | 20 64 6e 61 65 72 72 6f | {. | dnaerro|
|00005250| 72 28 22 43 68 65 63 6b | 53 74 61 74 75 73 22 29 |r("Check|Status")|
|00005260| 3b 0a 20 20 20 20 20 20 | 65 78 69 74 5f 77 69 74 |;. |exit_wit|
|00005270| 68 5f 73 74 61 74 75 73 | 28 29 3b 0a 20 20 20 20 |h_status|();. |
|00005280| 7d 0a 20 20 20 20 20 20 | 2f 2a 20 69 73 20 74 68 |}. |/* is th|
|00005290| 69 73 20 65 6e 64 20 6f | 66 20 73 74 61 74 75 73 |is end o|f status|
|000052a0| 20 6d 65 73 73 61 67 65 | 20 3f 20 2a 2f 0a 20 20 | message| ? */. |
|000052b0| 20 20 69 66 20 28 73 74 | 20 3d 3d 20 31 20 26 26 | if (st| == 1 &&|
|000052c0| 20 62 75 66 66 5b 30 5d | 20 3d 3d 20 4e 55 4c 4c | buff[0]| == NULL|
|000052d0| 29 0a 20 20 20 20 20 20 | 62 72 65 61 6b 3b 0a 20 |). |break;. |
|000052e0| 20 20 20 62 75 66 66 5b | 73 74 5d 20 3d 20 4e 55 | buff[|st] = NU|
|000052f0| 4c 4c 3b 0a 20 20 20 20 | 66 70 72 69 6e 74 66 28 |LL;. |fprintf(|
|00005300| 73 74 64 65 72 72 2c 20 | 22 25 73 5c 6e 22 2c 20 |stderr, |"%s\n", |
|00005310| 62 75 66 66 29 3b 20 20 | 20 20 2f 2a 20 77 72 69 |buff); | /* wri|
|00005320| 74 65 20 74 6f 20 73 74 | 64 65 72 72 20 73 6f 20 |te to st|derr so |
|00005330| 73 65 6e 64 6d 61 69 6c | 20 73 65 65 73 20 69 74 |sendmail| sees it|
|00005340| 20 2a 2f 0a 20 20 7d 0a | 20 20 72 65 74 75 72 6e | */. }.| return|
|00005350| 20 31 3b 0a 23 65 6c 73 | 65 0a 20 20 72 65 74 75 | 1;.#els|e. retu|
|00005360| 72 6e 20 30 3b 0a 23 65 | 6e 64 69 66 0a 7d 0a 0a |rn 0;.#e|ndif.}..|
|00005370| 2f 2a 20 73 65 6e 64 20 | 61 20 73 74 72 69 6e 67 |/* send |a string|
|00005380| 20 6f 76 65 72 20 74 68 | 65 20 64 65 63 6e 65 74 | over th|e decnet|
|00005390| 20 63 6f 6e 6e 65 63 74 | 69 6f 6e 20 2a 2f 0a 73 | connect|ion */.s|
|000053a0| 65 6e 64 28 73 29 0a 63 | 68 61 72 20 2a 73 3b 0a |end(s).c|har *s;.|
|000053b0| 7b 0a 23 69 66 6e 64 65 | 66 20 44 45 42 55 47 0a |{.#ifnde|f DEBUG.|
|000053c0| 20 20 69 66 20 28 77 72 | 69 74 65 28 6c 6c 2c 20 | if (wr|ite(ll, |
|000053d0| 73 2c 20 28 73 3f 73 74 | 72 6c 65 6e 28 73 29 3a |s, (s?st|rlen(s):|
|000053e0| 30 29 29 20 3c 20 30 29 | 20 7b 0a 20 20 20 20 64 |0)) < 0)| {. d|
|000053f0| 6e 61 65 72 72 6f 72 28 | 22 53 45 4e 44 22 29 3b |naerror(|"SEND");|
|00005400| 0a 20 20 20 20 65 78 69 | 74 5f 77 69 74 68 5f 73 |. exi|t_with_s|
|00005410| 74 61 74 75 73 28 29 3b | 0a 20 20 7d 0a 23 65 6c |tatus();|. }.#el|
|00005420| 73 65 0a 70 72 69 6e 74 | 66 28 22 53 45 4e 44 3d |se.print|f("SEND=|
|00005430| 20 25 73 5c 6e 22 2c 20 | 28 73 3f 73 3a 22 22 29 | %s\n", |(s?s:"")|
|00005440| 29 3b 0a 23 65 6e 64 69 | 66 0a 7d 0a 0a 2f 2a 20 |);.#endi|f.}../* |
|00005450| 73 65 6e 64 20 4e 55 4c | 4c 20 6f 76 65 72 20 64 |send NUL|L over d|
|00005460| 65 63 6e 65 74 20 6c 69 | 6e 6b 20 2d 20 75 73 65 |ecnet li|nk - use|
|00005470| 64 20 61 73 20 6d 61 72 | 6b 65 72 20 2a 2f 0a 73 |d as mar|ker */.s|
|00005480| 65 6e 64 5f 6d 61 72 6b | 65 72 28 29 20 7b 0a 23 |end_mark|er() {.#|
|00005490| 69 66 6e 64 65 66 20 44 | 45 42 55 47 0a 20 20 69 |ifndef D|EBUG. i|
|000054a0| 66 20 28 77 72 69 74 65 | 28 6c 6c 2c 20 22 22 2c |f (write|(ll, "",|
|000054b0| 20 31 29 20 3c 20 30 29 | 20 7b 0a 20 20 20 20 64 | 1) < 0)| {. d|
|000054c0| 6e 61 65 72 72 6f 72 28 | 22 53 45 4e 44 22 29 3b |naerror(|"SEND");|
|000054d0| 0a 20 20 20 20 65 78 69 | 74 5f 77 69 74 68 5f 73 |. exi|t_with_s|
|000054e0| 74 61 74 75 73 28 29 3b | 0a 20 20 7d 0a 23 65 6c |tatus();|. }.#el|
|000054f0| 73 65 0a 70 72 69 6e 74 | 66 28 22 53 45 4e 44 5f |se.print|f("SEND_|
|00005500| 4d 41 52 4b 45 52 5c 6e | 22 29 3b 0a 23 65 6e 64 |MARKER\n|");.#end|
|00005510| 69 66 0a 7d 0a 0a 2f 2a | 20 63 6c 65 61 6e 20 75 |if.}../*| clean u|
|00005520| 70 20 61 64 64 72 65 73 | 73 65 73 20 66 6f 72 20 |p addres|ses for |
|00005530| 56 4d 53 20 73 69 64 65 | 20 2d 20 63 6f 6e 76 65 |VMS side| - conve|
|00005540| 72 74 20 74 6f 20 75 70 | 70 65 72 63 61 73 65 2c |rt to up|percase,|
|00005550| 20 61 6e 79 74 68 69 6e | 67 20 65 6c 73 65 0a 20 | anythin|g else. |
|00005560| 20 20 6e 65 65 64 65 64 | 20 2a 2f 0a 63 68 61 72 | needed| */.char|
|00005570| 20 2a 66 69 78 5f 61 64 | 64 72 28 61 64 64 72 29 | *fix_ad|dr(addr)|
|00005580| 0a 63 68 61 72 20 2a 61 | 64 64 72 3b 0a 7b 0a 20 |.char *a|ddr;.{. |
|00005590| 20 63 68 61 72 20 69 6e | 71 75 6f 74 65 2c 20 65 | char in|quote, e|
|000055a0| 73 63 3b 0a 20 20 63 68 | 61 72 20 2a 70 3b 0a 20 |sc;. ch|ar *p;. |
|000055b0| 20 20 20 2f 2a 20 6d 61 | 6b 65 20 73 75 72 65 20 | /* ma|ke sure |
|000055c0| 75 73 65 72 6e 61 6d 65 | 73 20 61 72 65 20 75 70 |username|s are up|
|000055d0| 70 65 72 63 61 73 65 20 | 73 6f 20 74 68 61 74 20 |percase |so that |
|000055e0| 4d 41 49 4c 2e 45 58 45 | 20 64 6f 65 73 6e 27 74 |MAIL.EXE| doesn't|
|000055f0| 20 79 65 6c 6c 0a 20 20 | 20 20 20 20 20 61 74 20 | yell. | at |
|00005600| 75 73 20 2a 2f 0a 20 20 | 69 6e 71 75 6f 74 65 20 |us */. |inquote |
|00005610| 3d 20 30 3b 0a 20 20 66 | 6f 72 20 28 70 3d 62 75 |= 0;. f|or (p=bu|
|00005620| 66 66 3b 20 2a 61 64 64 | 72 3b 20 61 64 64 72 2b |ff; *add|r; addr+|
|00005630| 2b 29 20 7b 0a 20 20 20 | 20 69 66 20 28 65 73 63 |+) {. | if (esc|
|00005640| 20 3d 20 28 2a 61 64 64 | 72 3d 3d 27 5c 5c 27 29 | = (*add|r=='\\')|
|00005650| 29 20 0a 20 20 20 20 20 | 20 61 64 64 72 2b 2b 3b |) . | addr++;|
|00005660| 0a 20 20 20 20 69 66 20 | 28 2a 61 64 64 72 3d 3d |. if |(*addr==|
|00005670| 27 22 27 20 26 26 20 21 | 65 73 63 29 20 7b 0a 20 |'"' && !|esc) {. |
|00005680| 20 20 20 20 20 61 64 64 | 72 2b 2b 3b 0a 20 20 20 | add|r++;. |
|00005690| 20 20 20 69 6e 71 75 6f | 74 65 20 5e 3d 20 31 3b | inquo|te ^= 1;|
|000056a0| 0a 20 20 20 20 7d 0a 20 | 20 20 20 69 66 20 28 21 |. }. | if (!|
|000056b0| 69 6e 71 75 6f 74 65 20 | 26 26 20 69 73 6c 6f 77 |inquote |&& islow|
|000056c0| 65 72 28 2a 61 64 64 72 | 29 29 0a 20 20 20 20 20 |er(*addr|)). |
|000056d0| 20 2a 70 2b 2b 20 3d 20 | 74 6f 75 70 70 65 72 28 | *p++ = |toupper(|
|000056e0| 2a 61 64 64 72 29 3b 0a | 20 20 20 20 65 6c 73 65 |*addr);.| else|
|000056f0| 0a 20 20 20 20 20 20 2a | 70 2b 2b 20 3d 20 2a 61 |. *|p++ = *a|
|00005700| 64 64 72 3b 0a 20 20 7d | 0a 20 20 2a 70 20 3d 20 |ddr;. }|. *p = |
|00005710| 4e 55 4c 4c 3b 0a 20 20 | 72 65 74 75 72 6e 20 63 |NULL;. |return c|
|00005720| 6f 70 79 73 74 72 28 62 | 75 66 66 29 3b 0a 7d 0a |opystr(b|uff);.}.|
|00005730| 0a 2f 2a 20 6d 61 6b 65 | 20 6f 6e 65 20 6c 6f 6e |./* make| one lon|
|00005740| 67 20 61 64 64 72 65 73 | 73 20 6f 75 74 20 6f 66 |g addres|s out of|
|00005750| 20 61 6c 6c 20 73 70 65 | 63 69 66 69 65 64 20 6f | all spe|cified o|
|00005760| 6e 20 63 6f 6d 6d 61 6e | 64 20 6c 69 6e 65 20 2d |n comman|d line -|
|00005770| 20 61 70 70 65 6e 64 0a | 20 20 20 22 6e 6f 64 65 | append.| "node|
|00005780| 3a 3a 22 20 74 6f 20 62 | 65 67 69 6e 6e 69 6e 67 |::" to b|eginning|
|00005790| 20 6f 66 20 65 61 63 68 | 2e 20 20 52 65 74 75 72 | of each|. Retur|
|000057a0| 6e 20 69 6e 20 27 74 6f | 5f 6c 69 6e 65 27 20 2a |n in 'to|_line' *|
|000057b0| 2f 0a 67 65 74 5f 61 64 | 64 72 65 73 73 65 73 28 |/.get_ad|dresses(|
|000057c0| 61 72 67 76 2c 20 69 6e | 64 65 78 2c 20 6e 75 6d |argv, in|dex, num|
|000057d0| 5f 61 64 64 72 65 73 73 | 65 73 29 0a 63 68 61 72 |_address|es).char|
|000057e0| 20 2a 61 72 67 76 5b 5d | 3b 0a 69 6e 74 20 69 6e | *argv[]|;.int in|
|000057f0| 64 65 78 2c 20 6e 75 6d | 5f 61 64 64 72 65 73 73 |dex, num|_address|
|00005800| 65 73 3b 0a 7b 0a 20 20 | 69 6e 74 20 69 3b 0a 20 |es;.{. |int i;. |
|00005810| 20 69 6e 74 20 63 6f 6d | 6d 61 5f 66 6c 61 67 3b | int com|ma_flag;|
|00005820| 0a 20 20 63 6f 6d 6d 61 | 5f 66 6c 61 67 20 3d 20 |. comma|_flag = |
|00005830| 30 3b 0a 20 20 6e 75 6d | 5f 61 64 64 72 20 3d 20 |0;. num|_addr = |
|00005840| 6e 75 6d 5f 61 64 64 72 | 65 73 73 65 73 3b 0a 20 |num_addr|esses;. |
|00005850| 20 74 6f 20 3d 20 28 63 | 68 61 72 20 2a 2a 29 6d | to = (c|har **)m|
|00005860| 61 6c 6c 6f 63 28 73 69 | 7a 65 6f 66 28 63 68 61 |alloc(si|zeof(cha|
|00005870| 72 20 2a 29 20 2a 20 6e | 75 6d 5f 61 64 64 72 29 |r *) * n|um_addr)|
|00005880| 3b 0a 20 20 66 6f 72 20 | 28 69 3d 30 3b 20 69 3c |;. for |(i=0; i<|
|00005890| 6e 75 6d 5f 61 64 64 72 | 3b 20 69 2b 2b 29 20 7b |num_addr|; i++) {|
|000058a0| 0a 20 20 20 20 69 66 20 | 28 63 6f 6d 6d 61 5f 66 |. if |(comma_f|
|000058b0| 6c 61 67 29 0a 20 20 20 | 20 20 20 73 74 72 63 61 |lag). | strca|
|000058c0| 74 28 62 75 66 66 2c 20 | 22 20 22 29 3b 0a 20 20 |t(buff, |" ");. |
|000058d0| 20 20 73 74 72 63 61 74 | 28 62 75 66 66 2c 20 6e | strcat|(buff, n|
|000058e0| 6f 64 65 29 3b 0a 20 20 | 20 20 73 74 72 63 61 74 |ode);. | strcat|
|000058f0| 28 62 75 66 66 2c 20 22 | 3a 3a 22 29 3b 0a 20 20 |(buff, "|::");. |
|00005900| 20 20 73 74 72 63 61 74 | 28 62 75 66 66 2c 20 61 | strcat|(buff, a|
|00005910| 72 67 76 5b 69 2b 69 6e | 64 65 78 5d 29 3b 0a 20 |rgv[i+in|dex]);. |
|00005920| 20 20 20 74 6f 5b 69 5d | 20 3d 20 66 69 78 5f 61 | to[i]| = fix_a|
|00005930| 64 64 72 28 61 72 67 76 | 5b 69 2b 69 6e 64 65 78 |ddr(argv|[i+index|
|00005940| 5d 29 3b 0a 20 20 20 20 | 63 6f 6d 6d 61 5f 66 6c |]);. |comma_fl|
|00005950| 61 67 20 3d 20 31 3b 0a | 20 20 7d 0a 20 20 74 6f |ag = 1;.| }. to|
|00005960| 5f 6c 69 6e 65 20 3d 20 | 63 6f 70 79 73 74 72 28 |_line = |copystr(|
|00005970| 62 75 66 66 29 3b 0a 7d | 0a 0a 2f 2a 20 70 61 72 |buff);.}|../* par|
|00005980| 73 65 20 61 72 67 75 6d | 65 6e 74 73 2c 20 67 65 |se argum|ents, ge|
|00005990| 74 20 61 6e 79 74 68 69 | 6e 67 20 6e 6f 74 20 73 |t anythi|ng not s|
|000059a0| 70 65 63 69 66 69 65 64 | 2c 20 61 6e 64 20 63 61 |pecified|, and ca|
|000059b0| 6c 6c 20 73 65 6e 64 5f | 6d 65 73 73 61 67 65 28 |ll send_|message(|
|000059c0| 29 20 2a 2f 0a 6d 61 69 | 6e 28 61 72 67 63 2c 20 |) */.mai|n(argc, |
|000059d0| 61 72 67 76 29 0a 09 20 | 20 69 6e 74 20 61 72 67 |argv).. | int arg|
|000059e0| 63 3b 0a 09 20 20 63 68 | 61 72 20 2a 61 72 67 76 |c;.. ch|ar *argv|
|000059f0| 5b 5d 3b 0a 7b 0a 20 20 | 69 6e 74 20 73 74 2c 09 |[];.{. |int st,.|
|00005a00| 09 09 2f 2a 20 72 65 74 | 75 72 6e 20 73 74 61 74 |../* ret|urn stat|
|00005a10| 75 73 20 2a 2f 0a 20 20 | 20 20 20 20 20 69 3b 09 |us */. | i;.|
|00005a20| 09 09 2f 2a 20 6d 69 73 | 63 2e 20 2a 2f 0a 0a 20 |../* mis|c. */.. |
|00005a30| 20 65 78 74 65 72 6e 20 | 63 68 61 72 20 2a 6f 70 | extern |char *op|
|00005a40| 74 61 72 67 3b 09 09 2f | 2a 20 66 6f 72 20 75 73 |targ;../|* for us|
|00005a50| 65 20 77 69 74 68 20 67 | 65 74 6f 70 74 28 29 20 |e with g|etopt() |
|00005a60| 2a 2f 0a 20 20 65 78 74 | 65 72 6e 20 69 6e 74 20 |*/. ext|ern int |
|00005a70| 6f 70 74 69 6e 64 3b 0a | 20 20 63 68 61 72 20 6f |optind;.| char o|
|00005a80| 70 74 3b 0a 20 20 63 68 | 61 72 20 2a 63 6f 70 79 |pt;. ch|ar *copy|
|00005a90| 73 74 72 28 29 3b 0a 20 | 20 63 68 61 72 20 2a 74 |str();. | char *t|
|00005aa0| 31 3b 0a 20 20 73 74 72 | 75 63 74 20 70 61 73 73 |1;. str|uct pass|
|00005ab0| 77 64 20 2a 70 77 3b 0a | 0a 20 20 73 75 62 6a 65 |wd *pw;.|. subje|
|00005ac0| 63 74 20 3d 20 6e 6f 64 | 65 20 3d 20 66 72 6f 6d |ct = nod|e = from|
|00005ad0| 20 3d 20 66 72 6f 6d 5f | 6f 20 3d 20 4e 55 4c 4c | = from_|o = NULL|
|00005ae0| 3b 0a 20 20 64 65 62 75 | 67 20 3d 20 74 74 79 66 |;. debu|g = ttyf|
|00005af0| 6c 61 67 20 3d 20 46 41 | 4c 53 45 3b 0a 20 20 0a |lag = FA|LSE;. .|
|00005b00| 20 20 20 20 2f 2a 20 70 | 61 72 73 65 20 61 72 67 | /* p|arse arg|
|00005b10| 75 6d 65 6e 74 73 20 2a | 2f 0a 20 20 77 68 69 6c |uments *|/. whil|
|00005b20| 65 20 28 28 6f 70 74 3d | 67 65 74 6f 70 74 28 61 |e ((opt=|getopt(a|
|00005b30| 72 67 63 2c 20 61 72 67 | 76 2c 20 22 64 73 3a 6e |rgc, arg|v, "ds:n|
|00005b40| 3a 66 3a 22 29 29 20 21 | 3d 20 45 4f 46 29 20 7b |:f:")) !|= EOF) {|
|00005b50| 0a 20 20 20 20 73 77 69 | 74 63 68 28 6f 70 74 29 |. swi|tch(opt)|
|00005b60| 20 7b 0a 20 20 20 20 20 | 20 63 61 73 65 20 27 64 | {. | case 'd|
|00005b70| 27 3a 09 09 2f 2a 20 64 | 65 62 75 67 20 66 6c 61 |':../* d|ebug fla|
|00005b80| 67 20 2a 2f 0a 20 20 20 | 20 20 20 20 20 64 65 62 |g */. | deb|
|00005b90| 75 67 20 3d 20 54 52 55 | 45 3b 0a 09 62 72 65 61 |ug = TRU|E;..brea|
|00005ba0| 6b 3b 0a 20 20 20 20 20 | 20 63 61 73 65 20 27 73 |k;. | case 's|
|00005bb0| 27 3a 09 09 2f 2a 20 73 | 75 62 6a 65 63 74 20 2a |':../* s|ubject *|
|00005bc0| 2f 0a 20 20 20 20 20 20 | 20 20 73 75 62 6a 65 63 |/. | subjec|
|00005bd0| 74 20 3d 20 6f 70 74 61 | 72 67 3b 0a 09 62 72 65 |t = opta|rg;..bre|
|00005be0| 61 6b 3b 0a 20 20 20 20 | 20 20 63 61 73 65 20 27 |ak;. | case '|
|00005bf0| 6e 27 3a 09 09 2f 2a 20 | 72 65 6d 6f 74 65 20 6e |n':../* |remote n|
|00005c00| 6f 64 65 20 2a 2f 0a 09 | 6e 6f 64 65 20 3d 20 6f |ode */..|node = o|
|00005c10| 70 74 61 72 67 3b 0a 09 | 62 72 65 61 6b 3b 0a 20 |ptarg;..|break;. |
|00005c20| 20 20 20 20 20 63 61 73 | 65 20 27 66 27 3a 09 09 | cas|e 'f':..|
|00005c30| 2f 2a 20 6e 6f 74 20 69 | 6e 63 6c 75 64 65 64 20 |/* not i|ncluded |
|00005c40| 69 6e 20 75 73 61 67 65 | 28 29 21 20 2a 2f 0a 09 |in usage|()! */..|
|00005c50| 66 72 6f 6d 5f 6f 20 3d | 20 6f 70 74 61 72 67 3b |from_o =| optarg;|
|00005c60| 0a 09 62 72 65 61 6b 3b | 0a 20 20 20 20 20 20 64 |..break;|. d|
|00005c70| 65 66 61 75 6c 74 3a 0a | 09 75 73 61 67 65 28 29 |efault:.|.usage()|
|00005c80| 3b 0a 09 65 78 69 74 28 | 45 58 5f 55 53 41 47 45 |;..exit(|EX_USAGE|
|00005c90| 29 3b 0a 20 20 20 20 7d | 0a 20 20 7d 0a 0a 20 20 |);. }|. }.. |
|00005ca0| 20 20 2f 2a 20 73 65 65 | 20 69 66 20 77 65 20 61 | /* see| if we a|
|00005cb0| 72 65 20 61 20 74 74 79 | 20 61 73 20 6f 70 70 6f |re a tty| as oppo|
|00005cc0| 73 65 64 20 74 6f 20 73 | 65 6e 64 6d 61 69 6c 20 |sed to s|endmail |
|00005cd0| 2a 2f 0a 20 20 74 74 79 | 66 6c 61 67 20 3d 20 69 |*/. tty|flag = i|
|00005ce0| 73 61 74 74 79 28 30 29 | 3b 20 0a 0a 20 20 20 20 |satty(0)|; .. |
|00005cf0| 2f 2a 20 70 72 6f 6d 70 | 74 20 66 6f 72 20 6e 6f |/* promp|t for no|
|00005d00| 64 65 20 69 66 20 6e 6f | 74 20 73 70 65 63 69 66 |de if no|t specif|
|00005d10| 69 65 64 20 2a 2f 0a 20 | 20 69 66 20 28 21 6e 6f |ied */. | if (!no|
|00005d20| 64 65 29 20 7b 0a 20 20 | 20 20 66 70 75 74 73 28 |de) {. | fputs(|
|00005d30| 22 4e 6f 64 65 3a 20 22 | 2c 20 73 74 64 6f 75 74 |"Node: "|, stdout|
|00005d40| 29 3b 0a 20 20 20 20 69 | 66 20 28 21 67 65 74 73 |);. i|f (!gets|
|00005d50| 28 62 75 66 66 29 29 20 | 7b 0a 20 20 20 20 20 20 |(buff)) |{. |
|00005d60| 70 75 74 73 28 22 55 6e | 65 78 70 65 63 74 65 64 |puts("Un|expected|
|00005d70| 20 45 4f 46 22 29 3b 0a | 20 20 20 20 20 20 65 78 | EOF");.| ex|
|00005d80| 69 74 28 31 29 3b 0a 20 | 20 20 20 7d 0a 20 20 20 |it(1);. | }. |
|00005d90| 20 6e 6f 64 65 20 3d 20 | 63 6f 70 79 73 74 72 28 | node = |copystr(|
|00005da0| 62 75 66 66 29 3b 0a 20 | 20 7d 0a 20 20 20 20 2f |buff);. | }. /|
|00005db0| 2a 20 75 70 70 65 72 63 | 61 73 65 20 6e 6f 64 65 |* upperc|ase node|
|00005dc0| 20 6e 61 6d 65 20 2a 2f | 0a 20 20 66 6f 72 20 28 | name */|. for (|
|00005dd0| 74 31 20 3d 20 6e 6f 64 | 65 3b 20 2a 74 31 3b 20 |t1 = nod|e; *t1; |
|00005de0| 74 31 2b 2b 29 0a 20 20 | 20 20 69 66 20 28 69 73 |t1++). | if (is|
|00005df0| 6c 6f 77 65 72 28 2a 74 | 31 29 29 0a 20 20 20 20 |lower(*t|1)). |
|00005e00| 20 20 2a 74 31 20 3d 20 | 74 6f 75 70 70 65 72 28 | *t1 = |toupper(|
|00005e10| 2a 74 31 29 3b 0a 0a 20 | 20 20 20 2f 2a 20 67 65 |*t1);.. | /* ge|
|00005e20| 74 20 72 65 63 69 70 69 | 65 6e 74 73 20 69 66 20 |t recipi|ents if |
|00005e30| 6e 6f 74 20 73 70 65 63 | 69 66 69 65 64 20 2a 2f |not spec|ified */|
|00005e40| 0a 20 20 69 66 20 28 21 | 61 72 67 76 5b 6f 70 74 |. if (!|argv[opt|
|00005e50| 69 6e 64 5d 29 20 7b 0a | 20 20 20 20 66 70 75 74 |ind]) {.| fput|
|00005e60| 73 28 22 54 6f 3a 20 22 | 2c 20 73 74 64 6f 75 74 |s("To: "|, stdout|
|00005e70| 29 3b 0a 20 20 20 20 69 | 66 20 28 21 67 65 74 73 |);. i|f (!gets|
|00005e80| 28 62 75 66 66 29 29 20 | 7b 0a 20 20 20 20 20 20 |(buff)) |{. |
|00005e90| 70 75 74 73 28 22 55 6e | 65 78 70 65 63 74 65 64 |puts("Un|expected|
|00005ea0| 20 45 4f 46 22 29 3b 0a | 20 20 20 20 20 20 65 78 | EOF");.| ex|
|00005eb0| 69 74 28 31 29 3b 0a 20 | 20 20 20 7d 0a 20 20 20 |it(1);. | }. |
|00005ec0| 20 20 20 2f 2a 20 63 72 | 65 61 74 65 20 74 6f 5b | /* cr|eate to[|
|00005ed0| 5d 20 61 72 72 61 79 20 | 2a 2f 0a 20 20 20 20 74 |] array |*/. t|
|00005ee0| 6f 20 3d 20 28 63 68 61 | 72 20 2a 2a 29 6d 61 6c |o = (cha|r **)mal|
|00005ef0| 6c 6f 63 28 73 69 7a 65 | 6f 66 28 63 68 61 72 2a |loc(size|of(char*|
|00005f00| 29 29 3b 09 2f 2a 20 72 | 6f 6f 6d 20 66 6f 72 20 |));./* r|oom for |
|00005f10| 6f 6e 65 20 61 64 64 72 | 65 73 73 20 2a 2f 0a 20 |one addr|ess */. |
|00005f20| 20 20 20 74 6f 5f 6c 69 | 6e 65 20 3d 20 63 6f 70 | to_li|ne = cop|
|00005f30| 79 73 74 72 28 62 75 66 | 66 29 3b 0a 20 20 20 20 |ystr(buf|f);. |
|00005f40| 6e 75 6d 5f 61 64 64 72 | 20 3d 20 31 3b 0a 20 20 |num_addr| = 1;. |
|00005f50| 20 20 74 6f 5b 30 5d 20 | 3d 20 66 69 78 5f 61 64 | to[0] |= fix_ad|
|00005f60| 64 72 28 62 75 66 66 29 | 3b 0a 20 20 7d 20 65 6c |dr(buff)|;. } el|
|00005f70| 73 65 20 7b 0a 20 20 20 | 20 20 20 2f 2a 20 62 75 |se {. | /* bu|
|00005f80| 69 6c 64 20 74 6f 5f 6c | 69 6e 65 20 61 6e 64 20 |ild to_l|ine and |
|00005f90| 74 6f 5b 5d 20 66 72 6f | 6d 20 61 72 67 75 6d 65 |to[] fro|m argume|
|00005fa0| 6e 74 73 20 2a 2f 0a 20 | 20 20 20 67 65 74 5f 61 |nts */. | get_a|
|00005fb0| 64 64 72 65 73 73 65 73 | 28 61 72 67 76 2c 20 6f |ddresses|(argv, o|
|00005fc0| 70 74 69 6e 64 2c 20 28 | 61 72 67 63 2d 6f 70 74 |ptind, (|argc-opt|
|00005fd0| 69 6e 64 29 29 3b 0a 20 | 20 7d 0a 20 20 0a 20 20 |ind));. | }. . |
|00005fe0| 20 20 2f 2a 20 67 65 74 | 20 73 75 62 6a 65 63 74 | /* get| subject|
|00005ff0| 20 69 66 20 6e 6f 74 20 | 73 70 65 63 69 66 69 65 | if not |specifie|
|00006000| 64 20 2a 2f 0a 20 20 69 | 66 20 28 21 73 75 62 6a |d */. i|f (!subj|
|00006010| 65 63 74 20 26 26 20 74 | 74 79 66 6c 61 67 29 20 |ect && t|tyflag) |
|00006020| 7b 0a 20 20 20 20 66 70 | 75 74 73 28 22 53 75 62 |{. fp|uts("Sub|
|00006030| 6a 65 63 74 3a 20 22 2c | 20 73 74 64 6f 75 74 29 |ject: ",| stdout)|
|00006040| 3b 0a 20 20 20 20 69 66 | 20 28 21 67 65 74 73 28 |;. if| (!gets(|
|00006050| 62 75 66 66 29 29 20 7b | 0a 20 20 20 20 20 20 70 |buff)) {|. p|
|00006060| 75 74 73 28 22 55 6e 65 | 78 70 65 63 74 65 64 20 |uts("Une|xpected |
|00006070| 45 4f 46 22 29 3b 0a 20 | 20 20 20 20 20 65 78 69 |EOF");. | exi|
|00006080| 74 28 31 29 3b 0a 20 20 | 20 20 7d 0a 20 20 20 20 |t(1);. | }. |
|00006090| 73 75 62 6a 65 63 74 20 | 3d 20 63 6f 70 79 73 74 |subject |= copyst|
|000060a0| 72 28 62 75 66 66 29 3b | 0a 20 20 7d 0a 0a 20 20 |r(buff);|. }.. |
|000060b0| 20 20 2f 2a 20 66 69 67 | 75 72 65 20 6f 75 74 20 | /* fig|ure out |
|000060c0| 77 68 6f 20 74 68 69 73 | 20 69 73 20 66 72 6f 6d |who this| is from|
|000060d0| 20 69 66 20 6e 6f 74 20 | 73 70 65 63 69 66 69 65 | if not |specifie|
|000060e0| 64 20 6f 72 20 74 68 69 | 73 20 69 73 20 61 20 74 |d or thi|s is a t|
|000060f0| 74 79 20 2a 2f 0a 20 20 | 69 66 20 28 21 66 72 6f |ty */. |if (!fro|
|00006100| 6d 5f 6f 29 20 7b 0a 20 | 20 20 20 74 31 20 3d 20 |m_o) {. | t1 = |
|00006110| 28 63 68 61 72 20 2a 29 | 67 65 74 6c 6f 67 69 6e |(char *)|getlogin|
|00006120| 28 29 3b 0a 20 20 20 20 | 69 66 20 28 21 74 31 29 |();. |if (!t1)|
|00006130| 20 7b 0a 20 20 20 20 20 | 20 70 77 20 3d 20 67 65 | {. | pw = ge|
|00006140| 74 70 77 75 69 64 28 67 | 65 74 75 69 64 28 29 29 |tpwuid(g|etuid())|
|00006150| 3b 0a 20 20 20 20 20 20 | 74 31 20 3d 20 70 77 2d |;. |t1 = pw-|
|00006160| 3e 70 77 5f 6e 61 6d 65 | 3b 0a 20 20 20 20 7d 0a |>pw_name|;. }.|
|00006170| 20 20 20 20 66 72 6f 6d | 5f 6f 20 3d 20 74 31 3b | from|_o = t1;|
|00006180| 0a 20 20 7d 0a 20 20 73 | 70 72 69 6e 74 66 28 62 |. }. s|printf(b|
|00006190| 75 66 66 2c 20 22 5c 22 | 25 73 5c 22 22 2c 20 66 |uff, "\"|%s\"", f|
|000061a0| 72 6f 6d 5f 6f 29 3b 0a | 20 20 66 72 6f 6d 20 3d |rom_o);.| from =|
|000061b0| 20 63 6f 70 79 73 74 72 | 28 62 75 66 66 29 3b 0a | copystr|(buff);.|
|000061c0| 20 20 0a 20 20 69 66 20 | 28 64 65 62 75 67 29 20 | . if |(debug) |
|000061d0| 7b 0a 20 20 20 20 66 70 | 72 69 6e 74 66 28 73 74 |{. fp|rintf(st|
|000061e0| 64 65 72 72 2c 20 22 46 | 72 6f 6d 3a 20 27 25 73 |derr, "F|rom: '%s|
|000061f0| 27 5c 6e 22 2c 20 66 72 | 6f 6d 29 3b 0a 20 20 20 |'\n", fr|om);. |
|00006200| 20 66 70 72 69 6e 74 66 | 28 73 74 64 65 72 72 2c | fprintf|(stderr,|
|00006210| 20 22 54 6f 3a 20 3c 25 | 73 3e 22 2c 20 74 6f 5f | "To: <%|s>", to_|
|00006220| 6c 69 6e 65 29 3b 0a 20 | 20 7d 0a 0a 20 20 20 2f |line);. | }.. /|
|00006230| 2a 20 67 65 74 20 63 6f | 6e 6e 65 63 74 69 6f 6e |* get co|nnection|
|00006240| 2c 20 73 65 6e 64 20 6d | 61 69 6c 2c 20 63 6c 6f |, send m|ail, clo|
|00006250| 73 65 20 63 6f 6e 6e 65 | 63 74 69 6f 6e 20 2a 2f |se conne|ction */|
|00006260| 0a 23 69 66 6e 64 65 66 | 20 44 45 42 55 47 0a 20 |.#ifndef| DEBUG. |
|00006270| 20 67 65 74 5f 63 6f 6e | 6e 65 63 74 69 6f 6e 28 | get_con|nection(|
|00006280| 29 3b 0a 23 65 6e 64 69 | 66 0a 20 20 73 65 6e 64 |);.#endi|f. send|
|00006290| 5f 6d 65 73 73 61 67 65 | 28 29 3b 0a 23 69 66 6e |_message|();.#ifn|
|000062a0| 64 65 66 20 44 45 42 55 | 47 0a 20 20 64 72 6f 70 |def DEBU|G. drop|
|000062b0| 5f 63 6f 6e 6e 65 63 74 | 69 6f 6e 28 29 3b 0a 23 |_connect|ion();.#|
|000062c0| 65 6e 64 69 66 0a 0a 20 | 20 20 20 2f 2a 20 69 66 |endif.. | /* if|
|000062d0| 20 6d 61 69 6c 20 77 61 | 73 6e 27 74 20 73 65 6e | mail wa|sn't sen|
|000062e0| 74 20 74 6f 20 61 20 75 | 73 65 72 2c 20 74 68 65 |t to a u|ser, the|
|000062f0| 6e 20 65 78 69 74 20 77 | 69 74 68 20 61 70 70 72 |n exit w|ith appr|
|00006300| 6f 70 72 69 61 74 65 0a | 20 20 20 20 20 20 20 65 |opriate.| e|
|00006310| 72 72 6f 72 20 63 6f 64 | 65 2c 20 73 6f 20 73 65 |rror cod|e, so se|
|00006320| 6e 64 6d 61 69 6c 20 63 | 61 6e 20 74 61 6b 65 20 |ndmail c|an take |
|00006330| 74 68 65 20 61 70 70 72 | 6f 70 72 69 61 74 65 20 |the appr|opriate |
|00006340| 61 63 74 69 6f 6e 20 2a | 2f 0a 20 20 69 66 20 28 |action *|/. if (|
|00006350| 62 61 64 75 73 65 72 5f | 66 6c 61 67 29 0a 20 20 |baduser_|flag). |
|00006360| 20 20 65 78 69 74 28 45 | 58 5f 4e 4f 55 53 45 52 | exit(E|X_NOUSER|
|00006370| 29 3b 0a 20 20 65 6c 73 | 65 0a 20 20 20 20 65 78 |);. els|e. ex|
|00006380| 69 74 28 45 58 5f 4f 4b | 29 3b 0a 7d 0a 53 48 41 |it(EX_OK|);.}.SHA|
|00006390| 52 5f 45 4f 46 0a 69 66 | 20 74 65 73 74 20 31 31 |R_EOF.if| test 11|
|000063a0| 37 30 30 20 2d 6e 65 20 | 22 60 77 63 20 2d 63 20 |700 -ne |"`wc -c |
|000063b0| 3c 20 27 64 6e 61 6d 61 | 69 6c 2e 63 27 60 22 0a |< 'dnama|il.c'`".|
|000063c0| 74 68 65 6e 0a 09 65 63 | 68 6f 20 73 68 61 72 3a |then..ec|ho shar:|
|000063d0| 20 65 72 72 6f 72 20 74 | 72 61 6e 73 6d 69 74 74 | error t|ransmitt|
|000063e0| 69 6e 67 20 22 27 64 6e | 61 6d 61 69 6c 2e 63 27 |ing "'dn|amail.c'|
|000063f0| 22 20 27 28 73 68 6f 75 | 6c 64 20 68 61 76 65 20 |" '(shou|ld have |
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.