diff options
author | bwarsaw <> | 2005-05-13 04:21:54 +0000 |
---|---|---|
committer | bwarsaw <> | 2005-05-13 04:21:54 +0000 |
commit | bce07e58accbc82371ad56ca0b143b916bb9bfde (patch) | |
tree | 226594544b9751a146bd1993792a73713b288939 | |
parent | fd88d0606759107336d1a6c6a060771763fdc2bb (diff) | |
download | mailman2-bce07e58accbc82371ad56ca0b143b916bb9bfde.tar.gz mailman2-bce07e58accbc82371ad56ca0b143b916bb9bfde.tar.xz mailman2-bce07e58accbc82371ad56ca0b143b916bb9bfde.zip |
Provide a warning about the private archive directory permissions on shared
multiuser systems, and provide some information on what can be done about it.
Update the install document.
62 files changed, 1134 insertions, 1382 deletions
diff --git a/admin/www/mailman-install.pdf b/admin/www/mailman-install.pdf Binary files differindex c711c5a5..75034fba 100644 --- a/admin/www/mailman-install.pdf +++ b/admin/www/mailman-install.pdf diff --git a/admin/www/mailman-install.ps b/admin/www/mailman-install.ps index c2675607..c6e08b4b 100644 --- a/admin/www/mailman-install.ps +++ b/admin/www/mailman-install.ps @@ -1,18 +1,17 @@ %!PS-Adobe-2.0 -%%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software +%%Creator: dvips(k) 5.92b Copyright 2002 Radical Eye Software %%Title: mailman-install.dvi %%Pages: 27 %%PageOrder: Ascend -%%BoundingBox: 0 0 595 842 +%%BoundingBox: 0 0 596 842 %%DocumentFonts: Helvetica Helvetica-Oblique Times-Roman Times-Bold %%+ Courier Times-Italic Times-BoldItalic Helvetica-Bold CMSY10 -%%DocumentPaperSizes: a4 %%EndComments %DVIPSWebPage: (www.radicaleye.com) %DVIPSCommandLine: dvips -N0 -o mailman-install.ps mailman-install -%DVIPSParameters: dpi=600 -%DVIPSSource: TeX output 2005.04.16:1052 -%%BeginProcSet: tex.pro 0 0 +%DVIPSParameters: dpi=600, compressed +%DVIPSSource: TeX output 2005.05.12:2357 +%%BeginProcSet: texc.pro %! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72 @@ -31,10 +30,22 @@ df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get }B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub} B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr -1 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S -/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cy -setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemask -restore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn +1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3 +1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx +0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx +sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{ +rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp +gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B +/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{ +/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{ +A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy +get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse} +ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp +fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17 +{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add +chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{ +1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop} +forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put }if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{ bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A @@ -58,25 +69,17 @@ p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end %%EndProcSet -%%BeginProcSet: 8r.enc 0 0 -% File 8r.enc TeX Base 1 Encoding Revision 2.0 2002-10-30 +%%BeginProcSet: 8r.enc +% File 8r.enc as of 2002-03-12 for PSNFSS 9 % -% @@psencodingfile@{ -% author = "S. Rahtz, P. MacKay, Alan Jeffrey, B. Horn, K. Berry, -% W. Schmidt, P. Lehman", -% version = "2.0", -% date = "30 October 2002", -% filename = "8r.enc", -% email = "tex-fonts@@tug.org", -% docstring = "This is the encoding vector for Type1 and TrueType -% fonts to be used with TeX. This file is part of the -% PSNFSS bundle, version 9" -% @} +% This is the encoding vector for Type1 and TrueType fonts to be used +% with TeX. This file is part of the PSNFSS bundle, version 9 % -% The idea is to have all the characters normally included in Type 1 fonts +% Authors: S. Rahtz, P. MacKay, Alan Jeffrey, B. Horn, K. Berry, W. Schmidt +% +% Idea is to have all the characters normally included in Type 1 fonts % available for typesetting. This is effectively the characters in Adobe -% Standard encoding, ISO Latin 1, Windows ANSI including the euro symbol, -% MacRoman, and some extra characters from Lucida. +% Standard Encoding + ISO Latin 1 + extra characters from Lucida + Euro. % % Character code assignments were made as follows: % @@ -94,95 +97,77 @@ rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end % (3) Y&Y Lucida Bright includes some extra text characters; in the % hopes that other PostScript fonts, perhaps created for public % consumption, will include them, they are included starting at 0x12. -% These are /dotlessj /ff /ffi /ffl. % -% (4) hyphen appears twice for compatibility with both ASCII and Windows. -% -% (5) /Euro was assigned to 128, as in Windows ANSI -% -% (6) Missing characters from MacRoman encoding incorporated as follows: -% -% PostScript MacRoman TeXBase1 -% -------------- -------------- -------------- -% /notequal 173 0x16 -% /infinity 176 0x17 -% /lessequal 178 0x18 -% /greaterequal 179 0x19 -% /partialdiff 182 0x1A -% /summation 183 0x1B -% /product 184 0x1C -% /pi 185 0x1D -% /integral 186 0x81 -% /Omega 189 0x8D -% /radical 195 0x8E -% /approxequal 197 0x8F -% /Delta 198 0x9D -% /lozenge 215 0x9E +% (4) Remaining positions left undefined are for use in (hopefully) +% upward-compatible revisions, if someday more characters are generally +% available. +% +% (5) hyphen appears twice for compatibility with both ASCII and Windows. % +% (6) /Euro is assigned to 128, as in Windows ANSI +% /TeXBase1Encoding [ -% 0x00 - /.notdef /dotaccent /fi /fl - /fraction /hungarumlaut /Lslash /lslash - /ogonek /ring /.notdef /breve - /minus /.notdef /Zcaron /zcaron +% 0x00 (encoded characters from Adobe Standard not in Windows 3.1) + /.notdef /dotaccent /fi /fl + /fraction /hungarumlaut /Lslash /lslash + /ogonek /ring /.notdef + /breve /minus /.notdef +% These are the only two remaining unencoded characters, so may as +% well include them. + /Zcaron /zcaron % 0x10 - /caron /dotlessi /dotlessj /ff - /ffi /ffl /notequal /infinity - /lessequal /greaterequal /partialdiff /summation - /product /pi /grave /quotesingle -% 0x20 + /caron /dotlessi +% (unusual TeX characters available in, e.g., Lucida Bright) + /dotlessj /ff /ffi /ffl + /.notdef /.notdef /.notdef /.notdef + /.notdef /.notdef /.notdef /.notdef + % very contentious; it's so painful not having quoteleft and quoteright + % at 96 and 145 that we move the things normally found there down to here. + /grave /quotesingle +% 0x20 (ASCII begins) /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright - /parenleft /parenright /asterisk /plus - /comma /hyphen /period /slash + /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash % 0x30 - /zero /one /two /three - /four /five /six /seven - /eight /nine /colon /semicolon - /less /equal /greater /question + /zero /one /two /three /four /five /six /seven + /eight /nine /colon /semicolon /less /equal /greater /question % 0x40 - /at /A /B /C - /D /E /F /G - /H /I /J /K - /L /M /N /O + /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O % 0x50 - /P /Q /R /S - /T /U /V /W - /X /Y /Z /bracketleft - /backslash /bracketright /asciicircum /underscore + /P /Q /R /S /T /U /V /W + /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore % 0x60 - /quoteleft /a /b /c - /d /e /f /g - /h /i /j /k - /l /m /n /o + /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o % 0x70 - /p /q /r /s - /t /u /v /w - /x /y /z /braceleft - /bar /braceright /asciitilde /.notdef + /p /q /r /s /t /u /v /w + /x /y /z /braceleft /bar /braceright /asciitilde + /.notdef % rubout; ASCII ends % 0x80 - /Euro /integral /quotesinglbase /florin + /Euro /.notdef /quotesinglbase /florin /quotedblbase /ellipsis /dagger /daggerdbl /circumflex /perthousand /Scaron /guilsinglleft - /OE /Omega /radical /approxequal + /OE /.notdef /.notdef /.notdef % 0x90 /.notdef /.notdef /.notdef /quotedblleft /quotedblright /bullet /endash /emdash /tilde /trademark /scaron /guilsinglright - /oe /Delta /lozenge /Ydieresis + /oe /.notdef /.notdef /Ydieresis % 0xA0 - /.notdef /exclamdown /cent /sterling + /.notdef % nobreakspace + /exclamdown /cent /sterling /currency /yen /brokenbar /section /dieresis /copyright /ordfeminine /guillemotleft - /logicalnot /hyphen /registered /macron + /logicalnot + /hyphen % Y&Y (also at 45); Windows' softhyphen + /registered + /macron % 0xD0 /degree /plusminus /twosuperior /threesuperior /acute /mu /paragraph /periodcentered /cedilla /onesuperior /ordmasculine /guillemotright /onequarter /onehalf /threequarters /questiondown % 0xC0 - /Agrave /Aacute /Acircumflex /Atilde - /Adieresis /Aring /AE /Ccedilla + /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla /Egrave /Eacute /Ecircumflex /Edieresis /Igrave /Iacute /Icircumflex /Idieresis % 0xD0 @@ -202,9 +187,55 @@ rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end /udieresis /yacute /thorn /ydieresis ] def +%%EndProcSet +%%BeginProcSet: bbad153f.enc +% Thomas Esser, Dec 2002. public domain +% +% Encoding for: +% cmsy10 cmsy5 cmsy6 cmsy7 cmsy8 cmsy9 +% +/TeXbbad153fEncoding [ +/minus /periodcentered /multiply /asteriskmath /divide /diamondmath +/plusminus /minusplus /circleplus /circleminus /circlemultiply +/circledivide /circledot /circlecopyrt /openbullet /bullet +/equivasymptotic /equivalence /reflexsubset /reflexsuperset /lessequal +/greaterequal /precedesequal /followsequal /similar /approxequal +/propersubset /propersuperset /lessmuch /greatermuch /precedes /follows +/arrowleft /arrowright /arrowup /arrowdown /arrowboth /arrownortheast +/arrowsoutheast /similarequal /arrowdblleft /arrowdblright /arrowdblup +/arrowdbldown /arrowdblboth /arrownorthwest /arrowsouthwest /proportional +/prime /infinity /element /owner /triangle /triangleinv /negationslash +/mapsto /universal /existential /logicalnot /emptyset /Rfractur /Ifractur +/latticetop /perpendicular /aleph /A /B /C /D /E /F /G /H /I /J /K +/L /M /N /O /P /Q /R /S /T /U /V /W /X /Y /Z /union /intersection +/unionmulti /logicaland /logicalor /turnstileleft /turnstileright +/floorleft /floorright /ceilingleft /ceilingright /braceleft /braceright +/angbracketleft /angbracketright /bar /bardbl /arrowbothv /arrowdblbothv +/backslash /wreathproduct /radical /coproduct /nabla /integral +/unionsq /intersectionsq /subsetsqequal /supersetsqequal /section +/dagger /daggerdbl /paragraph /club /diamond /heart /spade /arrowleft +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/minus /periodcentered /multiply /asteriskmath /divide /diamondmath +/plusminus /minusplus /circleplus /circleminus /.notdef /.notdef +/circlemultiply /circledivide /circledot /circlecopyrt /openbullet +/bullet /equivasymptotic /equivalence /reflexsubset /reflexsuperset +/lessequal /greaterequal /precedesequal /followsequal /similar +/approxequal /propersubset /propersuperset /lessmuch /greatermuch +/precedes /follows /arrowleft /spade /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +/.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef +] def %%EndProcSet -%%BeginProcSet: texps.pro 0 0 +%%BeginProcSet: texps.pro %! TeXDict begin/rf{findfont dup length 1 add dict begin{1 index/FID ne 2 index/UniqueID ne and{def}{pop pop}ifelse}forall[1 index 0 6 -1 roll @@ -241,9 +272,10 @@ end readonly def /FontMatrix [0.001 0 0 0.001 0 0] readonly def /Encoding 256 array 0 1 255 {1 index exch /.notdef put} for -dup 15 /bullet put +dup 0 /.notdef put readonly def /FontBBox{-29 -960 1116 775}readonly def +/UniqueID 5000820 def currentdict end currentfile eexec D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964 @@ -275,84 +307,87 @@ C871399127FF5D07A868885B5FF7CDEB50B8323B2533DEF8DC973B1AE84FA0A2 0000000000000000000000000000000000000000000000000000000000000000 cleartomark %%EndFont -TeXDict begin 39139632 55387786 1000 600 600 (mailman-install.dvi) +TeXDict begin 39158280 55380996 1000 600 600 (mailman-install.dvi) @start /Fa 136[48 2[22 26 3[33 37 1[18 2[18 37 33 3[29 -37 50[18 44[37 2[{TeXBase1Encoding ReEncodeFont}13 66.4176 -/Times-Bold rf /Fb 158[25 97[{TeXBase1Encoding ReEncodeFont}1 -49.8132 /Times-Italic rf /Fc 158[29 97[{TeXBase1Encoding ReEncodeFont}1 -58.1154 /Times-Italic rf /Fd 240[42 15[{}1 83.022 /CMSY10 -rf /Fe 134[42 4[25 3[46 46 46 5[46 6[42 49[21 47[{ -TeXBase1Encoding ReEncodeFont}8 74.7198 /Helvetica-Bold +37 50[18 44[37 2[{ TeXBase1Encoding ReEncodeFont }13 +66.4176 /Times-Bold rf /Fb 158[25 97[{ TeXBase1Encoding ReEncodeFont }1 +49.8132 /Times-Italic rf /Fc 158[29 97[{ TeXBase1Encoding ReEncodeFont } +1 58.1154 /Times-Italic rf /Fd 240[42 15[{ + TeXbbad153fEncoding ReEncodeFont }1 83.022 /CMSY10 rf +/Fe 134[42 4[25 3[46 46 46 5[46 6[42 49[21 47[{ + TeXBase1Encoding ReEncodeFont }8 74.7198 /Helvetica-Bold rf /Ff 135[42 2[46 23 32 32 1[42 42 46 65 3[23 46 42 -1[37 42 2[42 51[28 45[{TeXBase1Encoding ReEncodeFont}16 +1[37 42 2[42 51[28 45[{ TeXBase1Encoding ReEncodeFont }16 83.022 /Times-BoldItalic rf /Fg 138[55 2[44 2[50 55 6[50 -1[44 1[44 96[55 2[{TeXBase1Encoding ReEncodeFont}8 99.6264 -/Times-Bold rf /Fh 144[32 32 48 13 2[13 32 2[32 3[32 -49[16 47[{TeXBase1Encoding ReEncodeFont}9 58.1154 /Helvetica -rf /Fi 201[25 25 25 25 25 25 49[{TeXBase1Encoding ReEncodeFont}6 -49.8132 /Times-Roman rf /Fj 134[37 37 55 37 42 23 32 -32 42 42 42 42 60 23 37 1[23 42 42 23 37 42 37 42 42 -7[46 51 69 51 60 46 42 51 1[51 60 55 69 46 55 1[28 60 -60 51 51 60 55 51 51 6[28 7[42 42 3[28 5[28 36[42 2[{ -TeXBase1Encoding ReEncodeFont}53 83.022 /Times-Italic -rf /Fk 219[42 36[{.167 SlantFont TeXBase1Encoding ReEncodeFont}1 -83.022 /Times-Roman rf /Fl 119[45 10[45 45 45 45 45 45 +1[44 1[44 96[55 2[{ TeXBase1Encoding ReEncodeFont }8 +99.6264 /Times-Bold rf /Fh 144[32 32 48 13 2[13 32 2[32 +3[32 49[16 47[{ TeXBase1Encoding ReEncodeFont }9 58.1154 +/Helvetica rf /Fi 201[25 25 25 25 25 25 49[{ + TeXBase1Encoding ReEncodeFont }6 49.8132 /Times-Roman +rf /Fj 134[37 37 55 37 42 23 32 32 42 42 42 42 60 23 +37 1[23 42 42 23 37 42 37 42 42 7[46 51 69 51 60 46 42 +51 1[51 60 55 69 46 55 1[28 60 60 51 51 60 55 51 51 6[28 +7[42 42 3[28 5[28 36[42 2[{ TeXBase1Encoding ReEncodeFont }53 +83.022 /Times-Italic rf /Fk 219[42 36[{ + .167 SlantFont TeXBase1Encoding ReEncodeFont }1 83.022 +/Times-Roman rf /Fl 119[45 10[45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 -45 45 45 45 45 1[45 1[45 45 45 45 45 45 45 45 45 45 45 -45 1[45 45 45 45 45 45 1[45 45 45 45 45 45 45 1[45 45 +45 45 45 1[45 1[45 45 45 45 45 45 45 45 45 45 45 45 1[45 +45 45 45 45 45 1[45 45 45 45 45 45 45 1[45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 45 -45 45 45 45 45 45 45 1[45 45 45 45 45 33[{TeXBase1Encoding ReEncodeFont} -88 74.7198 /Courier rf /Fm 133[50 50 50 50 50 50 50 50 -50 50 50 50 50 50 50 50 1[50 50 50 50 50 50 50 50 50 -12[50 50 50 1[50 50 1[50 50 2[50 2[50 50 50 50 1[50 50 +45 45 45 45 1[45 45 45 45 45 33[{ TeXBase1Encoding ReEncodeFont }88 +74.7198 /Courier rf /Fm 133[50 50 50 50 50 50 50 50 50 +50 50 50 50 50 50 50 1[50 50 50 50 50 50 50 50 50 1[50 +10[50 50 50 1[50 50 1[50 50 2[50 2[50 50 50 50 1[50 50 5[50 4[50 1[50 50 50 1[50 50 50 1[50 50 50 50 50 3[50 -35[{TeXBase1Encoding ReEncodeFont}53 83.022 /Courier -rf /Fn 201[29 29 29 29 29 29 49[{TeXBase1Encoding ReEncodeFont}6 +35[{ TeXBase1Encoding ReEncodeFont }54 83.022 /Courier +rf /Fn 201[29 29 29 29 29 29 49[{ TeXBase1Encoding ReEncodeFont }6 58.1154 /Times-Roman rf /Fo 134[50 50 1[50 55 28 50 33 1[55 55 55 83 22 50 1[22 55 55 1[55 55 50 1[55 8[66 2[72 1[66 72 78 66 78 72 83 55 4[78 1[66 72 72 66 66 10[55 -55 55 55 55 55 1[28 28 43[50 2[{TeXBase1Encoding ReEncodeFont}45 +55 55 55 55 55 1[28 28 43[50 2[{ TeXBase1Encoding ReEncodeFont }45 99.6264 /Helvetica rf /Fp 107[28 28 25[42 42 60 42 46 23 42 28 1[46 46 46 69 18 42 1[18 46 46 23 46 46 42 46 46 8[55 1[55 60 51 55 60 65 55 65 1[69 46 2[23 60 2[55 60 60 55 55 7[46 46 46 46 46 46 46 46 46 46 23 23 28 -42[42 2[{TeXBase1Encoding ReEncodeFont}57 83.022 /Helvetica +42[42 2[{ TeXBase1Encoding ReEncodeFont }57 83.022 /Helvetica rf /Fq 134[33 33 48 33 33 18 26 22 1[33 33 33 52 18 33 1[18 33 33 22 29 33 29 33 29 22 6[48 48 3[41 37 4[48 59 3[22 3[41 48 44 44 12[33 2[33 33 2[17 22 17 4[22 5[22 -33[{TeXBase1Encoding ReEncodeFont}43 66.4176 /Times-Roman +33[{ TeXBase1Encoding ReEncodeFont }43 66.4176 /Times-Roman rf /Fr 103[28 30[42 42 60 42 46 28 32 37 46 46 42 46 69 23 46 1[23 46 42 28 37 46 37 46 42 28 8[83 2[55 46 60 1[51 1[60 78 3[32 4[60 60 55 4[47 2[28 42 42 42 42 42 42 42 42 42 42 23 21 28 1[47 3[28 36[46 2[{ -TeXBase1Encoding ReEncodeFont}55 83.022 /Times-Bold rf -/Fs 167[43 9[43 4[20 73[{TeXBase1Encoding ReEncodeFont}3 + TeXBase1Encoding ReEncodeFont }55 83.022 /Times-Bold +rf /Fs 167[43 9[43 4[20 73[{ TeXBase1Encoding ReEncodeFont }3 59.7758 /Times-Roman rf /Ft 134[37 37 54 37 37 21 29 25 2[37 37 58 21 2[21 37 37 25 33 37 33 37 33 8[54 2[54 46 42 2[42 54 54 66 46 2[25 1[54 23[21 19 25 19 44[{ -TeXBase1Encoding ReEncodeFont}36 74.7198 /Times-Roman -rf /Fu 139[25 29 33 14[33 42 37 31[54 65[{TeXBase1Encoding ReEncodeFont} -7 74.7198 /Times-Bold rf /Fv 103[25 29[37 37 37 54 37 -42 21 37 25 42 42 42 42 62 17 37 1[17 42 42 21 42 42 -37 42 42 12[46 50 54 1[50 58 1[62 42 2[21 2[46 50 54 -2[50 76 42 1[44 2[21 42 42 42 42 42 42 42 42 42 42 21 -21 25 2[29 25 25 1[50 35[37 2[{TeXBase1Encoding ReEncodeFont}60 -74.7198 /Helvetica rf /Fw 64[37 29[28 10[42 1[37 37 24[37 -42 42 60 42 42 23 32 28 42 42 42 42 65 23 42 23 23 42 -42 28 37 42 37 42 37 28 6[60 60 78 60 60 51 46 55 60 -46 60 60 74 51 60 32 28 60 60 46 51 60 55 55 60 1[37 -1[47 1[23 23 42 42 42 42 42 42 42 42 42 42 23 21 28 21 -2[28 28 28 1[69 3[28 29[46 46 2[{TeXBase1Encoding ReEncodeFont}82 -83.022 /Times-Roman rf /Fx 134[60 1[86 60 66 33 60 40 -66 66 66 66 100 27 60 1[27 66 66 33 66 66 60 66 66 9[113 -2[73 80 86 1[80 2[100 3[33 5[86 80 8[66 66 66 66 66 66 -66 66 66 66 2[40 42[60 2[{TeXBase1Encoding ReEncodeFont}44 + TeXBase1Encoding ReEncodeFont }36 74.7198 /Times-Roman +rf /Fu 139[25 29 33 14[33 42 37 31[54 65[{ + TeXBase1Encoding ReEncodeFont }7 74.7198 /Times-Bold +rf /Fv 103[25 29[37 37 37 54 37 42 21 37 25 42 42 42 +42 62 17 37 1[17 42 42 21 42 42 37 42 42 12[46 50 54 +1[50 58 1[62 42 2[21 2[46 50 54 2[50 76 42 1[44 2[21 +42 42 42 42 42 42 42 42 42 42 21 21 25 2[29 25 25 1[50 +35[37 2[{ TeXBase1Encoding ReEncodeFont }60 74.7198 /Helvetica +rf /Fw 64[37 29[28 10[42 1[37 37 24[37 42 42 60 42 42 +23 32 28 42 42 42 42 65 23 42 23 23 42 42 28 37 42 37 +42 37 28 6[60 60 78 60 60 51 46 55 60 46 60 60 74 51 +60 32 28 60 60 46 51 60 55 55 60 1[37 1[47 1[23 23 42 +42 42 42 42 42 42 42 42 42 23 21 28 21 2[28 28 28 1[69 +3[28 29[46 46 2[{ TeXBase1Encoding ReEncodeFont }82 83.022 +/Times-Roman rf /Fx 134[60 1[86 60 66 33 60 40 66 66 +66 66 100 27 60 1[27 66 66 33 66 66 60 66 66 9[113 2[73 +80 86 1[80 2[100 3[33 5[86 80 8[66 66 66 66 66 66 66 +66 66 66 2[40 42[60 2[{ TeXBase1Encoding ReEncodeFont }44 119.552 /Helvetica rf /Fy 140[50 6[22 6[55 3[55 14[72 -31[55 55 2[28 46[{TeXBase1Encoding ReEncodeFont}8 99.6264 +31[55 55 2[28 46[{ TeXBase1Encoding ReEncodeFont }8 99.6264 /Helvetica-Oblique rf /Fz 138[115 57 103 3[115 115 172 46 2[46 7[115 11[149 6[149 172 3[57 1[161 25[69 45[{ -TeXBase1Encoding ReEncodeFont}15 206.559 /Helvetica rf -end + TeXBase1Encoding ReEncodeFont }15 206.559 /Helvetica +rf end %%EndProlog %%BeginSetup %%Feature: *Resolution 600dpi @@ -363,8 +398,8 @@ TeXDict begin %%Page: 1 1 TeXDict begin 1 0 bop 0 83 3901 9 v 700 357 a Fz(GNU)57 b(Mailman)g(-)g(Installation)h(Man)n(ual)3368 504 y Fy(Release)30 -b(2.1)3153 859 y Fx(Barr)t(y)i(W)-5 b(arsa)n(w)3413 1213 -y Fw(April)20 b(16,)g(2005)3265 1360 y Fv(barr)r(y\(at\)p)n(ython.org) +b(2.1)3153 859 y Fx(Barr)t(y)i(W)-5 b(arsa)n(w)3436 1213 +y Fw(May)20 b(12,)g(2005)3265 1360 y Fv(barr)r(y\(at\)p)n(ython.org) 1811 1581 y Fu(Abstract)208 1732 y Ft(This)30 b(document)j(describes)f (ho)n(w)g(to)f(install)f(GNU)h(Mailman)h(on)f(a)g(POSIX-based)g(system) h(such)g(as)h(U)t Fs(N)t(I)t(X)r Ft(,)f(MacOSX,)f(or)208 @@ -393,8 +428,8 @@ b(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)143 b(5)0 3419 y Fr(4)83 b(Check)20 b(y)n(our)g(installation)2904 b(5)0 3601 y(5)83 b(Set)20 b(up)h(y)n(our)f(web)g(ser)o(v)o(er)2921 -b(5)0 3784 y(6)83 b(Set)20 b(up)h(y)n(our)f(mail)g(ser)o(v)o(er)2907 -b(6)125 3884 y Fw(6.1)85 b(Using)21 b(the)f(Post\002x)g(mail)h(serv)o +b(6)0 3784 y(6)83 b(Set)20 b(up)h(y)n(our)f(mail)g(ser)o(v)o(er)2907 +b(7)125 3884 y Fw(6.1)85 b(Using)21 b(the)f(Post\002x)g(mail)h(serv)o (er)48 b(.)42 b(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)g(.)143 b(7)315 3983 y(Inte)o(grating)18 @@ -404,7 +439,7 @@ f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)143 b(7)315 4083 y(V)-5 b(irtual)20 b(domains)43 b(.)f(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g -(.)g(.)143 b(8)315 4182 y(An)21 b(alternati)n(v)o(e)e(approach)29 +(.)g(.)143 b(9)315 4182 y(An)21 b(alternati)n(v)o(e)e(approach)29 b(.)41 b(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(10)125 4282 y(6.2)85 @@ -441,7 +476,7 @@ h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g (.)g(.)102 b(12)315 5179 y(Recei)n(v)o(er)20 b(V)-9 b(eri\002cation)62 b(.)42 b(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g -(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(12)315 5278 +(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(13)315 5278 y(SMTP)21 b(Callback)43 b(.)f(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 @@ -457,7 +492,7 @@ f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g 183 y(List)21 b(V)-9 b(eri\002cation)38 b(.)k(.)f(.)g(.)h(.)f(.)g(.)g (.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h -(.)f(.)g(.)g(.)102 b(14)315 282 y(Document)19 b(History)k(.)41 +(.)f(.)g(.)g(.)102 b(15)315 282 y(Document)19 b(History)k(.)41 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h (.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.) g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(15)125 382 @@ -467,17 +502,17 @@ g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)g(.)102 b(15)315 482 y(Sendmail)20 b(\223smrsh\224)g (compatibility)65 b(.)41 b(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g (.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.) -f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(15)315 581 y(Inte)o(grating)18 +f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(16)315 581 y(Inte)o(grating)18 b(Sendmail)i(and)f(Mailman)40 b(.)h(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f (.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(16)315 681 y(Performance)18 b(notes)81 b(.)41 b(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) -g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(16)125 +g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(17)125 780 y(6.4)85 b(Using)21 b(the)f(Qmail)g(mail)g(serv)o(er)72 b(.)42 b(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.) f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)h(.)f(.)g(.)g -(.)h(.)f(.)g(.)g(.)102 b(16)315 880 y(Information)18 +(.)h(.)f(.)g(.)g(.)102 b(17)315 880 y(Information)18 b(on)i(VERP)30 b(.)42 b(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h (.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.) g(.)h(.)f(.)g(.)h(.)f(.)g(.)g(.)h(.)f(.)g(.)g(.)102 b(19)315 @@ -651,10 +686,10 @@ Fw(is)h(`)p Fv(/usr/local/mailman)p Fw('.)f(This)h(directory)d(must)i b(GNU)h(con\002gure)f(option)g(which)h(lets)h(you)e(specify)h(a)h(dif)n (ferent)d(installation)i(directory)f(for)g(archi-)208 2880 y(tecture)d(dependent)f(binaries.)0 3046 y Fr(--with-v)o(ar)m(-pr) -o(e\002x=)p Ff(dir)38 b Fw(Store)25 b(mutable)f(data)h(under)e -Fj(dir)k Fw(instead)e(of)g(under)e(the)i Fk($)p Fj(pr)m(e\002x)f -Fw(or)h Fk($)p Fj(e)n(xec)p 3009 3046 46 4 v 50 w(pr)m(e\002x)p -Fw(.)38 b(Examples)24 b(of)h(such)208 3145 y(data)20 +o(e\002x=)p Ff(dir)38 b Fw(Store)26 b(mutable)f(data)h(under)f +Fj(dir)k Fw(instead)d(of)g(under)e(the)j Fk($)p Fj(pr)m(e\002x)e +Fw(or)h Fk($)p Fj(e)n(xec)p 3023 3046 25 4 v 29 w(pr)m(e\002x)p +Fw(.)43 b(Examples)25 b(of)h(such)208 3145 y(data)20 b(include)f(the)h(list)h(archi)n(v)o(es)e(and)h(list)h(settings)g (database.)0 3311 y Fr(--with-python=`)p Fe(/path/to/p)o(ython)o Fr(')36 b Fw(Specify)29 b(an)g(alternati)n(v)o(e)g(Python)g @@ -724,13 +759,13 @@ Fj(e)n(xtension)d Fw(must)g(include)f(the)h(leading)f(dot.)0 b(the)h(fully)f(quali\002ed)g(host)g(name)g(part)h(for)f(outgoing)e (email.)47 b(After)28 b(the)f(installation)h(is)208 946 y(complete,)18 b(this)j(v)n(alue)f(can)g(be)g(o)o(v)o(erriden)d(in)k(`) -p Fk($)p Fj(pr)m(e\002x)p Fp(/Mailman/mm)p 2308 946 46 -4 v 51 w(cfg.p)n(y)p Fw('.)0 1112 y Fr(--with-urlhost=)p +p Fk($)p Fj(pr)m(e\002x)p Fp(/Mailman/mm)p 2308 946 25 +4 v 30 w(cfg.p)n(y)p Fw('.)0 1112 y Fr(--with-urlhost=)p Ff(hostname)39 b Fw(Specify)25 b(the)g(fully)f(quali\002ed)h(host)g (name)f(part)h(of)g(urls.)39 b(After)25 b(the)g(installation)g(is)h (complete,)f(this)208 1212 y(v)n(alue)19 b(can)h(be)g(o)o(v)o(erriden)e (in)i(`)p Fk($)p Fj(pr)m(e\002x)p Fp(/Mailman/mm)p 1821 -1212 V 51 w(cfg.p)n(y)p Fw('.)0 1378 y Fr(--with-gcc=no)40 +1212 V 30 w(cfg.p)n(y)p Fw('.)0 1378 y Fr(--with-gcc=no)40 b Fw(Don')o(t)18 b(use)j(gcc,)f(e)n(v)o(en)f(if)h(it)h(is)g(found.)j (In)19 b(this)i(case,)g Fr(cc)f Fw(must)g(be)g(found)f(on)h(your)f Fk($)p Fj(P)-7 b(A)m(TH)t Fw(.)0 1663 y Fo(3.2)100 b(Mak)n(e)28 @@ -741,915 +776,928 @@ Fr(mak)o(e)p Fw(,)g(then)g Fr(mak)o(e)h(install)f Fw(to)h(b)n(uild)e b(y)n(our)f(installation)0 2426 y Fw(After)e(you')l(v)o(e)d(run)i Fr(mak)o(e)i(install)p Fw(,)h(you)d(should)g(check)g(that)h(your)f (installation)g(has)i(all)f(the)g(correct)f(permissions)g(and)g(group)0 -2526 y(o)n(wnerships)23 b(by)h(running)e(the)i Fr(check)p -1126 2526 V 51 w(perms)h Fw(script.)37 b(First)25 b(change)e(to)h(the)g -(installation)g(\(i.e.)37 b Fk($)p Fj(pr)m(e\002x)p Fw(\))23 -b(directory)-5 b(,)23 b(then)h(run)g(the)0 2625 y Fr(bin/check)p -346 2625 V 51 w(perms)j Fw(program.)41 b(Don')o(t)25 -b(try)h(to)h(run)e(bin/check)p 1883 2625 V 49 w(perms)h(from)f(the)h -(source)g(directory;)h(it)g(will)g(only)f(run)f(from)h(the)0 +2526 y(o)n(wnerships)24 b(by)h(running)e(the)i Fr(check)p +1130 2526 V 30 w(perms)h Fw(script.)40 b(First)26 b(change)e(to)i(the)f +(installation)g(\(i.e.)40 b Fk($)p Fj(pr)m(e\002x)p Fw(\))24 +b(directory)-5 b(,)24 b(then)h(run)g(the)0 2625 y Fr(bin/check)p +346 2625 V 30 w(perms)30 b Fw(program.)47 b(Don')o(t)28 +b(try)g(to)h(run)f(bin/check)p 1881 2625 V 27 w(perms)g(from)g(the)g +(source)g(directory;)j(it)e(will)h(only)d(run)h(from)g(the)0 2725 y(installation)20 b(directory)-5 b(.)0 2872 y(If)20 b(this)h(reports)e(no)h(problems,)f(then)h(it')-5 b(s)21 b(v)o(ery)f(lik)o(ely)g(\241wink\277)f(that)i(your)e(installation)h(is) h(set)g(up)f(correctly)-5 b(.)24 b(If)c(it)h(reports)e(problems,)0 -2972 y(then)i(you)g(can)g(either)g(\002x)h(them)f(manually)-5 -b(,)20 b(re-run)g(the)i(installation,)f(or)h(use)f Fr(bin/check)p -2636 2972 V 51 w(perms)i Fw(to)f(\002x)f(the)h(problems)e(\(probably)0 -3071 y(the)g(easiest)h(solution\):)125 3301 y Fd(\017)41 +2972 y(then)j(you)g(can)h(either)f(\002x)h(them)g(manually)-5 +b(,)21 b(re-run)g(the)i(installation,)g(or)f(use)h Fr(bin/check)p +2651 2972 V 30 w(perms)h Fw(to)f(\002x)g(the)g(problems)e(\(probably)0 +3071 y(the)f(easiest)h(solution\):)125 3301 y Fd(\017)41 b Fw(Y)-9 b(ou)19 b(need)h(to)g(become)f(the)h(user)g(that)h(did)e(the) i(installation,)e(and)h(that)g(o)n(wns)g(all)h(the)f(\002les)h(in)f Fk($)p Fj(pr)m(e\002x)p Fw(,)g(or)g(root.)125 3467 y -Fd(\017)41 b Fw(Run)20 b Fr(bin/check)p 713 3467 V 51 +Fd(\017)41 b Fw(Run)20 b Fr(bin/check)p 713 3467 V 30 w(perms)h(-f)125 3633 y Fd(\017)41 b Fw(Repeat)20 b(pre)n(vious)e(step) -j(until)f(no)g(more)f(errors)g(are)i(reported!)0 3961 -y Fx(5)120 b(Set)34 b(up)g(y)n(our)f(w)o(eb)i(ser)t(v)m(er)0 -4193 y Fw(Congratulations!)26 b(Y)-9 b(ou')l(v)o(e)19 -b(installed)i(the)h(Mailman)e(softw)o(are.)28 b(T)-7 -b(o)21 b(get)g(e)n(v)o(erything)e(running)g(you)h(need)h(to)g(hook)f -(Mailman)h(up)f(to)0 4293 y(both)f(your)g(web)h(serv)o(er)g(and)f(your) -g(mail)i(system.)0 4440 y(If)15 b(you)g(plan)g(on)g(running)e(your)i -(mail)g(and)g(web)h(serv)o(ers)f(on)g(dif)n(ferent)f(machines,)h +j(until)f(no)g(more)f(errors)g(are)i(reported!)p 0 3806 +3901 17 v 0 5109 17 1303 v 75 3922 a Fr(W)-5 b(ar)o(ning:)83 +b Fw(If)28 b(you')l(re)f(running)f(Mailman)i(on)h(a)g(shared)e +(multiuser)h(system,)j(and)d(you)f(ha)n(v)o(e)h(mailing)g(lists)i(with) +f(pri)n(v)n(ate)75 4021 y(archi)n(v)o(es,)23 b(you)g(may)h(w)o(ant)g +(to)g(hide)g(the)g(pri)n(v)n(ate)f(archi)n(v)o(e)f(directory)h(from)g +(other)g(users)h(on)f(your)g(system.)37 b(In)23 b(that)i(case,)g(you)75 +4121 y(should)h(drop)g(the)i(other)e(e)o(x)o(ecute)g(permission)g +(\(o-x\))g(from)h(the)g(`)p Fv(archiv)n(es/pr)q(iv)n(ate)p +Fw(')e(directory)-5 b(.)44 b(Ho)n(we)n(v)o(er)m(,)27 +b(the)g(web)h(serv)o(er)75 4221 y(process)17 b(must)h(be)g(able)g(to)g +(follo)n(w)f(the)h(symbolic)f(link)g(in)h(public)f(directory)-5 +b(,)16 b(otherwise)h(your)g(public)g(Pipermail)g(archi)n(v)o(es)g(will) +75 4320 y(not)j(w)o(ork.)k(T)-7 b(o)20 b(set)h(this)g(up,)e(become)g +(root)h(and)g(run)f(the)h(follo)n(wing)f(commands:)311 +4511 y Fl(#)45 b(cd)f(<prefix>/archives)311 4602 y(#)h(chown)f +(<web-server-user>)e(private)311 4694 y(#)j(chmod)f(o-x)g(private)75 +4933 y Fw(Y)-9 b(ou)21 b(need)h(to)g(kno)n(w)f(what)h(user)g(your)f +(web)h(serv)o(er)g(runs)g(as.)31 b(It)23 b(may)e(be)h +Fm(www)p Fw(,)h Fm(apache)p Fw(,)f Fm(httpd)g Fw(or)g +Fm(nobody)p Fw(,)f(depending)75 5033 y(on)e(your)g(serv)o(er')-5 +b(s)20 b(con\002guration.)p 3883 5109 V 0 5125 3901 17 +v 0 5549 3901 4 v 0 5649 a Fp(3.2)83 b(Mak)n(e)24 b(and)f(install)3059 +b(5)p eop end +%%Page: 6 6 +TeXDict begin 6 5 bop 0 88 a Fx(5)120 b(Set)34 b(up)g(y)n(our)f(w)o(eb) +i(ser)t(v)m(er)0 321 y Fw(Congratulations!)26 b(Y)-9 +b(ou')l(v)o(e)19 b(installed)i(the)h(Mailman)e(softw)o(are.)28 +b(T)-7 b(o)21 b(get)g(e)n(v)o(erything)e(running)g(you)h(need)h(to)g +(hook)f(Mailman)h(up)f(to)0 421 y(both)f(your)g(web)h(serv)o(er)g(and)f +(your)g(mail)i(system.)0 567 y(If)15 b(you)g(plan)g(on)g(running)e +(your)i(mail)g(and)g(web)h(serv)o(ers)f(on)g(dif)n(ferent)f(machines,)h (sharing)f(Mailman)h(installations)h(via)f(NFS,)h(be)g(sure)0 -4540 y(that)g(the)f(clocks)h(on)f(those)h(tw)o(o)g(machines)e(are)i +667 y(that)g(the)f(clocks)h(on)f(those)h(tw)o(o)g(machines)e(are)i (synchronized)d(closely)-5 b(.)23 b(Y)-9 b(ou)15 b(might)g(tak)o(e)g(a) i(look)d(at)j(the)e(\002le)i(`)p Fv(Mailman/Loc)o(kFile)o(.p)n(y)p -Fw(';)0 4639 y(the)j(constant)g Fj(CLOCK)p 696 4639 V -52 w(SLOP)g Fw(helps)g(the)g(locking)f(mechanism)g(compensate)f(for)i -(clock)f(sk)o(e)n(w)i(in)f(this)h(type)f(of)g(en)m(vironment.)0 -4786 y(This)29 b(section)f(describes)g(some)g(of)g(the)h(things)f(you)f +Fw(';)0 767 y(the)j(constant)g Fj(CLOCK)p 696 767 25 +4 v 31 w(SLOP)g Fw(helps)g(the)g(locking)f(mechanism)g(compensate)g +(for)g(clock)h(sk)o(e)n(w)g(in)g(this)h(type)f(of)g(en)m(vironment.)0 +914 y(This)29 b(section)f(describes)g(some)g(of)g(the)h(things)f(you)f (need)h(to)h(do)f(to)h(connect)e(Mailman')-5 b(s)28 b(web)g(interf)o -(ace)g(to)h(your)e(web)h(serv)o(er)-5 b(.)0 4886 y(The)28 +(ace)g(to)h(your)e(web)h(serv)o(er)-5 b(.)0 1013 y(The)28 b(instructions)f(here)h(are)g(some)n(what)f(geared)g(to)n(w)o(ard)h (the)g(Apache)g(web)g(serv)o(er)m(,)g(so)h(you)e(should)h(consult)f -(your)g(web)h(serv)o(er)0 4985 y(documentation)17 b(for)j(details.)0 -5132 y(Y)-9 b(ou)22 b(must)g(con\002gure)f(your)g(web)i(serv)o(er)e(to) +(your)g(web)h(serv)o(er)0 1113 y(documentation)17 b(for)j(details.)0 +1260 y(Y)-9 b(ou)22 b(must)g(con\002gure)f(your)g(web)i(serv)o(er)e(to) i(enable)f(CGI)h(script)f(permission)g(in)g(the)h(`)p Fk($)p Fj(pr)m(e\002x)p Fp(/cgi-bin)p Fw(')e(to)i(run)f(CGI)h(scripts.) -32 b(The)0 5232 y(line)23 b(you)f(should)g(add)g(might)h(look)f +32 b(The)0 1359 y(line)23 b(you)f(should)g(add)g(might)h(look)f (something)f(lik)o(e)j(the)f(follo)n(wing,)e(with)i(the)g(real)g (absolute)g(directory)e(substituted)h(for)h Fk($)p Fj(pr)m(e\002x)p -Fw(,)0 5331 y(of)d(course:)p 0 5549 3901 4 v 0 5649 a -Fp(3.2)83 b(Mak)n(e)24 b(and)f(install)3059 b(5)p eop -end -%%Page: 6 6 -TeXDict begin 6 5 bop 416 174 a Fl(Exec)358 b(/mailman/)1359 -187 y(*)1671 174 y($prefix/cgi-bin/)2391 187 y(*)0 442 -y Fw(or:)416 680 y Fl(ScriptAlias)43 b(/mailman/)312 -b($prefix/cgi-bin/)p 0 927 3901 17 v 0 1218 17 292 v -75 1042 a Fr(W)-5 b(ar)o(ning:)65 b Fw(Y)-9 b(ou)24 b(w)o(ant)g(to)g -(be)g(v)o(ery)f(sure)h(that)g(the)g(user)g(id)h(under)d(which)i(your)f -(CGI)h(scripts)h(run)e(is)i Fr(not)f Fw(in)g(the)h Fm(mailman)75 -1142 y Fw(group)18 b(you)h(created)h(abo)o(v)o(e,)e(otherwise)i(pri)n -(v)n(ate)f(archi)n(v)o(es)g(will)i(be)f(accessible)g(to)h(an)o(yone.)p -3883 1218 V 0 1234 3901 17 v 0 1390 a(Cop)o(y)k(the)h(Mailman,)g -(Python,)f(and)g(GNU)h(logos)f(to)g(a)h(location)f(accessible)g(to)h -(your)e(web)i(serv)o(er)-5 b(.)40 b(E.g.)g(with)26 b(Apache,)g(you')l -(v)o(e)0 1489 y(usually)20 b(got)f(an)i(`)p Fv(icons)p -Fw(')e(directory)f(that)j(you)e(can)h(drop)f(the)h(images)g(into.)25 -b(F)o(or)20 b(e)o(xample:)416 1727 y Fl(\045)44 b(cp)h($prefix/icons/) -1270 1740 y(*)1315 1727 y(.{jpg,png})40 b(/path/to/apache/icons)0 -2018 y Fw(Y)-9 b(ou)24 b(then)g(w)o(ant)g(to)h(add)f(a)g(line)h(to)g -(your)e(`)p Fk($)p Fj(pr)m(e\002x)p Fp(/Mailman/mm)p -1983 2018 46 4 v 51 w(cfg.p)n(y)p Fw(')g(\002le)i(which)f(sets)i(the)e -(base)h(URL)g(for)e(the)i(logos.)37 b(F)o(or)0 2118 y(e)o(xample:)326 -2356 y Fl(IMAGE_LOGOS)43 b(=)i('/images/')0 2643 y Fw(The)20 -b(def)o(ault)f(v)n(alue)h(for)f Fj(IMA)m(GE)p 977 2643 -V 50 w(LOGOS)i Fw(is)g(`)p Fv(/icons/)p Fw('.)j(Read)c(the)h(comment)d -(in)j(`)p Fv(Def)n(aults)o(.p)n(y)-7 b(.in)p Fw(')15 -b(for)20 b(details.)0 2790 y(Con\002gure)f(your)g(web)h(serv)o(er)f(to) -i(point)e(to)h(the)h(Pipermail)e(public)g(mailing)h(list)h(archi)n(v)o -(es.)j(F)o(or)c(e)o(xample,)e(in)j(Apache:)416 3028 y -Fl(Alias)133 b(/pipermail/)223 b($varprefix/archives/public/)0 -3318 y Fw(where)28 b Fk($)p Fj(varpr)m(e\002x)g Fw(is)i(usually)e +Fw(,)0 1459 y(of)d(course:)416 1697 y Fl(Exec)358 b(/mailman/*)267 +b($prefix/cgi-bin/*)0 1965 y Fw(or:)416 2203 y Fl(ScriptAlias)43 +b(/mailman/)312 b($prefix/cgi-bin/)p 0 2449 3901 17 v +0 2740 17 292 v 75 2565 a Fr(W)-5 b(ar)o(ning:)65 b Fw(Y)-9 +b(ou)24 b(w)o(ant)g(to)g(be)g(v)o(ery)f(sure)h(that)g(the)g(user)g(id)h +(under)d(which)i(your)f(CGI)h(scripts)h(run)e(is)i Fr(not)f +Fw(in)g(the)h Fm(mailman)75 2664 y Fw(group)18 b(you)h(created)h(abo)o +(v)o(e,)e(otherwise)i(pri)n(v)n(ate)f(archi)n(v)o(es)g(will)i(be)f +(accessible)g(to)h(an)o(yone.)p 3883 2740 V 0 2757 3901 +17 v 0 2912 a(Cop)o(y)k(the)h(Mailman,)g(Python,)f(and)g(GNU)h(logos)f +(to)g(a)h(location)f(accessible)g(to)h(your)e(web)i(serv)o(er)-5 +b(.)40 b(E.g.)g(with)26 b(Apache,)g(you')l(v)o(e)0 3012 +y(usually)20 b(got)f(an)i(`)p Fv(icons)p Fw(')e(directory)f(that)j(you) +e(can)h(drop)f(the)h(images)g(into.)25 b(F)o(or)20 b(e)o(xample:)416 +3250 y Fl(\045)44 b(cp)h($prefix/icons/*.{jpg,png})40 +b(/path/to/apache/icons)0 3541 y Fw(Y)-9 b(ou)25 b(then)g(w)o(ant)g(to) +h(add)f(a)g(line)h(to)f(your)g(`)p Fk($)p Fj(pr)m(e\002x)p +Fp(/Mailman/mm)p 1992 3541 25 4 v 30 w(cfg.p)n(y)p Fw(')g(\002le)h +(which)e(sets)j(the)e(base)h(URL)g(for)f(the)g(logos.)40 +b(F)o(or)0 3641 y(e)o(xample:)326 3879 y Fl(IMAGE_LOGOS)j(=)i +('/images/')0 4166 y Fw(The)20 b(def)o(ault)f(v)n(alue)h(for)f +Fj(IMA)m(GE)p 977 4166 V 30 w(LOGOS)h Fw(is)i(`)p Fv(/icons/)p +Fw('.)h(Read)e(the)f(comment)f(in)h(`)p Fv(Def)n(aults)o(.p)n(y)-7 +b(.in)p Fw(')16 b(for)j(details.)0 4312 y(Con\002gure)g(your)g(web)h +(serv)o(er)f(to)i(point)e(to)h(the)h(Pipermail)e(public)g(mailing)h +(list)h(archi)n(v)o(es.)j(F)o(or)c(e)o(xample,)e(in)j(Apache:)416 +4551 y Fl(Alias)133 b(/pipermail/)223 b($varprefix/archives/public/)0 +4841 y Fw(where)28 b Fk($)p Fj(varpr)m(e\002x)g Fw(is)i(usually)e Fk($)p Fj(pr)m(e\002x)g Fw(unless)h(you')l(v)o(e)e(used)i(the)g Fr(--with-v)o(ar)m(-pr)o(e\002x)d Fw(option)h(to)i Fr(con\002gur)o(e)p -Fw(.)51 b(Also)29 b(be)g(sure)f(to)0 3418 y(con\002gure)e(your)g(web)i +Fw(.)51 b(Also)29 b(be)g(sure)f(to)0 4941 y(con\002gure)e(your)g(web)i (serv)o(er)e(to)i(follo)n(w)f(symbolic)g(links)h(in)f(this)i(directory) -5 b(,)27 b(otherwise)g(public)f(Pipermail)i(archi)n(v)o(es)e(w)o(on')o -(t)h(be)0 3518 y(accessible.)e(F)o(or)20 b(Apache)f(users,)h(consult)g -(the)g Fj(F)-9 b(ollowSymLinks)20 b Fw(option.)0 3664 +(t)h(be)0 5040 y(accessible.)e(F)o(or)20 b(Apache)f(users,)h(consult)g +(the)g Fj(F)-9 b(ollowSymLinks)20 b Fw(option.)0 5187 y(If)c(you')l(re)e(going)h(to)h(be)g(supporting)e(internationalized)f (public)i(archi)n(v)o(es,)h(you)f(will)i(probably)c(w)o(ant)k(to)f -(turn)f(of)n(f)g(an)o(y)h(def)o(ault)f(charset)0 3764 +(turn)f(of)n(f)g(an)o(y)h(def)o(ault)f(charset)0 5287 y(directi)n(v)o(e)25 b(for)g(the)g(Pipermail)h(directory)-5 b(,)24 b(otherwise)i(your)e(multilingual)g(archi)n(v)o(e)h(pages)g(w)o (on')o(t)g(sho)n(w)g(up)h(correctly)-5 b(.)40 b(Here')-5 -b(s)26 b(an)0 3864 y(e)o(xample)19 b(for)g(Apache,)g(based)h(on)g(the)g -(standard)f(installation)h(directories:)416 4102 y Fl(<Directory)43 -b("/usr/local/mailman/archives/public/")o(>)595 4193 -y(AddDefaultCharset)f(Off)416 4285 y(</Directory>)0 4571 -y Fw(No)n(w)20 b(restart)g(your)f(web)h(serv)o(er)-5 -b(.)0 4899 y Fx(6)120 b(Set)34 b(up)g(y)n(our)f(mail)g(ser)t(v)m(er)0 -5131 y Fw(This)18 b(section)f(describes)g(some)g(of)g(the)h(things)f -(you)f(need)h(to)h(do)f(to)g(connect)g(Mailman')-5 b(s)17 -b(email)g(interf)o(ace)g(to)g(your)g(mail)g(serv)o(er)-5 -b(.)24 b(The)0 5231 y(instructions)f(here)g(are)h(dif)n(ferent)e(for)h +b(s)26 b(an)0 5386 y(e)o(xample)19 b(for)g(Apache,)g(based)h(on)g(the)g +(standard)f(installation)h(directories:)p 0 5549 3901 +4 v 0 5649 a Fp(6)2873 b(5)83 b(Set)24 b(up)g(y)n(our)e(w)o(eb)i(ser)r +(v)n(er)p eop end +%%Page: 7 7 +TeXDict begin 7 6 bop 416 174 a Fl(<Directory)43 b +("/usr/local/mailman/archives/public/")o(>)595 266 y(AddDefaultCharset) +f(Off)416 357 y(</Directory>)0 644 y Fw(No)n(w)20 b(restart)g(your)f +(web)h(serv)o(er)-5 b(.)0 971 y Fx(6)120 b(Set)34 b(up)g(y)n(our)f +(mail)g(ser)t(v)m(er)0 1204 y Fw(This)18 b(section)f(describes)g(some)g +(of)g(the)h(things)f(you)f(need)h(to)h(do)f(to)g(connect)g(Mailman')-5 +b(s)17 b(email)g(interf)o(ace)g(to)g(your)g(mail)g(serv)o(er)-5 +b(.)24 b(The)0 1303 y(instructions)f(here)g(are)h(dif)n(ferent)e(for)h (each)h(mail)g(serv)o(er;)h(if)f(your)e(mail)j(serv)o(er)e(is)h(not)g (described)e(in)i(the)g(follo)n(wing)e(subsections,)0 -5331 y(try)i(to)g(generalize)f(from)g(the)h(e)o(xisting)f +1403 y(try)i(to)g(generalize)f(from)g(the)h(e)o(xisting)f (documentation,)f(and)h(consider)g(contrib)n(uting)f(documentation)f -(updates)i(to)h(the)g(Mailman)p 0 5549 3901 4 v 0 5649 -a Fp(6)2873 b(6)83 b(Set)23 b(up)h(y)n(our)f(mail)h(ser)r(v)n(er)p -eop end -%%Page: 7 7 -TeXDict begin 7 6 bop 0 83 a Fw(de)n(v)o(elopers.)0 368 -y Fo(6.1)100 b(Using)28 b(the)h(P)-5 b(ost\002x)27 b(mail)i(ser)s(v)n -(er)0 571 y Fw(Mailman)22 b(should)f(w)o(ork)g(pretty)h(much)f(out)h -(of)g(the)g(box)f(with)i(a)f(standard)f(Post\002x)i(installation.)30 -b(It)23 b(has)f(been)g(tested)g(with)h(v)n(arious)0 670 -y(Post\002x)d(v)o(ersions)g(up)f(to)i(and)e(including)g(Post\002x)h -(2.1.5.)0 817 y(By)k(def)o(ault,)e(Post\002x)i(treats)f +(updates)i(to)h(the)g(Mailman)0 1503 y(de)n(v)o(elopers.)0 +1788 y Fo(6.1)100 b(Using)28 b(the)h(P)-5 b(ost\002x)27 +b(mail)i(ser)s(v)n(er)0 1990 y Fw(Mailman)22 b(should)f(w)o(ork)g +(pretty)h(much)f(out)h(of)g(the)g(box)f(with)i(a)f(standard)f +(Post\002x)i(installation.)30 b(It)23 b(has)f(been)g(tested)g(with)h(v) +n(arious)0 2090 y(Post\002x)d(v)o(ersions)g(up)f(to)i(and)e(including)g +(Post\002x)h(2.1.5.)0 2237 y(By)k(def)o(ault,)e(Post\002x)i(treats)f Fm(-owner)g Fw(and)g Fm(-request)f Fw(addresses)h(specially)-5 b(.)33 b(Since)23 b(you)f(w)o(ant)h(Post\002x)h(to)f(deli)n(v)o(er)f -(such)h(mes-)0 917 y(sages)e(to)f(Mailman,)f(you)h(should)f(turn)g(of)n -(f)h(this)g(option)f(by)h(adding)f(this)i(to)f(your)f(`)p -Fv(main.cf)p Fw(')g(\002le:)416 1155 y Fl(owner_request_special)41 -b(=)k(no)0 1442 y Fw(In)27 b(order)f(to)i(support)e(Mailman')-5 -b(s)27 b(optional)f(VERP)i(deli)n(v)o(ery)-5 b(,)27 b(you)g(will)h(w)o -(ant)f(to)h(disable)f Fm(luser)p 3016 1442 46 4 v 50 -w(relay)g Fw(\(the)g(def)o(ault\))f(and)0 1541 y(you)32 -b(will)i(w)o(ant)f(to)g(set)h Fm(recipient)p 1194 1541 -V 49 w(delimiter)e Fw(for)g(e)o(xtended)f(address)i(semantics.)63 -b(Y)-9 b(ou)32 b(should)g(comment)g(out)g(an)o(y)0 1641 -y Fm(luser)p 255 1641 V 50 w(relay)20 b Fw(v)n(alue)f(in)h(your)f(`)p -Fv(main.cf)p Fw(')g(and)h(just)h(go)e(with)i(the)f(def)o(aults.)k -(Also,)d(add)e(this)i(to)f(your)f(`)p Fv(main.cf)p Fw(')g(\002le:)416 -1879 y Fl(recipient_delimiter)41 b(=)k(+)0 2166 y Fw(Using)e(`)p -Fm(+)p Fw(')g(as)i(the)e(delimiter)g(w)o(orks)g(well)h(with)f(the)h -(def)o(ault)e(v)n(alues)h(for)g Fj(VERP)p 2641 2166 V -50 w(FORMA)m(T)49 b Fw(and)43 b Fj(VERP)p 3433 2166 V -50 w(REGEXP)f Fw(in)0 2265 y(`)p Fv(Def)n(aults)o(.p)n(y)p -Fw('.)0 2412 y(When)21 b(attempting)f(to)h(deli)n(v)o(er)f(a)h(message) -g(to)g(a)h(non-e)o(xistent)d(local)i(address,)f(Post\002x)i(may)e -(return)g(a)i(450)e(error)g(code.)27 b(Since)21 b(this)0 -2512 y(is)j(a)g(transient)f(error)f(code,)h(Mailman)f(will)i(continue)e -(to)h(attempt)g(to)h(deli)n(v)o(er)e(the)h(message)g(for)g -Fj(DELIVER)o(Y)p 3263 2512 V 49 w(RETR)o(Y)p 3556 2512 -V 49 w(PERIOD)0 2611 y Fw(\226)h(5)g(days)g(by)g(def)o(ault.)35 -b(Y)-9 b(ou)24 b(might)f(w)o(ant)h(to)h(set)f(Post\002x)h(up)e(so)i -(that)f(it)h(returns)e(permanent)f(error)h(codes)g(for)h(non-e)o -(xistent)e(local)0 2711 y(users)e(by)g(adding)f(the)h(follo)n(wing)f -(to)h(your)f(`)p Fv(main.cf)p Fw(')g(\002le:)416 2949 +(such)h(mes-)0 2337 y(sages)e(to)f(Mailman,)f(you)h(should)f(turn)g(of) +n(f)h(this)g(option)f(by)h(adding)f(this)i(to)f(your)f(`)p +Fv(main.cf)p Fw(')g(\002le:)416 2575 y Fl(owner_request_special)41 +b(=)k(no)0 2861 y Fw(In)18 b(order)g(to)g(support)g(Mailman')-5 +b(s)18 b(optional)f(VERP)i(deli)n(v)o(ery)-5 b(,)17 b(you)h(will)h(w)o +(ant)g(to)f(disable)h Fm(luser_relay)e Fw(\(the)h(def)o(ault\))f(and)h +(you)0 2961 y(will)i(w)o(ant)e(to)h(set)h Fm(recipient_delimiter)c +Fw(for)i(e)o(xtended)f(address)h(semantics.)25 b(Y)-9 +b(ou)18 b(should)g(comment)f(out)h(an)o(y)g Fm(luser_-)0 +3061 y(relay)i Fw(v)n(alue)f(in)i(your)e(`)p Fv(main.cf)p +Fw(')f(and)i(just)h(go)f(with)g(the)g(def)o(aults.)25 +b(Also,)20 b(add)g(this)g(to)h(your)e(`)p Fv(main.cf)p +Fw(')g(\002le:)416 3299 y Fl(recipient_delimiter)41 b(=)k(+)0 +3585 y Fw(Using)15 b(`)p Fm(+)p Fw(')h(as)g(the)f(delimiter)g(w)o(orks) +g(well)h(with)g(the)f(def)o(ault)g(v)n(alues)g(for)g +Fj(VERP)p 2306 3585 25 4 v 29 w(FORMA)m(T)22 b Fw(and)15 +b Fj(VERP)p 3022 3585 V 29 w(REGEXP)f Fw(in)i(`)p Fv(Def)n(aults)o(.p)n +(y)p Fw('.)0 3732 y(When)21 b(attempting)f(to)h(deli)n(v)o(er)f(a)h +(message)g(to)g(a)h(non-e)o(xistent)d(local)i(address,)f(Post\002x)i +(may)e(return)g(a)i(450)e(error)g(code.)27 b(Since)21 +b(this)0 3832 y(is)i(a)f(transient)f(error)g(code,)g(Mailman)g(will)i +(continue)d(to)i(attempt)f(to)h(deli)n(v)o(er)f(the)h(message)f(for)g +Fj(DELIVER)o(Y)p 3240 3832 V 29 w(RETR)o(Y)p 3513 3832 +V 28 w(PERIOD)g Fw(\226)0 3931 y(5)d(days)g(by)g(def)o(ault.)24 +b(Y)-9 b(ou)17 b(might)h(w)o(ant)g(to)g(set)h(Post\002x)g(up)f(so)g +(that)g(it)h(returns)f(permanent)e(error)h(codes)h(for)f(non-e)o +(xistent)f(local)i(users)0 4031 y(by)i(adding)f(the)h(follo)n(wing)e +(to)j(your)e(`)p Fv(main.cf)p Fw(')f(\002le:)416 4269 y Fl(unknown_local_recipient_reject_code)38 b(=)45 b(550)0 -3236 y Fw(Finally)-5 b(,)19 b(if)i(you)e(are)h(using)g(Post\002x-style) +4556 y Fw(Finally)-5 b(,)19 b(if)i(you)e(are)h(using)g(Post\002x-style) g(virtual)f(domains,)g(read)h(the)g(section)g(on)g(virtual)f(domain)g -(support)g(belo)n(w)-5 b(.)0 3504 y Fp(Integ)o(r)o(ating)25 -b(P)l(ost\002x)d(and)h(Mailman)0 3707 y Fw(Y)-9 b(ou)30 +(support)g(belo)n(w)-5 b(.)0 4824 y Fp(Integ)o(r)o(ating)25 +b(P)l(ost\002x)d(and)h(Mailman)0 5027 y Fw(Y)-9 b(ou)30 b(can)h(inte)o(grate)f(Post\002x)h(and)f(Mailman)g(such)h(that)g(when)f (ne)n(w)h(lists)h(are)f(created,)i(or)d(lists)j(are)d(remo)o(v)o(ed,)h -(Post\002x')-5 b(s)32 b(alias)0 3807 y(database)20 b(will)h(be)f +(Post\002x')-5 b(s)32 b(alias)0 5127 y(database)20 b(will)h(be)f (automatically)e(updated.)24 b(The)c(follo)n(wing)e(are)i(the)g(steps)h (you)f(need)f(to)h(tak)o(e)h(to)f(mak)o(e)g(this)g(w)o(ork.)0 -3953 y(In)g(the)h(description)e(belo)n(w)-5 b(,)20 b(we)h(assume)g +5273 y(In)g(the)h(description)e(belo)n(w)-5 b(,)20 b(we)h(assume)g (that)g(you')l(v)o(e)d(installed)j(Mailman)f(in)h(the)g(def)o(ault)f (location,)f(i.e.)27 b(`)p Fv(/usr/local/mailman)p Fw('.)c(If)0 -4053 y(that')-5 b(s)20 b(not)e(the)i(case,)f(adjust)g(the)g +5373 y(that')-5 b(s)20 b(not)e(the)i(case,)f(adjust)g(the)g (instructions)g(according)e(to)i(your)f(use)h(of)g Fr(con\002gur)o(e)p Fw(')-5 b(s)19 b Fr(--pr)o(e\002x)f Fw(and)h Fr(--with-v)o(ar)m(-pr)o -(e\002x)d Fw(options.)0 4200 y Fr(Note:)69 b Fw(If)25 -b(you)f(are)g(using)h(virtual)f(domains)g(and)g(you)g(w)o(ant)h -(Mailman)f(to)i(honor)d(your)g(virtual)i(domains,)f(read)h(the)g(6.1)f -(section)0 4300 y(belo)n(w)c(\002rst!)125 4529 y Fd(\017)41 -b Fw(Add)19 b(this)i(to)f(the)h(bottom)e(of)g(the)i(`)p -Fk($)p Fj(pr)m(e\002x)p Fp(/Mailman/mm)p 1946 4529 V -51 w(cfg.p)n(y)p Fw(')e(\002le:)802 4754 y Fl(MTA)45 -b(=)f('Postfix')208 5117 y Fw(The)30 b(MT)-8 b(A)31 b(v)n(ariable)f -(names)h(a)g(module)f(in)h(the)g(`)p Fv(Mailman/MT)-9 -b(A)p Fw(')28 b(directory)h(which)i(contains)f(the)h(mail)g(serv)o(er)n -(-speci\002c)208 5217 y(functions)18 b(to)j(be)f(e)o(x)o(ecuted)e(when) -i(a)g(list)i(is)f(created)e(or)h(remo)o(v)o(ed.)p 0 5549 -3901 4 v 0 5649 a Fp(6.1)83 b(Using)24 b(the)f(P)l(ost\002x)f(mail)j -(ser)r(v)n(er)2606 b(7)p eop end +(e\002x)d Fw(options.)p 0 5549 3901 4 v 3854 5649 a Fp(7)p +eop end %%Page: 8 8 -TeXDict begin 8 7 bop 125 83 a Fd(\017)41 b Fw(Look)20 -b(at)j(the)f(`)p Fv(Def)n(aults)o(.p)n(y)p Fw(')d(\002le)k(for)e(the)h -(v)n(ariables)f Fj(POSTFIX)p 2084 83 46 4 v 49 w(ALIAS)p -2351 83 V 50 w(CMD)i Fw(and)e Fj(POSTFIX)p 3079 83 V -49 w(MAP)p 3299 83 V 51 w(CMD)i Fw(command.)208 183 y(Mak)o(e)j(sure)h -(these)h(point)e(to)i(your)d Fr(postalias)i Fw(and)g +TeXDict begin 8 7 bop 0 83 a Fr(Note:)69 b Fw(If)25 b(you)f(are)g +(using)h(virtual)f(domains)g(and)g(you)g(w)o(ant)h(Mailman)f(to)i +(honor)d(your)g(virtual)i(domains,)f(read)h(the)g(6.1)f(section)0 +183 y(belo)n(w)c(\002rst!)125 413 y Fd(\017)41 b Fw(Add)19 +b(this)i(to)f(the)h(bottom)e(of)g(the)i(`)p Fk($)p Fj(pr)m(e\002x)p +Fp(/Mailman/mm)p 1946 413 25 4 v 30 w(cfg.p)n(y)p Fw(')f(\002le:)802 +637 y Fl(MTA)45 b(=)f('Postfix')208 1001 y Fw(The)30 +b(MT)-8 b(A)31 b(v)n(ariable)f(names)h(a)g(module)f(in)h(the)g(`)p +Fv(Mailman/MT)-9 b(A)p Fw(')28 b(directory)h(which)i(contains)f(the)h +(mail)g(serv)o(er)n(-speci\002c)208 1100 y(functions)18 +b(to)j(be)f(e)o(x)o(ecuted)e(when)i(a)g(list)i(is)f(created)e(or)h +(remo)o(v)o(ed.)125 1266 y Fd(\017)41 b Fw(Look)28 b(at)i(the)g(`)p +Fv(Def)n(aults)o(.p)n(y)p Fw(')c(\002le)k(for)f(the)h(v)n(ariables)f +Fj(POSTFIX)p 2145 1266 V 28 w(ALIAS)p 2391 1266 V 29 +w(CMD)h Fw(and)f Fj(POSTFIX)p 3113 1266 V 29 w(MAP)p +3313 1266 V 29 w(CMD)i Fw(command.)208 1366 y(Mak)o(e)26 +b(sure)h(these)h(point)e(to)i(your)d Fr(postalias)i Fw(and)g Fr(postmap)g Fw(programs)e(respecti)n(v)o(ely)-5 b(.)44 -b(Remember)26 b(that)h(if)h(you)e(need)g(to)208 282 y(mak)o(e)19 -b(changes,)g(do)h(it)h(in)f(`)p Fv(mm)p 1128 282 42 4 -v 46 w(cfg.p)n(y)p Fw('.)125 448 y Fd(\017)41 b Fw(Run)20 -b(the)g Fr(bin/genaliases)g Fw(script)h(to)f(initialize)g(your)f(`)p -Fv(aliases)p Fw(')g(\002le.)802 672 y Fl(\045)45 b(cd)g -(/usr/local/mailman)802 764 y(\045)g(bin/genaliases)208 -1128 y Fw(Mak)o(e)21 b(sure)h(that)f(the)h(o)n(wner)f(of)g(the)h(`)p +b(Remember)26 b(that)h(if)h(you)e(need)g(to)208 1465 +y(mak)o(e)19 b(changes,)g(do)h(it)h(in)f(`)p Fv(mm)p +1128 1465 23 4 v 27 w(cfg.p)n(y)p Fw('.)125 1631 y Fd(\017)41 +b Fw(Run)20 b(the)g Fr(bin/genaliases)g Fw(script)h(to)f(initialize)g +(your)f(`)p Fv(aliases)p Fw(')g(\002le.)802 1856 y Fl(\045)45 +b(cd)g(/usr/local/mailman)802 1947 y(\045)g(bin/genaliases)208 +2311 y Fw(Mak)o(e)21 b(sure)h(that)f(the)h(o)n(wner)f(of)g(the)h(`)p Fv(data/aliases)p Fw(')c(and)j(`)p Fv(data/aliases)o(.db)p Fw(')c(\002le)22 b(is)h Fm(mailman)e Fw(and)g(that)h(the)g(group)e(o)n -(wner)208 1227 y(for)f(those)h(\002les)h(is)g Fm(mailman)p +(wner)208 2410 y(for)f(those)h(\002les)h(is)g Fm(mailman)p Fw(,)f(or)g(whate)n(v)o(er)e(user)i(and)g(group)e(you)i(used)g(in)g -(the)g(con\002gure)e(command:)802 1360 y Fl(\045)45 b(su)802 -1451 y(\045)g(chown)f(mailman:mailman)e(data/aliases)2418 -1464 y(*)125 1849 y Fd(\017)f Fw(Hack)19 b(your)g(Post\002x')-5 -b(s)21 b(`)p Fv(main.cf)p Fw(')e(\002le)i(to)f(include)g(the)g(follo)n -(wing)e(path)i(in)g(your)f Fj(alias)p 2730 1849 46 4 -v 50 w(maps)h Fw(v)n(ariable:)892 2073 y Fl -(/usr/local/mailman/data/aliases)208 2437 y Fw(Note)g(that)h(there)f -(should)g(be)h(no)f(trailing)g Fm(.db)p Fw(.)27 b(Do)20 -b(not)h(include)e(this)j(in)f(your)e Fj(alias)p 2712 -2437 V 50 w(database)g Fw(v)n(ariable.)26 b(This)21 b(is)g(because)208 -2536 y(you)f(do)h(not)g(w)o(ant)g(Post\002x')-5 b(s)22 -b Fr(newaliases)g Fw(command)d(to)j(modify)e(Mailman')-5 -b(s)21 b(`)p Fv(aliases)o(.db)p Fw(')d(\002le,)k(b)n(ut)f(you)g(do)g(w) -o(ant)g(Post\002x)208 2636 y(to)f(consult)g(`)p Fv(aliases)o(.db)p -Fw(')d(when)i(looking)g(for)g(local)i(addresses.)208 -2769 y(Y)-9 b(ou)19 b(probably)f(w)o(ant)i(to)h(use)f(a)h +(the)g(con\002gure)e(command:)802 2543 y Fl(\045)45 b(su)802 +2635 y(\045)g(chown)f(mailman:mailman)e(data/aliases*)125 +3032 y Fd(\017)f Fw(Hack)19 b(your)g(Post\002x')-5 b(s)21 +b(`)p Fv(main.cf)p Fw(')e(\002le)i(to)f(include)g(the)g(follo)n(wing)e +(path)i(in)g(your)f Fj(alias)p 2730 3032 25 4 v 30 w(maps)h +Fw(v)n(ariable:)892 3256 y Fl(/usr/local/mailman/data/aliases)208 +3620 y Fw(Note)h(that)h(there)f(should)g(be)g(no)h(trailing)f +Fm(.db)p Fw(.)29 b(Do)22 b(not)f(include)g(this)h(in)g(your)e +Fj(alias)p 2727 3620 V 30 w(database)g Fw(v)n(ariable.)28 +b(This)22 b(is)g(because)208 3720 y(you)e(do)h(not)g(w)o(ant)g +(Post\002x')-5 b(s)22 b Fr(newaliases)g Fw(command)d(to)j(modify)e +(Mailman')-5 b(s)21 b(`)p Fv(aliases)o(.db)p Fw(')d(\002le,)k(b)n(ut)f +(you)g(do)g(w)o(ant)g(Post\002x)208 3819 y(to)f(consult)g(`)p +Fv(aliases)o(.db)p Fw(')d(when)i(looking)g(for)g(local)i(addresses.)208 +3952 y(Y)-9 b(ou)19 b(probably)f(w)o(ant)i(to)h(use)f(a)h Fm(hash:)k Fw(style)20 b(database)g(for)f(this)i(entry)-5 -b(.)24 b(Here')-5 b(s)20 b(an)g(e)o(xample:)802 2993 +b(.)24 b(Here')-5 b(s)20 b(an)g(e)o(xample:)802 4176 y Fl(alias_maps)44 b(=)g(hash:/etc/postfix/aliases,)982 -3084 y(hash:/usr/local/mailman/data/aliases)125 3482 +4267 y(hash:/usr/local/mailman/data/aliases)125 4665 y Fd(\017)d Fw(When)26 b(you)f(con\002gure)f(Mailman,)j(use)g(the)f Fr(--with-mail-gid=mailman)e Fw(switch;)30 b(this)d(will)g(be)f(the)g -(def)o(ault)g(if)g(you)f(con-)208 3582 y(\002gured)g(Mailman)i(after)f +(def)o(ault)g(if)g(you)f(con-)208 4765 y(\002gured)g(Mailman)i(after)f (adding)g(the)h Fm(mailman)f Fw(o)n(wner)-5 b(.)45 b(Because)27 b(the)g(o)n(wner)f(of)h(the)g(`)p Fv(aliases)o(.db)p -Fw(')d(\002le)k(is)g Fm(mailman)p Fw(,)208 3681 y(Post\002x)20 +Fw(')d(\002le)k(is)g Fm(mailman)p Fw(,)208 4864 y(Post\002x)20 b(will)h(e)o(x)o(ecute)e(Mailman')-5 b(s)20 b(wrapper)e(program)g(as)j -(uid)f(and)g(gid)g Fm(mailman)p Fw(.)0 3911 y(That')-5 +(uid)f(and)g(gid)g Fm(mailman)p Fw(.)0 5094 y(That')-5 b(s)24 b(it!)35 b(One)23 b(ca)n(v)o(eat:)31 b(when)23 b(you)g(add)f(or)i(remo)o(v)o(e)d(a)j(list,)h(the)e(`)p Fv(aliases)o(.db)p Fw(')e(\002le)j(will)g(updated,)e(b)n(ut)i(it)g -(will)g(not)f(automatically)0 4011 y(run)c Fr(post\002x)g(r)o(eload)p +(will)g(not)f(automatically)0 5194 y(run)c Fr(post\002x)g(r)o(eload)p Fw(.)24 b(This)19 b(is)h(because)f(you)g(need)f(to)i(be)f(root)g(to)g (run)g(this)h(and)f(suid-root)e(scripts)j(are)f(not)g(secure.)25 -b(The)19 b(only)f(ef)n(fect)0 4110 y(of)i(this)h(is)g(that)f(it)h(will) +b(The)19 b(only)f(ef)n(fect)0 5293 y(of)i(this)h(is)g(that)f(it)h(will) g(tak)o(e)f(about)f(a)i(minute)e(for)h(Post\002x)g(to)h(notice)e(the)i (change)d(to)j(the)f(`)p Fv(aliases)o(.db)p Fw(')d(\002le)k(and)f -(update)f(its)i(tables.)0 4379 y Fp(Vir)s(tual)k(domains)0 -4582 y Fw(Post\002x)17 b(2.0)e(supports)g(\223virtual)h(alias)h +(update)f(its)i(tables.)p 0 5549 3901 4 v 0 5649 a Fp(8)2873 +b(6)83 b(Set)23 b(up)h(y)n(our)f(mail)h(ser)r(v)n(er)p +eop end +%%Page: 9 9 +TeXDict begin 9 8 bop 0 83 a Fp(Vir)s(tual)25 b(domains)0 +286 y Fw(Post\002x)17 b(2.0)e(supports)g(\223virtual)h(alias)h (domains\224,)f(essentially)g(what)g(used)g(to)h(be)f(called)g (\223Post\002x-style)g(virtual)f(domains\224)h(in)g(earlier)0 -4681 y(Post\002x)24 b(v)o(ersions.)35 b(T)-7 b(o)24 b(mak)o(e)g -(virtual)f(alias)i(domains)d(w)o(ork)i(with)g(Mailman,)g(you)f(need)g -(to)h(do)f(some)h(setup)g(in)g(both)f(Post\002x)h(and)0 -4781 y(Mailman.)43 b(Mailman)26 b(will)i(write)f(all)g(virtual)f(alias) -h(mappings)e(to)i(a)g(\002le)g(called,)h(by)e(def)o(ault,)h(`)p -Fv(/usr/local/mailman/data/vir)s(t)o(ual)o(-)0 4880 y(mailman)p +386 y(Post\002x)24 b(v)o(ersions.)35 b(T)-7 b(o)24 b(mak)o(e)g(virtual) +f(alias)i(domains)d(w)o(ork)i(with)g(Mailman,)g(you)f(need)g(to)h(do)f +(some)h(setup)g(in)g(both)f(Post\002x)h(and)0 485 y(Mailman.)43 +b(Mailman)26 b(will)i(write)f(all)g(virtual)f(alias)h(mappings)e(to)i +(a)g(\002le)g(called,)h(by)e(def)o(ault,)h(`)p Fv +(/usr/local/mailman/data/vir)s(t)o(ual)o(-)0 585 y(mailman)p Fw('.)c(It)e(will)g(also)f(use)h Fr(postmap)f Fw(to)g(create)g(the)g Fr(virtual-mailman.db)f Fw(\002le)i(that)g(Post\002x)f(will)h(actually) -f(use.)0 5027 y(First,)31 b(you)d(need)g(to)g(set)i(up)e(the)g +f(use.)0 732 y(First,)31 b(you)d(need)g(to)g(set)i(up)e(the)g (Post\002x)h(virtual)f(alias)h(domains)f(as)h(described)e(in)i(the)g (Post\002x)g(documentation)c(\(see)k(Post\002x')-5 b(s)0 -5127 y Fm(virtual\(5\))18 b Fw(manpage\).)23 b(Note)d(that)f(it')-5 +831 y Fm(virtual\(5\))18 b Fw(manpage\).)23 b(Note)d(that)f(it')-5 b(s)21 b(your)d(responsibility)g(to)i(include)f(the)g -Fm(virtual-alias.domain)46 b(anything)0 5227 y Fw(line)18 +Fm(virtual-alias.domain)46 b(anything)0 931 y Fw(line)18 b(as)g(described)f(manpage;)f(Mailman)h(will)i(not)e(include)g(this)h (line)g(in)g(`)p Fv(vir)s(tual-mailman)p Fw('.)i(Y)-9 b(ou)17 b(are)h(highly)e(encouraged)f(to)j(mak)o(e)0 -5326 y(sure)i(your)f(virtual)h(alias)g(domains)g(are)g(w)o(orking)e -(properly)g(before)h(inte)o(grating)f(with)j(Mailman.)p -0 5549 3901 4 v 0 5649 a Fp(8)2873 b(6)83 b(Set)23 b(up)h(y)n(our)f -(mail)h(ser)r(v)n(er)p eop end -%%Page: 9 9 -TeXDict begin 9 8 bop 0 83 a Fw(Ne)o(xt,)20 b(add)f(a)i(path)f(to)g -(Post\002x')-5 b(s)21 b Fj(virtual)p 1183 83 46 4 v 50 -w(alias)p 1395 83 V 50 w(maps)f Fw(v)n(ariable,)f(pointing)f(to)j(the)f -(virtual-mailman)e(\002le,)i(e.g.:)416 321 y Fl(virtual_alias_maps)41 +1031 y(sure)i(your)f(virtual)h(alias)g(domains)g(are)g(w)o(orking)e +(properly)g(before)h(inte)o(grating)f(with)j(Mailman.)0 +1177 y(Ne)o(xt,)f(add)f(a)i(path)f(to)g(Post\002x')-5 +b(s)21 b Fj(virtual)p 1183 1177 25 4 v 29 w(alias)p 1374 +1177 V 29 w(maps)g Fw(v)n(ariable,)d(pointing)h(to)h(the)g +(virtual-mailman)e(\002le,)j(e.g.:)416 1416 y Fl(virtual_alias_maps)41 b(=)k(<your)f(normal)g(virtual)f(alias)h(files>,)595 -413 y(hash:/usr/local/mailman/data/virtual-m)o(ailman)0 -699 y Fw(assuming)22 b(you')l(v)o(e)f(installed)i(Mailman)f(in)h(the)g +1507 y(hash:/usr/local/mailman/data/virtual-m)o(ailman)0 +1793 y Fw(assuming)22 b(you')l(v)o(e)f(installed)i(Mailman)f(in)h(the)g (def)o(ault)f(location.)33 b(If)23 b(you')l(re)e(using)h(an)h(older)f -(v)o(ersion)g(of)g(Post\002x)i(which)e(doesn')o(t)0 799 -y(ha)n(v)o(e)e(the)g Fj(virtual)p 524 799 V 50 w(alias)p -736 799 V 50 w(maps)g Fw(v)n(ariable,)f(use)h(the)g Fj(virtual)p -1764 799 V 51 w(maps)g Fw(v)n(ariable)f(instead.)0 946 -y(Ne)o(xt,)j(in)h(your)e(`)p Fv(mm)p 623 946 42 4 v 45 -w(cfg.p)n(y)p Fw(')h(\002le,)h(you)f(will)h(w)o(ant)f(to)h(set)g(the)f -(v)n(ariable)f Fj(POSTFIX)p 2494 946 46 4 v 49 w(STYLE)p -2774 946 V 51 w(VIRTU)m(AL)p 3155 946 V 49 w(DOMAINS)i -Fw(to)f(the)g(list)0 1045 y(of)27 b(virtual)h(domains)e(that)i(Mailman) -f(should)g(update.)47 b(This)28 b(may)f(not)g(be)h(all)g(of)g(the)g -(virtual)f(alias)h(domains)f(that)h(your)e(Post\002x)0 -1145 y(installation)d(supports!)33 b(The)22 b(v)n(alues)h(in)h(this)f -(list)i(will)f(be)f(matched)f(against)g(the)i Fj(host)p -2569 1145 V 50 w(name)e Fw(attrib)n(ute)h(of)g(mailing)f(lists)j -(objects,)0 1244 y(and)20 b(must)g(be)g(an)g(e)o(xact)g(match.)0 -1391 y(Here')-5 b(s)35 b(an)g(e)o(xample.)67 b(Say)34 +(v)o(ersion)g(of)g(Post\002x)i(which)e(doesn')o(t)0 1893 +y(ha)n(v)o(e)e(the)g Fj(virtual)p 524 1893 V 29 w(alias)p +715 1893 V 29 w(maps)g Fw(v)n(ariable,)f(use)i(the)f +Fj(virtual)p 1723 1893 V 29 w(maps)g Fw(v)n(ariable)f(instead.)0 +2040 y(Ne)o(xt,)29 b(in)e(your)g(`)p Fv(mm)p 640 2040 +23 4 v 27 w(cfg.p)n(y)p Fw(')g(\002le,)i(you)e(will)h(w)o(ant)g(to)f +(set)i(the)e(v)n(ariable)g Fj(POSTFIX)p 2541 2040 25 +4 v 28 w(STYLE)p 2800 2040 V 30 w(VIRTU)m(AL)p 3160 2040 +V 28 w(DOMAINS)h Fw(to)g(the)f(list)0 2140 y(of)g(virtual)h(domains)e +(that)i(Mailman)f(should)g(update.)47 b(This)28 b(may)f(not)g(be)h(all) +g(of)g(the)g(virtual)f(alias)h(domains)f(that)h(your)e(Post\002x)0 +2239 y(installation)e(supports!)36 b(The)24 b(v)n(alues)g(in)g(this)h +(list)g(will)h(be)e(matched)f(against)h(the)g Fj(host)p +2584 2239 V 29 w(name)g Fw(attrib)n(ute)g(of)g(mailing)f(lists)j +(objects,)0 2339 y(and)20 b(must)g(be)g(an)g(e)o(xact)g(match.)0 +2486 y(Here')-5 b(s)35 b(an)g(e)o(xample.)67 b(Say)34 b(that)h(Post\002x)g(is)h(con\002gured)c(to)j(handle)f(the)g(virtual)g (domains)g Fm(dom1.ain)p Fw(,)j Fm(dom2.ain)p Fw(,)g(and)0 -1491 y Fm(dom3.ain)p Fw(,)19 b(and)h(further)e(that)j(in)f(your)f(`)p +2585 y Fm(dom3.ain)p Fw(,)19 b(and)h(further)e(that)j(in)f(your)f(`)p Fv(main.cf)p Fw(')g(\002le)i(you')l(v)o(e)d(got)h(the)i(follo)n(wing)d -(settings:)416 1638 y Fl(myhostname)43 b(=)h(mail.dom1.ain)416 -1729 y(mydomain)f(=)i(dom1.ain)416 1820 y(mydestination)d(=)j -($myhostname,)e(localhost.$mydomain)416 1912 y(virtual_alias_maps)e(=) -595 2003 y(hash:/some/path/to/virtual-dom1,)595 2094 -y(hash:/some/path/to/virtual-dom2,)595 2186 y -(hash:/some/path/to/virtual-dom2)0 2472 y Fw(If)20 b(in)g(your)f(`)p +(settings:)416 2732 y Fl(myhostname)43 b(=)h(mail.dom1.ain)416 +2824 y(mydomain)f(=)i(dom1.ain)416 2915 y(mydestination)d(=)j +($myhostname,)e(localhost.$mydomain)416 3006 y(virtual_alias_maps)e(=) +595 3098 y(hash:/some/path/to/virtual-dom1,)595 3189 +y(hash:/some/path/to/virtual-dom2,)595 3280 y +(hash:/some/path/to/virtual-dom2)0 3567 y Fw(If)20 b(in)g(your)f(`)p Fv(vir)s(tual-dom1)p Fw(')e(\002le,)k(you')l(v)o(e)d(got)i(the)g(follo) -n(wing)f(lines:)416 2619 y Fl(dom1.ain)88 b(IGNORE)416 -2710 y(@dom1.ain)43 b(@mail.dom1.ain)0 2997 y Fw(this)25 +n(wing)f(lines:)416 3714 y Fl(dom1.ain)88 b(IGNORE)416 +3805 y(@dom1.ain)43 b(@mail.dom1.ain)0 4091 y Fw(this)25 b(tells)g(Post\002x)f(to)g(deli)n(v)o(er)f(an)o(ything)f(addressed)h (to)h Fm(dom1.ain)f Fw(to)h(the)g(same)g(mailbox)f(at)h -Fm(mail.dom1.com)p Fw(,)f(its)i(def)o(ault)0 3097 y(destination.)0 -3243 y(In)20 b(this)h(case)f(you)g(w)o(ould)f(not)h(include)f -Fm(dom1.ain)g Fw(in)i Fj(POSTFIX)p 1998 3243 V 49 w(STYLE)p -2278 3243 V 50 w(VIRTU)m(AL)p 2658 3243 V 50 w(DOMAINS)f -Fw(because)g(otherwise)g(Mail-)0 3343 y(man)g(will)h(write)f(entries)g -(for)g(mailing)f(lists)j(in)e(the)g(dom1.ain)e(domain)h(as)416 -3581 y Fl(mylist@dom1.ain)401 b(mylist)416 3673 y -(mylist-request@dom1.ain)41 b(mylist-request)416 3764 -y(#)j(and)h(so)f(on...)0 4050 y Fw(The)20 b(more)f(speci\002c)i +Fm(mail.dom1.com)p Fw(,)f(its)i(def)o(ault)0 4191 y(destination.)0 +4338 y(In)16 b(this)g(case)g(you)f(w)o(ould)g(not)g(include)g +Fm(dom1.ain)g Fw(in)h Fj(POSTFIX)p 1958 4338 V 28 w(STYLE)p +2217 4338 V 30 w(VIRTU)m(AL)p 2577 4338 V 29 w(DOMAINS)g +Fw(because)f(otherwise)g(Mailman)0 4437 y(will)21 b(write)f(entries)g +(for)g(mailing)f(lists)j(in)e(the)h(dom1.ain)d(domain)g(as)416 +4676 y Fl(mylist@dom1.ain)401 b(mylist)416 4767 y +(mylist-request@dom1.ain)41 b(mylist-request)416 4858 +y(#)j(and)h(so)f(on...)0 5145 y Fw(The)20 b(more)f(speci\002c)i (entries)f(trump)f(your)g(more)g(general)g(entries,)h(thus)g(breaking)e (the)j(deli)n(v)o(ery)d(of)i(an)o(y)f Fm(dom1.ain)h Fw(mailing)f(list.) -0 4197 y(Ho)n(we)n(v)o(er)m(,)f(you)h(w)o(ould)h(include)f +0 5292 y(Ho)n(we)n(v)o(er)m(,)f(you)h(w)o(ould)h(include)f Fm(dom2.ain)g Fw(and)h Fm(dom3.ain)f Fw(in)i(`)p Fv(mm)p -2196 4197 42 4 v 45 w(cfg.p)n(y)p Fw(':)416 4436 y Fl -(POSTFIX_STYLE_VIRTUAL_DOMAINS)40 b(=)k(['dom2.ain',)f('dom3.ain'])0 -4722 y Fw(No)n(w)-5 b(,)48 b(an)o(y)42 b(list)h(that)g(Mailman)f -(creates)h(in)g(either)f(of)h(those)f(tw)o(o)h(domains,)k(will)d(ha)n -(v)o(e)e(the)h(correct)e(entries)i(written)f(to)0 4822 -y(`)p Fv(/usr/local/mailman/data/vir)r(tua)o(l-mai)o(lma)o(n)p -Fw('.)0 4969 y(As)34 b(abo)o(v)o(e)e(with)h(the)g(`)p -Fv(data/aliases*)p Fw(')d(\002les,)37 b(you)32 b(w)o(ant)i(to)f(mak)o -(e)g(sure)g(that)g(both)g(`)p Fv(data/vir)s(tual-mailman)p -Fw(')27 b(and)33 b(`)p Fv(data/vir)s(tual-)0 5068 y(mailman.db)p -Fw(')18 b(are)i(user)g(and)f(group)g(o)n(wned)g(by)h -Fm(mailman)p Fw(.)p 0 5549 3901 4 v 0 5649 a Fp(6.1)83 -b(Using)24 b(the)f(P)l(ost\002x)f(mail)j(ser)r(v)n(er)2606 -b(9)p eop end +2196 5292 23 4 v 27 w(cfg.p)n(y)p Fw(':)p 0 5549 3901 +4 v 0 5649 a Fp(6.1)83 b(Using)24 b(the)f(P)l(ost\002x)f(mail)j(ser)r +(v)n(er)2606 b(9)p eop end %%Page: 10 10 -TeXDict begin 10 9 bop 0 83 a Fp(An)24 b(alter)r(nativ)n(e)g(approach)0 -286 y Fw(Fil)d Fv(\002l@rez)o(o)m(.net)d Fw(has)j(an)f(alternati)n(v)o +TeXDict begin 10 9 bop 416 174 a Fl(POSTFIX_STYLE_VIRTUAL_DOMAINS)40 +b(=)k(['dom2.ain',)f('dom3.ain'])0 461 y Fw(No)n(w)-5 +b(,)48 b(an)o(y)42 b(list)h(that)g(Mailman)f(creates)h(in)g(either)f +(of)h(those)f(tw)o(o)h(domains,)k(will)d(ha)n(v)o(e)e(the)h(correct)e +(entries)i(written)f(to)0 560 y(`)p Fv(/usr/local/mailman/data/vir)r +(tua)o(l-mai)o(lma)o(n)p Fw('.)0 707 y(As)34 b(abo)o(v)o(e)e(with)h +(the)g(`)p Fv(data/aliases*)p Fw(')d(\002les,)37 b(you)32 +b(w)o(ant)i(to)f(mak)o(e)g(sure)g(that)g(both)g(`)p Fv(data/vir)s +(tual-mailman)p Fw(')27 b(and)33 b(`)p Fv(data/vir)s(tual-)0 +807 y(mailman.db)p Fw(')18 b(are)i(user)g(and)f(group)g(o)n(wned)g(by)h +Fm(mailman)p Fw(.)0 1075 y Fp(An)k(alter)r(nativ)n(e)g(approach)0 +1278 y Fw(Fil)d Fv(\002l@rez)o(o)m(.net)d Fw(has)j(an)f(alternati)n(v)o (e)f(approach)f(based)i(on)f(virtual)h(maps)g(and)g(re)o(gular)e(e)o -(xpressions,)h(as)i(described)e(at:)125 516 y Fd(\017)41 +(xpressions,)h(as)i(described)e(at:)125 1508 y Fd(\017)41 b Fw(\(French\))18 b Fv(http://listes)o(.rez)o(o)m(.net/comment.p)o(hp) -125 682 y Fd(\017)41 b Fw(\(English\))18 b Fv(http://listes)o(.rez)o(o) -m(.net/ho)o(w)-5 b(.p)o(hp)0 912 y Fw(This)29 b(is)h(a)g(good)d(\(and)h -(simpler\))h(alternati)n(v)o(e)e(if)j(you)e(don')o(t)f(mind)i(e)o -(xposing)e(an)i(additional)e(hostname)h(in)h(the)g(domain)f(part)h(of)0 -1011 y(the)c(addresses)f(people)f(will)j(use)e(to)h(contact)f(your)f -(list.)40 b(I.e.)d(if)25 b(people)f(should)f(use)i Fm -(mylist@lists.dom.ain)d Fw(instead)i(of)0 1111 y Fm(mylist@dom.ain)p -Fw(.)0 1396 y Fo(6.2)100 b(Using)28 b(the)h(Exim)f(mail)g(ser)s(v)n(er) -0 1599 y Fr(Note:)70 b Fw(This)25 b(section)g(is)h(deri)n(v)o(ed)e +125 1674 y Fd(\017)41 b Fw(\(English\))18 b Fv(http://listes)o(.rez)o +(o)m(.net/ho)o(w)-5 b(.p)o(hp)0 1904 y Fw(This)29 b(is)h(a)g(good)d +(\(and)h(simpler\))h(alternati)n(v)o(e)e(if)j(you)e(don')o(t)f(mind)i +(e)o(xposing)e(an)i(additional)e(hostname)h(in)h(the)g(domain)f(part)h +(of)0 2004 y(the)c(addresses)f(people)f(will)j(use)e(to)h(contact)f +(your)f(list.)40 b(I.e.)d(if)25 b(people)f(should)f(use)i +Fm(mylist@lists.dom.ain)d Fw(instead)i(of)0 2103 y Fm(mylist@dom.ain)p +Fw(.)0 2388 y Fo(6.2)100 b(Using)28 b(the)h(Exim)f(mail)g(ser)s(v)n(er) +0 2591 y Fr(Note:)70 b Fw(This)25 b(section)g(is)h(deri)n(v)o(ed)e (from)g(Nigel)h(Metheringham')-5 b(s)23 b(\223HO)m(WT)o(O)i(-)h(Using)f -(Exim)f(and)h(Mailman)f(together\224,)h(which)0 1698 +(Exim)f(and)h(Mailman)f(together\224,)h(which)0 2691 y(co)o(v)o(ers)d(Mailman)g(2.0.x)g(and)h(Exim)f(3.)34 b(It)23 b(has)g(been)g(updated)e(to)j(co)o(v)o(er)d(Mailman)i(2.1)f (and)h(Exim)f(4.)34 b(The)23 b(original)f(document)f(is)0 -1798 y(here:)k Fv(http://www)l(.e)n(xim.org/ho)o(wt)o(o/mai)o(lman)o -(.h)o(tml)-6 b Fw(.)0 1945 y(There)19 b(is)i(no)e(Mailman)g +2790 y(here:)k Fv(http://www)l(.e)n(xim.org/ho)o(wt)o(o/mai)o(lman)o +(.h)o(tml)-6 b Fw(.)0 2937 y(There)19 b(is)i(no)e(Mailman)g (con\002guration)e(needed)i(other)g(than)g(the)h(standard)f(options)g (detailed)g(in)h(the)g(Mailman)f(install)h(documenta-)0 -2045 y(tion.)33 b(The)22 b(Exim)g(con\002guration)e(is)k(transparent)d +3037 y(tion.)33 b(The)22 b(Exim)g(con\002guration)e(is)k(transparent)d (to)i(Mailman.)33 b(The)22 b(user)h(and)f(group)f(settings)i(for)f -(Mailman)h(must)f(match)h(those)0 2144 y(in)d(the)h(con\002g)e -(fragments)g(gi)n(v)o(en)g(belo)n(w)-5 b(.)0 2412 y Fp(Exim)24 -b(con\002gur)o(ation)0 2615 y Fw(The)d(Exim)g(con\002guration)d(is)k(b) +(Mailman)h(must)f(match)h(those)0 3136 y(in)d(the)h(con\002g)e +(fragments)g(gi)n(v)o(en)g(belo)n(w)-5 b(.)0 3405 y Fp(Exim)24 +b(con\002gur)o(ation)0 3608 y Fw(The)d(Exim)g(con\002guration)d(is)k(b) n(uilt)g(so)f(that)g(a)h(list)g(created)f(within)g(Mailman)f (automatically)g(appears)g(to)i(Exim)f(without)f(the)h(need)0 -2715 y(for)f(de\002ning)e(an)o(y)i(additional)f(aliases.)0 -2862 y(The)28 b(dra)o(wback)e(of)h(this)i(con\002guration)c(is)k(that)f +3707 y(for)f(de\002ning)e(an)o(y)i(additional)f(aliases.)0 +3854 y(The)28 b(dra)o(wback)e(of)h(this)i(con\002guration)c(is)k(that)f (it)h(will)f(w)o(ork)f(poorly)g(on)g(systems)i(supporting)c(lists)30 -b(in)e(se)n(v)o(eral)f(dif)n(ferent)f(mail)0 2962 y(domains.)d(While)c +b(in)e(se)n(v)o(eral)f(dif)n(ferent)f(mail)0 3954 y(domains.)d(While)c (Mailman)e(handles)g(virtual)h(domains,)f(it)i(does)e(not)h(yet)g (support)f(ha)n(ving)g(tw)o(o)h(distinct)g(lists)i(with)e(the)g(same)g -(name)0 3061 y(in)23 b(dif)n(ferent)f(virtual)h(domains,)f(using)h(the) +(name)0 4053 y(in)23 b(dif)n(ferent)f(virtual)h(domains,)f(using)h(the) g(same)h(Mailman)e(installation.)34 b(This)23 b(will)h(e)n(v)o (entually)e(change.)33 b(\(But)23 b(see)h(belo)n(w)f(for)f(a)0 -3161 y(v)n(ariation)d(on)h(this)g(scheme)g(that)g(should)g(accommodate) -d(virtual)j(domains)f(better)-5 b(.\))0 3308 y(The)21 +4153 y(v)n(ariation)d(on)h(this)g(scheme)g(that)g(should)g(accommodate) +d(virtual)j(domains)f(better)-5 b(.\))0 4300 y(The)21 b(con\002guration)e(\002le)k(e)o(xcerpts)d(belo)n(w)h(are)h(for)f(use)h (in)g(an)f(already)g(functional)f(Exim)h(con\002guration,)e(which)i -(accepts)g(mail)h(for)0 3407 y(the)i(domain)e(in)h(which)g(the)h(list)g +(accepts)g(mail)h(for)0 4400 y(the)i(domain)e(in)h(which)g(the)h(list)g (resides.)35 b(If)24 b(this)g(domain)e(is)i(separate)f(from)g(the)g (others)g(handled)f(by)h(your)g(Exim)f(con\002guration,)0 -3507 y(then)e(you')o(ll)f(need)g(to:)125 3737 y Fd(\017)41 +4499 y(then)e(you')o(ll)f(need)g(to:)125 4729 y Fd(\017)41 b Fw(add)19 b(the)h(list)i(domain,)c(\223my)-5 b(.list.domain\224)18 -b(to)i Fj(local)p 1728 3737 46 4 v 50 w(domains)125 3903 +b(to)i Fj(local)p 1728 4729 25 4 v 29 w(domains)125 4895 y Fd(\017)41 b Fw(add)19 b(a)i(\223domains=my)-5 b(.list.domain\224)15 b(option)k(to)i(the)f(director)f(\(router\))f(for)i(the)g(list)125 -4069 y Fd(\017)41 b Fw(\(optional\))18 b(e)o(xclude)g(that)j(domain)e -(from)g(your)g(other)g(directors)g(\(routers\))0 4299 +5061 y Fd(\017)41 b Fw(\(optional\))18 b(e)o(xclude)g(that)j(domain)e +(from)g(your)g(other)g(directors)g(\(routers\))0 5291 y Fr(Note:)74 b Fw(The)26 b(instructions)f(in)i(this)f(document)e (should)i(w)o(ork)f(with)i(either)e(Exim)h(3)g(or)g(Exim)g(4.)43 -b(In)26 b(Exim)f(3,)j(you)d(must)i(ha)n(v)o(e)e(a)0 4398 -y Fj(local)p 172 4398 V 50 w(domains)c Fw(con\002guration)e(setting;)k -(in)g(Exim)e(4,)i(you)e(most)h(lik)o(ely)g(ha)n(v)o(e)g(a)h -Fj(local)p 2581 4398 V 49 w(domains)e Fw(domainlist.)30 -b(If)22 b(you)g(don')o(t,)e(you)0 4498 y(probably)26 -b(kno)n(w)g(what)i(you')l(re)e(doing)g(and)i(can)f(adjust)h -(accordingly)-5 b(.)45 b(Similarly)-5 b(,)29 b(in)f(Exim)f(4)h(the)g -(concept)e(of)i(\223directors\224)e(has)0 4598 y(disappeared)d(\226)j -(there)e(are)i(only)e(routers)g(no)n(w)-5 b(.)39 b(So)26 -b(if)f(you')l(re)f(using)g(Exim)h(4,)h(whene)n(v)o(er)e(this)h -(document)f(says)h(\223director\224,)g(read)0 4697 y(\223router\224.)0 -4844 y(Whether)20 b(you)g(are)h(using)f(Exim)g(3)h(or)f(Exim)g(4,)h -(you)f(will)h(need)f(to)h(add)f(some)h(macros)f(to)h(the)g(main)f -(section)g(of)h(your)e(Exim)h(con\002g)0 4944 y(\002le.)33 -b(Y)-9 b(ou)22 b(will)h(also)g(need)f(to)h(de\002ne)f(one)g(ne)n(w)h +b(In)26 b(Exim)f(3,)j(you)d(must)i(ha)n(v)o(e)e(a)0 5391 +y Fj(local)p 172 5391 V 29 w(domains)e Fw(con\002guration)f(setting;)k +(in)f(Exim)f(4,)h(you)e(most)i(lik)o(ely)f(ha)n(v)o(e)g(a)h +Fj(local)p 2586 5391 V 28 w(domains)f Fw(domainlist.)36 +b(If)25 b(you)e(don')o(t,)g(you)p 0 5549 3901 4 v 0 5649 +a Fp(10)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f(mail)h(ser)r(v)n(er)p +eop end +%%Page: 11 11 +TeXDict begin 11 10 bop 0 83 a Fw(probably)26 b(kno)n(w)g(what)i(you')l +(re)e(doing)g(and)i(can)f(adjust)h(accordingly)-5 b(.)45 +b(Similarly)-5 b(,)29 b(in)f(Exim)f(4)h(the)g(concept)e(of)i +(\223directors\224)e(has)0 183 y(disappeared)d(\226)j(there)e(are)i +(only)e(routers)g(no)n(w)-5 b(.)39 b(So)26 b(if)f(you')l(re)f(using)g +(Exim)h(4,)h(whene)n(v)o(er)e(this)h(document)f(says)h +(\223director\224,)g(read)0 282 y(\223router\224.)0 429 +y(Whether)20 b(you)g(are)h(using)f(Exim)g(3)h(or)f(Exim)g(4,)h(you)f +(will)h(need)f(to)h(add)f(some)h(macros)f(to)h(the)g(main)f(section)g +(of)h(your)e(Exim)h(con\002g)0 529 y(\002le.)33 b(Y)-9 +b(ou)22 b(will)h(also)g(need)f(to)h(de\002ne)f(one)g(ne)n(w)h (transport.)30 b(W)m(ith)23 b(Exim)f(3,)i(you')o(ll)d(need)h(to)h(add)f -(a)h(ne)n(w)f(director;)h(with)g(Exim)f(4,)h(a)0 5043 -y(ne)n(w)d(router)f(plays)h(the)g(same)h(role.)0 5190 +(a)h(ne)n(w)f(director;)h(with)g(Exim)f(4,)h(a)0 628 +y(ne)n(w)d(router)f(plays)h(the)g(same)h(role.)0 775 y(Finally)-5 b(,)23 b(the)g(con\002guration)d(supplied)i(here)g(should) g(allo)n(w)h(co-habiting)d(Mailman)i(2.0)h(and)f(2.1)g(installations,)h -(with)g(the)g(pro)o(viso)0 5290 y(that)d(you')o(ll)g(probably)d(w)o -(ant)k(to)f(use)h Fm(mm21)f Fw(in)g(place)g(of)g Fm(mailman)f -Fw(\226)h(e.g.,)g Fj(MM21)p 2489 5290 V 50 w(HOME)r Fw(,)g -Fj(mm21)p 3026 5290 V 50 w(tr)o(ansport)q Fw(,)f(etc.)p -0 5549 3901 4 v 0 5649 a Fp(10)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f -(mail)h(ser)r(v)n(er)p eop end -%%Page: 11 11 -TeXDict begin 11 10 bop 0 83 a Fp(Main)24 b(con\002gur)o(ation)g -(settings)0 286 y Fw(First,)30 b(you)c(need)h(to)g(add)g(some)h(macros) -e(to)i(the)f(top)g(of)g(your)f(Exim)h(con\002g)g(\002le.)47 -b(These)27 b(just)h(mak)o(e)f(the)g(director)g(\(router\))e(and)0 -386 y(transport)16 b(belo)n(w)h(a)i(bit)e(cleaner)-5 +(with)g(the)g(pro)o(viso)0 875 y(that)d(you')o(ll)g(probably)d(w)o(ant) +k(to)f(use)h Fm(mm21)f Fw(in)g(place)g(of)g Fm(mailman)f +Fw(\226)h(e.g.,)g Fj(MM21)p 2489 875 25 4 v 29 w(HOME)r +Fw(,)g Fj(mm21)p 3005 875 V 29 w(tr)o(ansport)q Fw(,)g(etc.)0 +1143 y Fp(Main)k(con\002gur)o(ation)g(settings)0 1346 +y Fw(First,)30 b(you)c(need)h(to)g(add)g(some)h(macros)e(to)i(the)f +(top)g(of)g(your)f(Exim)h(con\002g)g(\002le.)47 b(These)27 +b(just)h(mak)o(e)f(the)g(director)g(\(router\))e(and)0 +1446 y(transport)16 b(belo)n(w)h(a)i(bit)e(cleaner)-5 b(.)24 b(Ob)o(viously)-5 b(,)16 b(you')o(ll)h(need)g(to)g(edit)h(these) g(based)f(on)h(ho)n(w)f(you)f(con\002gured)g(and)h(installed)g -(Mailman.)416 624 y Fl(#)44 b(Home)g(dir)h(for)f(your)g(Mailman)g -(installation)f(--)h(aka)g(Mailman's)g(prefix)416 715 -y(#)g(directory.)416 806 y(MAILMAN_HOME=/usr/local/mailman)416 -898 y(MAILMAN_WRAP=MAILMAN_HOME/mail/mailm)o(an)416 1080 -y(#)g(User)g(and)h(group)f(for)g(Mailman,)g(should)f(match)h(your)g -(--with-mail-gid)416 1172 y(#)g(switch)g(to)h(Mailman's)e(configure)g -(script.)416 1263 y(MAILMAN_USER=mailman)416 1354 y -(MAILMAN_GROUP=mailman)0 1766 y Fp(T)-10 b(r)o(anspor)s(t)23 -b(f)n(or)f(Exim)i(3)0 1969 y Fw(Add)c(this)g(to)h(the)f(transports)f +(Mailman.)416 1684 y Fl(#)44 b(Home)g(dir)h(for)f(your)g(Mailman)g +(installation)f(--)h(aka)g(Mailman's)g(prefix)416 1775 +y(#)g(directory.)416 1867 y(MAILMAN_HOME=/usr/local/mailman)416 +1958 y(MAILMAN_WRAP=MAILMAN_HOME/mail/mailm)o(an)416 +2141 y(#)g(User)g(and)h(group)f(for)g(Mailman,)g(should)f(match)h(your) +g(--with-mail-gid)416 2232 y(#)g(switch)g(to)h(Mailman's)e(configure)g +(script.)416 2323 y(MAILMAN_USER=mailman)416 2415 y +(MAILMAN_GROUP=mailman)0 2826 y Fp(T)-10 b(r)o(anspor)s(t)23 +b(f)n(or)f(Exim)i(3)0 3029 y Fw(Add)c(this)g(to)h(the)f(transports)f (section)h(of)g(your)f(Exim)h(con\002g)f(\002le,)i(i.e.)k(some)n(where) 19 b(between)g(the)h(\002rst)h(and)f(second)f(\223end\224)g(line:)326 -2207 y Fl(mailman_transport:)416 2299 y(driver)43 b(=)i(pipe)416 -2390 y(command)e(=)i(MAILMAN_WRAP)e(\\)864 2481 y('${if)h -(def:local_part_suffix)d(\\)1133 2573 y -({${sg{$local_part_suffix}{-\(\\\\w+\)\(\\\\+.)2842 2586 -y(*)2887 2573 y(\)?}{\\)o($1}}})d(\\)1133 2664 y({post}}')43 -b(\\)864 2755 y($local_part)416 2847 y(current_directory)f(=)i -(MAILMAN_HOME)416 2938 y(home_directory)e(=)j(MAILMAN_HOME)416 -3029 y(user)f(=)g(MAILMAN_USER)416 3121 y(group)g(=)g(MAILMAN_GROUP)0 -3533 y Fp(Director)23 b(f)n(or)f(Exim)i(3)0 3736 y Fw(If)e(you')l(re)e -(using)h(Exim)h(3,)g(you')o(ll)f(need)g(to)h(add)g(the)g(follo)n(wing)e -(director)h(to)h(your)e(con\002g)i(\002le)g(\(directors)f(go)g(between) -g(the)h(second)0 3835 y(and)g(third)g(\223end\224)g(lines\).)33 -b(Also,)23 b(don')o(t)e(for)o(get)g(that)i(order)e(matters)i(\226)g -(e.g.)32 b(you)22 b(can)g(mak)o(e)g(Mailman)h(lists)h(tak)o(e)e -(precedence)f(o)o(v)o(er)0 3935 y(system)f(aliases)h(by)f(putting)f -(this)i(director)e(in)h(front)f(of)h(your)f(alias\002le)i(director)m(,) -e(or)h(vice-v)o(ersa.)326 4173 y Fl(#)45 b(Handle)e(all)i(addresses)e -(related)h(to)g(a)h(list)f('foo':)g(the)g(posting)g(address.)326 -4264 y(#)h(Automatically)d(detects)i(list)g(existence)f(by)i(looking) -326 4356 y(#)g(for)f(lists/$local_part/config.pck)c(under)k -(MAILMAN_HOME.)326 4447 y(mailman_director:)416 4538 -y(driver)f(=)i(smartuser)416 4630 y(require_files)d(=)j -(MAILMAN_HOME/lists/$local_part/config.)o(pck)416 4721 -y(suffix_optional)416 4812 y(suffix)e(=)i(-bounces)f(:)g(-bounces+)1717 -4825 y(*)1805 4812 y(:)h(\\)819 4904 y(-confirm+)1224 -4917 y(*)1312 4904 y(:)g(-join)f(:)h(-leave)e(:)i(\\)819 -4995 y(-owner)f(:)h(-request)e(:)i(-admin)416 5086 y(transport)e(=)i -(mailman_transport)p 0 5549 3901 4 v 0 5649 a Fp(6.2)83 -b(Using)24 b(the)f(Exim)h(mail)g(ser)r(v)n(er)2621 b(11)p -eop end +3268 y Fl(mailman_transport:)416 3359 y(driver)43 b(=)i(pipe)416 +3450 y(command)e(=)i(MAILMAN_WRAP)e(\\)864 3542 y('${if)h +(def:local_part_suffix)d(\\)1133 3633 y +({${sg{$local_part_suffix}{-\(\\\\w+\)\(\\\\+.)o(*\)?}{\\)o($1}}})d(\\) +1133 3724 y({post}}')43 b(\\)864 3816 y($local_part)416 +3907 y(current_directory)f(=)i(MAILMAN_HOME)416 3998 +y(home_directory)e(=)j(MAILMAN_HOME)416 4089 y(user)f(=)g(MAILMAN_USER) +416 4181 y(group)g(=)g(MAILMAN_GROUP)0 4593 y Fp(Director)23 +b(f)n(or)f(Exim)i(3)0 4796 y Fw(If)e(you')l(re)e(using)h(Exim)h(3,)g +(you')o(ll)f(need)g(to)h(add)g(the)g(follo)n(wing)e(director)h(to)h +(your)e(con\002g)i(\002le)g(\(directors)f(go)g(between)g(the)h(second)0 +4895 y(and)g(third)g(\223end\224)g(lines\).)33 b(Also,)23 +b(don')o(t)e(for)o(get)g(that)i(order)e(matters)i(\226)g(e.g.)32 +b(you)22 b(can)g(mak)o(e)g(Mailman)h(lists)h(tak)o(e)e(precedence)f(o)o +(v)o(er)0 4995 y(system)f(aliases)h(by)f(putting)f(this)i(director)e +(in)h(front)f(of)h(your)f(alias\002le)i(director)m(,)e(or)h(vice-v)o +(ersa.)p 0 5549 3901 4 v 0 5649 a Fp(6.2)83 b(Using)24 +b(the)f(Exim)h(mail)g(ser)r(v)n(er)2621 b(11)p eop end %%Page: 12 12 -TeXDict begin 12 11 bop 0 83 a Fp(Router)23 b(f)n(or)g(Exim)g(4)0 -286 y Fw(In)f(Exim)f(4,)h(there')-5 b(s)22 b(no)f(such)h(thing)f(as)h -(directors)f(\226)h(you)f(need)g(to)h(add)f(a)i(ne)n(w)e(router)g -(instead.)30 b(Also,)22 b(the)g(canonical)e(order)h(of)h(the)0 -386 y(con\002guration)f(\002le)j(w)o(as)h(changed)d(so)i(routers)f -(come)g(before)f(transports,)i(so)g(the)f(router)g(for)g(Exim)g(4)h -(comes)g(\002rst)g(here.)35 b(Put)24 b(this)0 485 y(router)19 -b(some)n(where)g(after)h(the)g(\223be)o(gin)f(routers\224)g(line)h(of)g -(your)f(con\002g)g(\002le,)i(and)f(remember)e(that)i(order)f(matters.) -326 723 y Fl(mailman_router:)416 815 y(driver)43 b(=)i(accept)416 -906 y(require_files)d(=)j(MAILMAN_HOME/lists/$local_part/config.)o(pck) -416 997 y(local_part_suffix_optional)416 1089 y(local_part_suffix)d(=)i -(-bounces)g(:)g(-bounces+)2210 1102 y(*)2298 1089 y(:)h(\\)1312 -1180 y(-confirm+)1717 1193 y(*)1805 1180 y(:)g(-join)f(:)h(-leave)e(:)i -(\\)1312 1271 y(-owner)f(:)h(-request)e(:)i(-admin)416 -1363 y(transport)e(=)i(mailman_transport)0 1775 y Fp(T)-10 -b(r)o(anspor)s(ts)22 b(f)n(or)h(Exim)g(4)0 1978 y Fw(The)f(transport)e -(for)i(Exim)f(4)i(is)g(the)f(same)g(as)h(for)e(Exim)h(3)g(\(see)g(6.2;) -g(just)h(cop)o(y)e(the)h(transport)f(gi)n(v)o(en)g(abo)o(v)o(e)f(to)i -(some)n(where)f(under)0 2077 y(the)f(\223be)o(gin)f(transports\224)g -(line)h(of)g(your)f(Exim)h(con\002g)f(\002le.)0 2345 -y Fp(Additional)26 b(notes)0 2548 y Fw(Exim)f(should)f(be)i -(con\002gured)d(to)i(allo)n(w)h(reasonable)e(v)n(olume)g(\226)i(e.g.)40 -b(don')o(t)24 b(set)i Fj(max)p 2583 2548 46 4 v 50 w(r)m(ecipients)f -Fw(do)n(wn)f(to)i(a)g(silly)g(v)n(alue)f(\226)g(and)0 -2648 y(with)c(normal)e(de)o(grees)h(of)g(security)g(\226)h +TeXDict begin 12 11 bop 326 174 a Fl(#)45 b(Handle)e(all)i(addresses)e +(related)h(to)g(a)h(list)f('foo':)g(the)g(posting)g(address.)326 +266 y(#)h(Automatically)d(detects)i(list)g(existence)f(by)i(looking)326 +357 y(#)g(for)f(lists/$local_part/config.pck)c(under)k(MAILMAN_HOME.) +326 448 y(mailman_director:)416 540 y(driver)f(=)i(smartuser)416 +631 y(require_files)d(=)j(MAILMAN_HOME/lists/$local_part/config.)o(pck) +416 722 y(suffix_optional)416 814 y(suffix)e(=)i(-bounces)f(:)g +(-bounces+*)f(:)i(\\)819 905 y(-confirm+*)e(:)i(-join)f(:)h(-leave)e(:) +i(\\)819 996 y(-owner)f(:)h(-request)e(:)i(-admin)416 +1088 y(transport)e(=)i(mailman_transport)0 1500 y Fp(Router)23 +b(f)n(or)g(Exim)g(4)0 1702 y Fw(In)f(Exim)f(4,)h(there')-5 +b(s)22 b(no)f(such)h(thing)f(as)h(directors)f(\226)h(you)f(need)g(to)h +(add)f(a)i(ne)n(w)e(router)g(instead.)30 b(Also,)22 b(the)g(canonical)e +(order)h(of)h(the)0 1802 y(con\002guration)f(\002le)j(w)o(as)h(changed) +d(so)i(routers)f(come)g(before)f(transports,)i(so)g(the)f(router)g(for) +g(Exim)g(4)h(comes)g(\002rst)g(here.)35 b(Put)24 b(this)0 +1902 y(router)19 b(some)n(where)g(after)h(the)g(\223be)o(gin)f +(routers\224)g(line)h(of)g(your)f(con\002g)g(\002le,)i(and)f(remember)e +(that)i(order)f(matters.)326 2140 y Fl(mailman_router:)416 +2231 y(driver)43 b(=)i(accept)416 2323 y(require_files)d(=)j +(MAILMAN_HOME/lists/$local_part/config.)o(pck)416 2414 +y(local_part_suffix_optional)416 2505 y(local_part_suffix)d(=)i +(-bounces)g(:)g(-bounces+*)f(:)i(\\)1312 2597 y(-confirm+*)e(:)i(-join) +f(:)h(-leave)e(:)i(\\)1312 2688 y(-owner)f(:)h(-request)e(:)i(-admin) +416 2779 y(transport)e(=)i(mailman_transport)0 3191 y +Fp(T)-10 b(r)o(anspor)s(ts)22 b(f)n(or)h(Exim)g(4)0 3394 +y Fw(The)f(transport)e(for)i(Exim)f(4)i(is)g(the)f(same)g(as)h(for)e +(Exim)h(3)g(\(see)g(6.2;)g(just)h(cop)o(y)e(the)h(transport)f(gi)n(v)o +(en)g(abo)o(v)o(e)f(to)i(some)n(where)f(under)0 3494 +y(the)f(\223be)o(gin)f(transports\224)g(line)h(of)g(your)f(Exim)h +(con\002g)f(\002le.)0 3762 y Fp(Additional)26 b(notes)0 +3965 y Fw(Exim)g(should)f(be)i(con\002gured)d(to)i(allo)n(w)h +(reasonable)e(v)n(olume)g(\226)h(e.g.)44 b(don')o(t)24 +b(set)k Fj(max)p 2597 3965 25 4 v 29 w(r)m(ecipients)e +Fw(do)n(wn)g(to)g(a)h(silly)g(v)n(alue)f(\226)g(and)0 +4064 y(with)21 b(normal)e(de)o(grees)h(of)g(security)g(\226)h (speci\002cally)-5 b(,)20 b(be)h(sure)f(to)h(allo)n(w)g(relaying)e (from)g(127.0.0.1,)f(b)n(ut)j(pretty)e(much)h(nothing)f(else.)0 -2748 y(P)o(arallel)g(deli)n(v)o(eries)g(and)g(other)f(tweaks)i(can)f +4164 y(P)o(arallel)g(deli)n(v)o(eries)g(and)g(other)f(tweaks)i(can)f (also)h(be)f(used)g(if)h(you)e(lik)o(e;)i(e)o(xperiment)e(with)h(your)f -(setup)i(to)f(see)h(what)f(w)o(orks.)25 b(Delay)0 2847 +(setup)i(to)f(see)h(what)f(w)o(orks.)25 b(Delay)0 4264 y(w)o(arning)17 b(messages)g(should)g(be)h(switched)f(of)n(f)g(or)h (con\002gured)d(to)j(only)f(happen)f(for)h(non-list)g(mail,)h(unless)g -(you)f(lik)o(e)g(recei)n(ving)g(tons)0 2947 y(of)j(mail)g(when)g(some)g -(random)e(host)i(is)i(do)n(wn.)0 3215 y Fp(Prob)n(lems)125 -3404 y Fd(\017)41 b Fw(Mailman)18 b(will)j(send)e(as)h(man)o(y)f -Fm(MAIL)49 b(FROM)p Fw(/)p Fm(RCPT)f(TO)20 b Fw(as)g(it)g(needs.)25 -b(It)19 b(may)g(result)h(in)g(more)e(than)h(10)h(or)f(100)f(messages) -208 3504 y(sent)30 b(in)f(one)g(connection,)h(which)f(will)i(e)o(xceed) -d(the)i(def)o(ault)f(v)n(alue)g(of)g(Exim')-5 b(s)30 -b Fj(smtp)p 2813 3504 V 50 w(accept)p 3081 3504 V 49 -w(queue)p 3330 3504 V 49 w(per)p 3490 3504 V 51 w(connection)208 -3603 y Fw(v)n(alue.)67 b(This)34 b(is)i(bad)e(because)g(it)h(will)g -(cause)f(Exim)g(to)h(switch)g(into)f(queue)f(mode)h(and)g(se)n(v)o -(erely)f(delay)h(deli)n(v)o(ery)f(of)208 3703 y(your)28 -b(list)i(messages.)53 b(The)30 b(w)o(ay)f(to)h(\002x)f(this)h(is)h(to)f -(set)g(Mailman')-5 b(s)29 b Fj(SMTP)p 2499 3703 V 50 -w(MAX)p 2720 3703 V 51 w(SESSIONS)p 3133 3703 V 48 w(PER)p -3334 3703 V 50 w(CONNECTION)208 3803 y Fw(\(in)20 b(`)p -Fk($)p Fj(pr)m(e\002x)p Fp(/Mailman/mm)p 1079 3803 V -51 w(cfg.p)n(y)p Fw('\))f(to)h(a)h(smaller)f(v)n(alue)f(than)h(Exim')-5 -b(s)20 b Fj(smtp)p 2608 3803 V 51 w(accept)p 2877 3803 -V 49 w(queue)p 3126 3803 V 49 w(per)p 3286 3803 V 50 -w(connection)p Fw(.)125 3969 y Fd(\017)41 b Fw(Mailman)14 +(you)f(lik)o(e)g(recei)n(ving)g(tons)0 4363 y(of)j(mail)g(when)g(some)g +(random)e(host)i(is)i(do)n(wn.)0 4632 y Fp(Prob)n(lems)125 +4821 y Fd(\017)41 b Fw(Mailman)26 b(will)i(send)f(as)h(man)o(y)e +Fm(MAIL)49 b(FROM)p Fw(/)p Fm(RCPT)g(TO)27 b Fw(as)h(it)g(needs.)45 +b(It)28 b(may)f(result)g(in)g(more)g(than)g(10)f(or)h(100)g(mes-)208 +4920 y(sages)h(sent)g(in)g(one)f(connection,)g(which)g(will)i(e)o +(xceed)d(the)i(def)o(ault)f(v)n(alue)g(of)h(Exim')-5 +b(s)27 b Fj(smtp)p 2997 4920 V 30 w(accept)p 3245 4920 +V 29 w(queue)p 3474 4920 V 28 w(per)p 3613 4920 V 29 +w(connec-)208 5020 y(tion)f Fw(v)n(alue.)44 b(This)26 +b(is)i(bad)e(because)g(it)i(will)f(cause)g(Exim)f(to)h(switch)g(into)f +(queue)f(mode)h(and)g(se)n(v)o(erely)g(delay)g(deli)n(v)o(ery)f(of)208 +5119 y(your)g(list)i(messages.)45 b(The)26 b(w)o(ay)g(to)h(\002x)g +(this)g(is)g(to)g(set)g(Mailman')-5 b(s)27 b Fj(SMTP)p +2458 5119 V 29 w(MAX)p 2658 5119 V 30 w(SESSIONS)p 3050 +5119 V 27 w(PER)p 3230 5119 V 29 w(CONNECTION)34 b Fw(\(in)208 +5219 y(`)p Fk($)p Fj(pr)m(e\002x)p Fp(/Mailman/mm)p 966 +5219 V 30 w(cfg.p)n(y)p Fw('\))19 b(to)h(a)h(smaller)f(v)n(alue)g(than) +f(Exim')-5 b(s)20 b Fj(smtp)p 2474 5219 V 30 w(accept)p +2722 5219 V 29 w(queue)p 2951 5219 V 28 w(per)p 3090 +5219 V 29 w(connection)p Fw(.)p 0 5549 3901 4 v 0 5649 +a Fp(12)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f(mail)h(ser)r(v)n(er)p +eop end +%%Page: 13 13 +TeXDict begin 13 12 bop 125 83 a Fd(\017)41 b Fw(Mailman)14 b(should)g(ignore)g(Exim)h(delay)g(w)o(arning)f(messages,)i(e)n(v)o(en) e(though)g(Exim)h(should)f(ne)n(v)o(er)g(send)h(this)h(to)f(list)i -(messages.)208 4068 y(Mailman)26 b(2.1')-5 b(s)27 b(general)f(bounce)f +(messages.)208 183 y(Mailman)26 b(2.1')-5 b(s)27 b(general)f(bounce)f (detection)h(and)g(VERP)i(support)e(should)g(greatly)g(impro)o(v)o(e)f -(the)i(bounce)e(detector')-5 b(s)26 b(hit)208 4168 y(rates.)125 -4334 y Fd(\017)41 b Fw(List)20 b(e)o(xistence)f(is)i(determined)d(by)i +(the)i(bounce)e(detector')-5 b(s)26 b(hit)208 282 y(rates.)125 +448 y Fd(\017)41 b Fw(List)20 b(e)o(xistence)f(is)i(determined)d(by)i (the)g(e)o(xistence)f(of)h(a)g(`)p Fv(con\002g.pc)o(k)p Fw(')f(\002le)i(for)e(a)h(list.)26 b(If)20 b(you)f(delete)h(lists)h(by) -f(foul)f(means,)h(be)208 4433 y(a)o(w)o(are)f(of)h(this.)125 -4600 y Fd(\017)41 b Fw(If)26 b(you)g(are)h(getting)f(Exim)g(or)h +f(foul)f(means,)h(be)208 548 y(a)o(w)o(are)f(of)h(this.)125 +714 y Fd(\017)41 b Fw(If)26 b(you)g(are)h(getting)f(Exim)g(or)h (Mailman)f(complaining)e(about)i(user)h(ids)g(when)g(you)e(send)i(mail) -g(to)g(a)g(list,)j(check)c(that)h(the)208 4699 y Fj(MAILMAN)p -582 4699 V 50 w(USER)16 b Fw(and)f Fj(MAILMAN)p 1357 -4699 V 51 w(GR)m(OUP)g Fw(match)g(those)h(of)g(Mailman)f(itself)i -(\(i.e.)23 b(what)16 b(were)g(used)f(in)h(the)g Fr(con\002gur)o(e)208 -4799 y Fw(script\).)24 b(Also)d(mak)o(e)e(sure)i(you)e(do)h(not)f(ha)n +g(to)g(a)g(list,)j(check)c(that)h(the)208 814 y Fj(MAILMAN)p +582 814 25 4 v 29 w(USER)19 b Fw(and)f Fj(MAILMAN)p 1342 +814 V 30 w(GR)m(OUP)h Fw(match)f(those)h(of)g(Mailman)f(itself)i +(\(i.e.)k(what)19 b(were)g(used)g(in)g(the)g Fr(con\002gur)o(e)208 +913 y Fw(script\).)24 b(Also)d(mak)o(e)e(sure)i(you)e(do)h(not)f(ha)n (v)o(e)h(aliases)h(in)g(the)f(main)g(alias)g(\002le)h(for)f(the)g -(list.)0 5067 y Fp(Receiv)n(er)j(V)-7 b(er)q(i\002cation)0 -5270 y Fw(Exim')i(s)20 b(recei)n(v)o(er)e(v)o(eri\002cation)g(feature)h +(list.)0 1182 y Fp(Receiv)n(er)j(V)-7 b(er)q(i\002cation)0 +1384 y Fw(Exim')i(s)20 b(recei)n(v)o(er)e(v)o(eri\002cation)g(feature)h (is)h(v)o(ery)f(useful)g(\226)h(it)g(lets)h(Exim)e(reject)h (unrouteable)d(addresses)i(at)i(SMTP)f(time.)25 b(Ho)n(we)n(v)o(er)m(,) -0 5370 y(this)20 b(is)h(most)f(useful)f(for)g(e)o +0 1484 y(this)20 b(is)h(most)f(useful)f(for)g(e)o (xternally-originating)c(mail)20 b(that)g(is)g(addressed)f(to)h(mail)g (in)f(one)h(of)f(your)g(local)g(domains.)24 b(F)o(or)19 -b(Mailman)p 0 5549 3901 4 v 0 5649 a Fp(12)2827 b(6)83 -b(Set)23 b(up)h(y)n(our)f(mail)h(ser)r(v)n(er)p eop end -%%Page: 13 13 -TeXDict begin 13 12 bop 0 83 a Fw(list)19 b(traf)n(\002c,)f(mail)g -(originates)f(on)h(your)f(serv)o(er)m(,)g(and)g(is)i(addressed)e(to)i -(random)d(e)o(xternal)h(domains)g(that)h(are)g(not)g(under)e(your)h -(control.)0 183 y(Furthermore,)25 b(each)g(message)h(is)h(addressed)d -(to)i(man)o(y)f(recipients)g(\226)h(up)f(to)h(500)f(if)i(you)d(use)j -(Mailman')-5 b(s)25 b(def)o(ault)g(con\002guration)0 -282 y(and)20 b(don')o(t)e(tweak)i Fj(SMTP)p 767 282 46 -4 v 50 w(MAX)p 988 282 V 51 w(RCPTS)q Fw(.)0 429 y(Doing)27 -b(recei)n(v)o(er)f(v)o(eri\002cation)f(on)i(Mailman)g(list)i(traf)n -(\002c)e(is)h(a)g(recipe)f(for)g(trouble.)45 b(In)27 -b(particular)m(,)h(Exim)f(will)h(attempt)f(to)g(route)0 -529 y(e)n(v)o(ery)e(recipient)h(addresses)g(in)h(outgoing)d(Mailman)i -(list)h(posts.)44 b(Ev)o(en)26 b(though)f(this)i(requires)e(nothing)g -(more)h(than)g(a)h(fe)n(w)f(DNS)0 628 y(lookups)20 b(for)h(each)h -(address,)f(it)i(can)e(still)i(introduce)d(signi\002cant)h(delays.)29 -b(Therefore,)20 b(you)h(should)g(disable)g(recipient)g(v)o -(eri\002cation)0 728 y(for)f(Mailman)f(traf)n(\002c.)0 -875 y(Under)g(Exim)h(3,)g(put)g(this)g(in)h(your)e(main)h -(con\002guration)d(section:)416 1113 y Fl(receiver_verify_hosts)41 -b(=)k(!127.0.0.1)0 1400 y Fw(Under)23 b(Exim)h(4,)h(this)g(is)g -(probably)d(already)h(tak)o(en)h(care)g(of)g(for)g(you)f(by)h(the)g -(def)o(ault)g(recipient)f(v)o(eri\002cation)g(A)m(CL)i(statement)f -(\(in)0 1499 y(the)c Fm(RCPT)49 b(TO)21 b Fw(A)m(CL\):)326 -1737 y Fl(accept)89 b(domains)312 b(=)45 b(+local_domains)685 -1829 y(endpass)685 1920 y(message)312 b(=)45 b(unknown)f(user)685 -2011 y(verify)357 b(=)45 b(recipient)0 2298 y Fw(which)24 -b(only)g(does)g(recipient)g(v)o(eri\002cation)f(on)h(addresses)g(in)h -(your)e(domain.)37 b(\(That')-5 b(s)25 b(not)f(e)o(xactly)g(the)g(same) -h(as)g(doing)f(recipient)0 2398 y(v)o(eri\002cation)19 -b(only)g(on)h(messages)g(coming)f(from)g(non-127.0.0.1)c(hosts,)21 -b(b)n(ut)f(it)h(should)e(do)h(the)g(trick)g(for)f(Mailman.\))0 -2664 y Fp(SMTP)24 b(Callbac)n(k)0 2867 y Fw(Exim')-5 -b(s)26 b(SMTP)h(callback)e(feature)h(is)h(an)f(e)n(v)o(en)g(more)f(po)n -(werful)g(w)o(ay)h(to)g(detect)h(bogus)e(sender)g(addresses)h(than)g -(normal)f(sender)0 2967 y(v)o(eri\002cation.)41 b(Unfortunately)-5 -b(,)23 b(lots)k(of)f(serv)o(ers)f(send)g(bounce)g(messages)h(with)g(a)g -(bogus)f(address)g(in)h(the)g(header)m(,)g(and)f(there)h(are)0 -3066 y(plenty)e(that)g(send)h(bounces)e(with)h(bogus)g(en)m(v)o(elope)e +b(Mailman)0 1584 y(list)g(traf)n(\002c,)f(mail)g(originates)f(on)h +(your)f(serv)o(er)m(,)g(and)g(is)i(addressed)e(to)i(random)d(e)o +(xternal)h(domains)g(that)h(are)g(not)g(under)e(your)h(control.)0 +1683 y(Furthermore,)25 b(each)g(message)h(is)h(addressed)d(to)i(man)o +(y)f(recipients)g(\226)h(up)f(to)h(500)f(if)i(you)d(use)j(Mailman')-5 +b(s)25 b(def)o(ault)g(con\002guration)0 1783 y(and)20 +b(don')o(t)e(tweak)i Fj(SMTP)p 767 1783 V 30 w(MAX)p +968 1783 V 29 w(RCPTS)q Fw(.)0 1930 y(Doing)27 b(recei)n(v)o(er)f(v)o +(eri\002cation)f(on)i(Mailman)g(list)i(traf)n(\002c)e(is)h(a)g(recipe)f +(for)g(trouble.)45 b(In)27 b(particular)m(,)h(Exim)f(will)h(attempt)f +(to)g(route)0 2029 y(e)n(v)o(ery)e(recipient)h(addresses)g(in)h +(outgoing)d(Mailman)i(list)h(posts.)44 b(Ev)o(en)26 b(though)f(this)i +(requires)e(nothing)g(more)h(than)g(a)h(fe)n(w)f(DNS)0 +2129 y(lookups)20 b(for)h(each)h(address,)f(it)i(can)e(still)i +(introduce)d(signi\002cant)h(delays.)29 b(Therefore,)20 +b(you)h(should)g(disable)g(recipient)g(v)o(eri\002cation)0 +2229 y(for)f(Mailman)f(traf)n(\002c.)0 2376 y(Under)g(Exim)h(3,)g(put)g +(this)g(in)h(your)e(main)h(con\002guration)d(section:)416 +2614 y Fl(receiver_verify_hosts)41 b(=)k(!127.0.0.1)0 +2900 y Fw(Under)23 b(Exim)h(4,)h(this)g(is)g(probably)d(already)h(tak)o +(en)h(care)g(of)g(for)g(you)f(by)h(the)g(def)o(ault)g(recipient)f(v)o +(eri\002cation)g(A)m(CL)i(statement)f(\(in)0 3000 y(the)c +Fm(RCPT)49 b(TO)21 b Fw(A)m(CL\):)326 3238 y Fl(accept)89 +b(domains)312 b(=)45 b(+local_domains)685 3329 y(endpass)685 +3421 y(message)312 b(=)45 b(unknown)f(user)685 3512 y(verify)357 +b(=)45 b(recipient)0 3799 y Fw(which)24 b(only)g(does)g(recipient)g(v)o +(eri\002cation)f(on)h(addresses)g(in)h(your)e(domain.)37 +b(\(That')-5 b(s)25 b(not)f(e)o(xactly)g(the)g(same)h(as)g(doing)f +(recipient)0 3898 y(v)o(eri\002cation)19 b(only)g(on)h(messages)g +(coming)f(from)g(non-127.0.0.1)c(hosts,)21 b(b)n(ut)f(it)h(should)e(do) +h(the)g(trick)g(for)f(Mailman.\))0 4166 y Fp(SMTP)24 +b(Callbac)n(k)0 4369 y Fw(Exim')-5 b(s)26 b(SMTP)h(callback)e(feature)h +(is)h(an)f(e)n(v)o(en)g(more)f(po)n(werful)g(w)o(ay)h(to)g(detect)h +(bogus)e(sender)g(addresses)h(than)g(normal)f(sender)0 +4469 y(v)o(eri\002cation.)41 b(Unfortunately)-5 b(,)23 +b(lots)k(of)f(serv)o(ers)f(send)g(bounce)g(messages)h(with)g(a)g(bogus) +f(address)g(in)h(the)g(header)m(,)g(and)f(there)h(are)0 +4569 y(plenty)e(that)g(send)h(bounces)e(with)h(bogus)g(en)m(v)o(elope)e (senders)i(\(e)n(v)o(en)f(though)g(the)o(y')l(re)g(supposed)g(to)i -(just)g(use)g(an)f(empty)g(en)m(v)o(elope)0 3166 y(sender)19 -b(for)h(bounces\).)0 3313 y(In)25 b(order)f(to)i(ensure)f(that)g +(just)g(use)g(an)f(empty)g(en)m(v)o(elope)0 4668 y(sender)19 +b(for)h(bounces\).)0 4815 y(In)25 b(order)f(to)i(ensure)f(that)g (Mailman)g(can)h(disable/remo)o(v)o(e)c(bouncing)i(addresses,)i(you)e (generally)g(w)o(ant)i(to)g(recei)n(v)o(e)e(bounces)g(for)0 -3413 y(Mailman)c(lists,)h(e)n(v)o(en)f(if)g(those)g(bounces)f(are)i +4915 y(Mailman)c(lists,)h(e)n(v)o(en)f(if)g(those)g(bounces)f(are)i (themselv)o(es)e(not)h(bounceable.)k(Thus,)19 b(you)h(might)f(w)o(ant)i -(to)f(disable)h(SMTP)f(callback)0 3512 y(on)g(bounce)e(messages.)0 -3659 y(W)m(ith)i(Exim)g(4,)g(you)f(can)h(accomplish)f(this)i(using)f +(to)f(disable)h(SMTP)f(callback)0 5014 y(on)g(bounce)e(messages.)0 +5161 y(W)m(ith)i(Exim)g(4,)g(you)f(can)h(accomplish)f(this)i(using)f (something)e(lik)o(e)j(the)f(follo)n(wing)f(in)h(your)f -Fm(RCPT)49 b(TO)20 b Fw(A)m(CL:)326 3897 y Fl(#)45 b(Accept)e(bounces)h -(to)h(lists)f(even)g(if)g(callbacks)f(or)i(other)f(checks)g(would)g -(fail)326 3989 y(warn)223 b(message)268 b(=)45 b -(X-WhitelistedRCPT-nohdrfromcallback:)39 b(Yes)729 4080 -y(condition)178 b(=)45 b(\\)729 4171 y(${if)g(and)f -({{match{$local_part}{\(.)2168 4184 y(*)2213 4171 y(\)-bounces\\+.)2753 -4184 y(*)2798 4171 y(})o(})39 b(\\)1178 4263 y({exists)k -({MAILMAN_HOME/lists/$1/config.pck}}})c(\\)954 4354 y({yes}{no}})954 -4445 y({yes}{no}})326 4628 y(accept)133 b(condition)178 -b(=)45 b(\\)729 4719 y(${if)g(and)f({{match{$local_part}{\(.)2168 -4732 y(*)2213 4719 y(\)-bounces\\+.)2753 4732 y(*)2798 -4719 y(})o(})39 b(\\)1178 4811 y({exists)k -({MAILMAN_HOME/lists/$1/config.pck}}})c(\\)954 4902 y({yes}{no}})954 -4993 y({yes}{no}})326 5176 y(#)45 b(Now,)f(check)g(sender)g(address)f -(with)h(SMTP)g(callback.)326 5267 y(deny)134 b(!verify)43 -b(=)i(sender/callout=90s)p 0 5549 3901 4 v 0 5649 a Fp(6.2)83 -b(Using)24 b(the)f(Exim)h(mail)g(ser)r(v)n(er)2621 b(13)p -eop end +Fm(RCPT)49 b(TO)20 b Fw(A)m(CL:)p 0 5549 3901 4 v 0 5649 +a Fp(6.2)83 b(Using)24 b(the)f(Exim)h(mail)g(ser)r(v)n(er)2621 +b(13)p eop end %%Page: 14 14 -TeXDict begin 14 13 bop 0 83 a Fw(If)20 b(you)f(also)i(do)f(SMTP)g -(callbacks)g(on)g(header)f(addresses,)g(you')o(ll)h(w)o(ant)g -(something)f(lik)o(e)h(this)h(in)f(your)f Fm(DATA)h Fw(A)m(CL:)326 -321 y Fl(deny)134 b(!condition)43 b(=)i -($header_X-WhitelistedRCPT-nohdrfromc)o(allbac)o(k:)640 -413 y(!verify)e(=)i(header_sender/callout=90s)0 824 y -Fp(Doing)24 b(VERP)g(with)g(Exim)f(and)h(Mailman)0 1027 -y Fw(VERP)30 b(will)g(send)e(one)h(email,)i(with)e(a)g(separate)g(en)m -(v)o(elope)e(sender)h(\(return)f(path\),)j(for)f(each)f(of)h(your)f -(subscribers)g(\226)h(read)g(the)0 1126 y(information)21 +TeXDict begin 14 13 bop 326 174 a Fl(#)45 b(Accept)e(bounces)h(to)h +(lists)f(even)g(if)g(callbacks)f(or)i(other)f(checks)g(would)g(fail)326 +266 y(warn)223 b(message)268 b(=)45 b +(X-WhitelistedRCPT-nohdrfromcallback:)39 b(Yes)729 357 +y(condition)178 b(=)45 b(\\)729 448 y(${if)g(and)f +({{match{$local_part}{\(.*\)-bounces\\+.*})o(})39 b(\\)1178 +540 y({exists)k({MAILMAN_HOME/lists/$1/config.pck}}})c(\\)954 +631 y({yes}{no}})954 722 y({yes}{no}})326 905 y(accept)133 +b(condition)178 b(=)45 b(\\)729 996 y(${if)g(and)f +({{match{$local_part}{\(.*\)-bounces\\+.*})o(})39 b(\\)1178 +1088 y({exists)k({MAILMAN_HOME/lists/$1/config.pck}}})c(\\)954 +1179 y({yes}{no}})954 1270 y({yes}{no}})326 1453 y(#)45 +b(Now,)f(check)g(sender)g(address)f(with)h(SMTP)g(callback.)326 +1544 y(deny)134 b(!verify)43 b(=)i(sender/callout=90s)0 +1831 y Fw(If)20 b(you)f(also)i(do)f(SMTP)g(callbacks)g(on)g(header)f +(addresses,)g(you')o(ll)h(w)o(ant)g(something)f(lik)o(e)h(this)h(in)f +(your)f Fm(DATA)h Fw(A)m(CL:)326 2069 y Fl(deny)134 b(!condition)43 +b(=)i($header_X-WhitelistedRCPT-nohdrfromc)o(allbac)o(k:)640 +2160 y(!verify)e(=)i(header_sender/callout=90s)0 2572 +y Fp(Doing)24 b(VERP)g(with)g(Exim)f(and)h(Mailman)0 +2774 y Fw(VERP)30 b(will)g(send)e(one)h(email,)i(with)e(a)g(separate)g +(en)m(v)o(elope)e(sender)h(\(return)f(path\),)j(for)f(each)f(of)h(your) +f(subscribers)g(\226)h(read)g(the)0 2874 y(information)21 b(in)j(`)p Fk($)p Fj(pr)m(e\002x)p Fp(/Mailman/Def)n(aults)o(.p)n(y)p Fw(')e(for)h(the)h(options)e(that)i(start)f(with)h(VERP)-9 b(.)24 b(In)f(a)h(nutshell,)f(all)h(you)f(need)f(to)i(do)0 -1226 y(to)c(enable)g(VERP)h(with)f(Exim)g(is)h(to)f(add)g(these)g +2974 y(to)c(enable)g(VERP)h(with)f(Exim)g(is)h(to)f(add)g(these)g (lines)h(to)f(`)p Fk($)p Fj(pr)m(e\002x)p Fp(/Mailman/mm)p -2439 1226 46 4 v 51 w(cfg.p)n(y)p Fw(':)416 1464 y Fl -(VERP_PASSWORD_REMINDERS)41 b(=)j(Yes)416 1556 y -(VERP_PERSONALIZED_DELIVERIES)c(=)k(Yes)416 1647 y -(VERP_DELIVERY_INTERVAL)d(=)j(Yes)416 1738 y(VERP_CONFIRMATIONS)d(=)k -(Yes)0 2025 y Fw(\(The)20 b(director)e(\(router\))h(abo)o(v)o(e)f(is)j +2439 2974 25 4 v 31 w(cfg.p)n(y)p Fw(':)416 3212 y Fl +(VERP_PASSWORD_REMINDERS)41 b(=)j(Yes)416 3303 y +(VERP_PERSONALIZED_DELIVERIES)c(=)k(Yes)416 3395 y +(VERP_DELIVERY_INTERVAL)d(=)j(Yes)416 3486 y(VERP_CONFIRMATIONS)d(=)k +(Yes)0 3772 y Fw(\(The)20 b(director)e(\(router\))h(abo)o(v)o(e)f(is)j (smart)g(enough)d(to)i(deal)g(with)h(VERP)g(bounces.\))0 -2293 y Fp(Vir)s(tual)k(Domains)0 2496 y Fw(One)18 b(approach)e(to)j +4041 y Fp(Vir)s(tual)k(Domains)0 4244 y Fw(One)18 b(approach)e(to)j (handling)d(virtual)i(domains)f(is)i(to)g(use)f(a)h(separate)f(Mailman) f(installation)h(for)g(each)g(virtual)f(domain.)23 b(Currently)-5 -b(,)0 2596 y(this)21 b(is)g(the)f(only)f(w)o(ay)i(to)f(ha)n(v)o(e)g +b(,)0 4343 y(this)21 b(is)g(the)f(only)f(w)o(ay)i(to)f(ha)n(v)o(e)g (lists)h(with)g(the)f(same)g(name)g(in)g(dif)n(ferent)f(virtual)g -(domains)g(handled)g(by)h(the)g(same)g(machine.)0 2742 -y(In)f(this)h(case,)g(the)g Fj(MAILMAN)p 909 2742 V 50 -w(HOME)i Fw(and)d Fj(MAILMAN)p 1730 2742 V 51 w(WRAP)g -Fw(macros)g(are)g(useless)i(\226)e(you)g(can)g(remo)o(v)o(e)f(them.)24 -b(Change)19 b(your)0 2842 y(director)g(\(router\))f(to)j(something)d -(lik)o(e)j(this:)326 3080 y Fl(require_files)43 b(=)h +(domains)g(handled)g(by)h(the)g(same)g(machine.)0 4490 +y(In)i(this)g(case,)h(the)f Fj(MAILMAN)p 919 4490 V 29 +w(HOME)j Fw(and)c Fj(MAILMAN)p 1724 4490 V 30 w(WRAP)h +Fw(macros)f(are)h(useless)g(\226)g(you)f(can)h(remo)o(v)o(e)e(them.)30 +b(Change)21 b(your)0 4590 y(director)e(\(router\))f(to)j(something)d +(lik)o(e)j(this:)326 4828 y Fl(require_files)43 b(=)h (/virtual/${domain}/mailman/lists/${lc:$l)o(ocal_p)o(art}/c)o(onfig.)o -(pck)0 3367 y Fw(and)20 b(change)f(your)f(transport)h(lik)o(e)i(this:) -326 3605 y Fl(command)44 b(=)g(/virtual/${domain}/mailman/mail/mailman) -38 b(\\)774 3696 y(${if)44 b(def:local_part_suffix)e(\\)998 -3788 y({${sg{$local_part_suffix}{-\(\\\\w+\)\(\\\\+.)2708 -3801 y(*)2753 3788 y(\)?)o(}{\\$1})o(}})998 3879 y({post}})i(\\)864 -3970 y($local_part)326 4062 y(current_directory)e(=)j -(/virtual/${domain}/mailman)326 4153 y(home_directory)d(=)j -(/virtual/${domain}/mailman)0 4565 y Fp(List)23 b(V)-7 -b(er)q(i\002cation)0 4768 y Fw(This)33 b(is)g(ho)n(w)f(a)h(set)g(of)f +(pck)0 5114 y Fw(and)20 b(change)f(your)f(transport)h(lik)o(e)i(this:)p +0 5549 3901 4 v 0 5649 a Fp(14)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f +(mail)h(ser)r(v)n(er)p eop end +%%Page: 15 15 +TeXDict begin 15 14 bop 326 174 a Fl(command)44 b(=)g +(/virtual/${domain}/mailman/mail/mailman)38 b(\\)774 +266 y(${if)44 b(def:local_part_suffix)e(\\)998 357 y +({${sg{$local_part_suffix}{-\(\\\\w+\)\(\\\\+.*\)?)o(}{\\$1})o(}})998 +448 y({post}})i(\\)864 540 y($local_part)326 631 y(current_directory)e +(=)j(/virtual/${domain}/mailman)326 722 y(home_directory)d(=)j +(/virtual/${domain}/mailman)0 1130 y Fp(List)23 b(V)-7 +b(er)q(i\002cation)0 1333 y Fw(This)33 b(is)g(ho)n(w)f(a)h(set)g(of)f (address)g(tests)i(for)e(the)h(Exim)e(lists)j(look)e(on)g(a)h(w)o (orking)e(system.)62 b(The)32 b(list)i(in)e(question)g(is)h -Fv(quixote-)0 4867 y(users@mems-e)n(xchange)o(.org)p +Fv(quixote-)0 1432 y(users@mems-e)n(xchange)o(.org)p Fw(,)21 b(and)i(these)g(commands)f(were)h(run)g(on)g(the)h Fm(mems-exchange.org)c Fw(mail)k(serv)o(er)f(\(\224\045)g(\224)h(indi-) -0 4967 y(cates)d(the)f(Unix)g(shell)g(prompt\):)p 0 5549 -3901 4 v 0 5649 a Fp(14)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f(mail)h -(ser)r(v)n(er)p eop end -%%Page: 15 15 -TeXDict begin 15 14 bop 326 174 a Fl(\045)45 b(exim)f(-bt)g -(quixote-users)326 266 y(quixote-users@mems-exchange.org)416 -357 y(router)f(=)i(mailman_main_router,)d(transport)h(=)h -(mailman_transport)326 540 y(\045)h(exim)f(-bt)g(quixote-users-request) -326 631 y(quixote-users-request@mems-exchange.or)o(g)416 -722 y(router)f(=)i(mailman_router,)d(transport)i(=)g(mailman_transport) -326 905 y(\045)h(exim)f(-bt)g(quixote-users-bounces)326 -996 y(quixote-users-bounces@mems-exchange.or)o(g)416 -1088 y(router)f(=)i(mailman_router,)d(transport)i(=)g -(mailman_transport)326 1270 y(\045)h(exim)f(-bt)g -(quixote-users-bounces+luser=example.com)326 1362 y -(quixote-users-bounces+luser=example.co)o(m@mems)o(-excha)o(nge.or)o(g) -416 1453 y(router)f(=)i(mailman_router,)d(transport)i(=)g -(mailman_transport)0 1740 y Fw(If)21 b(your)e Fr(exim)i(-bt)g +0 1532 y(cates)d(the)f(Unix)g(shell)g(prompt\):)326 1770 +y Fl(\045)45 b(exim)f(-bt)g(quixote-users)326 1861 y +(quixote-users@mems-exchange.org)416 1953 y(router)f(=)i +(mailman_main_router,)d(transport)h(=)h(mailman_transport)326 +2135 y(\045)h(exim)f(-bt)g(quixote-users-request)326 +2227 y(quixote-users-request@mems-exchange.or)o(g)416 +2318 y(router)f(=)i(mailman_router,)d(transport)i(=)g +(mailman_transport)326 2501 y(\045)h(exim)f(-bt)g +(quixote-users-bounces)326 2592 y +(quixote-users-bounces@mems-exchange.or)o(g)416 2683 +y(router)f(=)i(mailman_router,)d(transport)i(=)g(mailman_transport)326 +2866 y(\045)h(exim)f(-bt)g(quixote-users-bounces+luser=example.com)326 +2957 y(quixote-users-bounces+luser=example.co)o(m@mems)o(-excha)o +(nge.or)o(g)416 3049 y(router)f(=)i(mailman_router,)d(transport)i(=)g +(mailman_transport)0 3336 y Fw(If)21 b(your)e Fr(exim)i(-bt)g Fw(output)f(looks)g(something)f(lik)o(e)i(this,)h(that')-5 b(s)21 b(a)g(start:)27 b(at)22 b(least)f(it)h(means)e(Exim)g(will)i -(pass)f(the)g(right)f(messages)h(to)0 1840 y(the)d(right)f(Mailman)g +(pass)f(the)g(right)f(messages)h(to)0 3435 y(the)d(right)f(Mailman)g (commands.)22 b(It)c(by)f(no)h(means)f(guarantees)f(that)i(your)f (Exim/Mailman)f(installation)h(is)i(functioning)c(perfectly)-5 -b(,)0 1939 y(though!)0 2207 y Fp(Document)23 b(Histor)r(y)0 -2410 y Fw(Originally)h(written)h(by)g(Nigel)g(Metheringham)e -Fv(postmaster@e)n(xim.org)p Fw(.)38 b(Updated)24 b(by)h(Marc)g(Merlin)g -Fv(marc)p 3293 2410 42 4 v 45 w(soft@mer)q(lins)o(.org)0 -2509 y Fw(for)20 b(Mailman)f(2.1,)g(Exim)h(4.)25 b(Ov)o +b(,)0 3535 y(though!)0 3799 y Fp(Document)23 b(Histor)r(y)0 +4002 y Fw(Originally)j(written)g(by)h(Nigel)g(Metheringham)d +Fv(postmaster@e)n(xim.org)p Fw(.)42 b(Updated)26 b(by)g(Marc)h(Merlin)f +Fv(marc)p 3311 4002 23 4 v 27 w(soft@mer)q(lins)o(.org)0 +4101 y Fw(for)20 b(Mailman)f(2.1,)g(Exim)h(4.)25 b(Ov)o (erhauled/reformatted/clari\002ed/simp)o(li\002ed)15 b(by)k(Gre)o(g)h(W)-7 b(ard)20 b Fv(gw)o(ard@p)n(ython.net)p -Fw(.)0 2793 y Fo(6.3)100 b(Using)28 b(the)h(Sendmail)h(mail)e(ser)s(v)n -(er)p 0 2944 3901 17 v 0 3787 17 844 v 75 3059 a Fr(W)-5 -b(ar)o(ning:)97 b Fw(Y)-9 b(ou)32 b(may)f(be)h(tempted)f(to)i(set)f -(the)h Fj(DELIVER)o(Y)p 2011 3059 46 4 v 49 w(MODULE)h -Fw(con\002guration)29 b(v)n(ariable)i(in)i(`)p Fv(mm)p -3462 3059 42 4 v 45 w(cfg.p)n(y)p Fw(')f(to)75 3158 y -Fm('Sendmail')18 b Fw(when)i(using)f(the)h(Sendmail)f(mail)h(serv)o(er) --5 b(.)25 b Fr(Don't)p Fw(.)f(The)19 b(`)p Fv(Sendmail.p)n(y)p -Fw(')e(module)i(is)h(misnamed)f(\226)h(it')-5 b(s)21 -b(really)75 3258 y(a)k(command)e(line)i(based)f(message)h(handof)n(f)e -(scheme)h(as)i(opposed)d(to)i(the)g(SMTP)g(scheme)g(used)f(in)h(`)p -Fv(SMTPDirect.p)n(y)p Fw(')e(\(the)75 3358 y(def)o(ault\).)31 -b(`)p Fv(Sendmail.p)n(y)p Fw(')19 b(has)k(kno)n(wn)e(security)h(holes)h -(and)f(is)h(pro)o(vided)d(as)k(a)f(proof-of-concept)18 -b(only)3165 3328 y Fc(a)3196 3358 y Fw(.)33 b(If)23 b(you)e(are)i(ha)n -(ving)75 3457 y(problems)i(using)i(`)p Fv(SMTPDirect.p)n(y)p -Fw(')e(\002x)j(those)f(instead)g(of)g(using)f(`)p Fv(Sendmail.p)n(y)p -Fw(',)g(or)g(you)h(may)f(open)h(your)f(system)h(up)g(to)75 -3557 y(security)19 b(e)o(xploits.)p 75 3628 1501 4 v -165 3681 a Fb(a)194 3705 y Fq(In)e(f)o(act,)h(in)g(later)g(v)o(ersions) -g(of)f(Mailman,)h(this)g(module)g(is)e(e)o(xplicitly)21 +Fw(.)0 4382 y Fo(6.3)100 b(Using)28 b(the)h(Sendmail)h(mail)e(ser)s(v)n +(er)p 0 4532 3901 17 v 0 5375 17 844 v 75 4647 a Fr(W)-5 +b(ar)o(ning:)107 b Fw(Y)-9 b(ou)34 b(may)g(be)g(tempted)g(to)h(set)g +(the)g Fj(DELIVER)o(Y)p 2038 4647 25 4 v 28 w(MODULE)i +Fw(con\002guration)32 b(v)n(ariable)h(in)i(`)p Fv(mm)p +3478 4647 23 4 v 27 w(cfg.p)n(y)p Fw(')f(to)75 4747 y +Fm('Sendmail')c Fw(when)h(using)g(the)h(Sendmail)f(mail)g(serv)o(er)-5 +b(.)59 b Fr(Don't)p Fw(.)g(The)31 b(`)p Fv(Sendmail.p)n(y)p +Fw(')e(module)h(is)j(misnamed)d(\226)i(it')-5 b(s)75 +4847 y(really)20 b(a)i(command)d(line)i(based)g(message)g(handof)n(f)e +(scheme)i(as)h(opposed)d(to)i(the)g(SMTP)h(scheme)f(used)g(in)g(`)p +Fv(SMTPDirect.p)n(y)p Fw(')75 4946 y(\(the)27 b(def)o(ault\).)45 +b(`)p Fv(Sendmail.p)n(y)p Fw(')24 b(has)k(kno)n(wn)e(security)h(holes)g +(and)g(is)h(pro)o(vided)d(as)j(a)g(proof-of-concept)22 +b(only)3388 4916 y Fc(a)3420 4946 y Fw(.)47 b(If)27 b(you)g(are)75 +5046 y(ha)n(ving)c(problems)f(using)i(`)p Fv(SMTPDirect.p)n(y)p +Fw(')d(\002x)k(those)e(instead)h(of)g(using)f(`)p Fv(Sendmail.p)n(y)p +Fw(',)f(or)h(you)h(may)f(open)g(your)g(system)75 5145 +y(up)c(to)i(security)e(e)o(xploits.)p 75 5217 1501 4 +v 165 5270 a Fb(a)194 5293 y Fq(In)e(f)o(act,)h(in)g(later)g(v)o +(ersions)g(of)f(Mailman,)h(this)g(module)g(is)e(e)o(xplicitly)21 b(sabotaged.)i(Y)-7 b(ou)16 b(ha)o(v)o(e)i(to)f(kno)n(w)h(what)g(you')m (re)f(doing)h(in)f(order)h(to)g(re-enable)h(it.)p 3883 -3787 17 844 v 0 3803 3901 17 v 0 4079 a Fp(Sendmail)25 -b(\223smrsh\224)c(compatibility)0 4282 y Fw(Man)o(y)16 -b(ne)n(wer)h(v)o(ersions)f(of)h(Sendmail)g(come)g(with)g(a)h -(restricted)f(e)o(x)o(ecution)e(utility)i(called)h(\223smrsh\224,)f -(which)g(limits)h(the)f(e)o(x)o(ecutables)0 4382 y(that)j(Sendmail)g -(will)h(allo)n(w)f(to)h(be)f(used)g(as)h(mail)g(programs.)i(Y)-9 -b(ou)20 b(need)g(to)g(e)o(xplicitly)g(allo)n(w)g(Mailman')-5 -b(s)20 b(wrapper)f(program)f(to)j(be)0 4481 y(used)f(with)g(smrsh)h(or) -f(Mailman)f(will)i(not)f(w)o(ork.)25 b(If)20 b(mail)g(is)i(not)d -(getting)h(deli)n(v)o(ered)e(to)j(Mailman')-5 b(s)20 -b(wrapper)f(program)f(and)h(you')l(re)0 4581 y(getting)g(an)i -(\223operating)d(system)i(error\224)f(in)h(your)f(mail)i(syslog,)e -(this)i(could)e(be)h(your)f(problem.)0 4728 y(One)h(good)f(w)o(ay)h(of) -g(enabling)f(this)h(is:)125 4953 y Fd(\017)41 b Fw(Find)20 -b(out)f(where)h(your)f(Sendmail)g(e)o(x)o(ecutes)g(its)j(smrsh)e -(wrapper)982 5176 y Fl(\045)44 b(grep)h(smrsh)f(/etc/mail/sendmail.cf)p -0 5549 3901 4 v 0 5649 a Fp(6.3)83 b(Using)24 b(the)f(Sendmail)i(mail)g -(ser)r(v)n(er)2459 b(15)p eop end +5375 17 844 v 0 5392 3901 17 v 0 5549 3901 4 v 0 5649 +a Fp(6.3)83 b(Using)24 b(the)f(Sendmail)i(mail)g(ser)r(v)n(er)2459 +b(15)p eop end %%Page: 16 16 -TeXDict begin 16 15 bop 125 83 a Fd(\017)41 b Fw(Figure)21 -b(out)h(where)f(smrsh)h(e)o(xpects)f(symlinks)g(for)h(allo)n(w)o(able)f -(mail)h(programs.)29 b(At)22 b(the)g(v)o(ery)f(be)o(ginning)f(of)h(the) -h(follo)n(wing)208 183 y(output)d(you)g(will)i(see)g(a)f(full)g(path)g -(to)g(some)g(directory)-5 b(,)18 b(e.g.)25 b(`)p Fv(/v)n(ar/adm/sm.bin) -p Fw(')17 b(or)j(similar:)982 407 y Fl(\045)44 b(strings)g -($path_to_smrsh)f(|)h(less)125 804 y Fd(\017)d Fw(cd)20 -b(into)g(`)p Fv(/v)n(ar/adm/sm.bin)p Fw(',)e(or)i(where)f(e)n(v)o(er)h -(it)h(happens)e(to)h(reside)h(on)f(your)f(system)h(\226)h(alternati)n -(v)o(es)e(include)g(`)p Fv(/etc/smrsh)p Fw(',)208 903 -y(`)p Fv(/v)n(ar/smrsh)p Fw(')g(and)h(`)p Fv(/usr/local/smrsh)p -Fw('.)982 1128 y Fl(\045)44 b(cd)h(/var/adm/sm.bin)125 -1525 y Fd(\017)c Fw(Create)20 b(a)h(symbolic)e(link)h(to)g(Mailman')-5 -b(s)20 b(wrapper)f(program:)982 1749 y Fl(\045)44 b(ln)h(-s)f -(/usr/local/mailman/mail/mailman)c(mailman)0 2253 y Fp(Integ)o(r)o -(ating)25 b(Sendmail)g(and)e(Mailman)0 2456 y Fw(Da)n(vid)k(Champion)f +TeXDict begin 16 15 bop 0 83 a Fp(Sendmail)25 b(\223smrsh\224)c +(compatibility)0 286 y Fw(Man)o(y)16 b(ne)n(wer)h(v)o(ersions)f(of)h +(Sendmail)g(come)g(with)g(a)h(restricted)f(e)o(x)o(ecution)e(utility)i +(called)h(\223smrsh\224,)f(which)g(limits)h(the)f(e)o(x)o(ecutables)0 +386 y(that)j(Sendmail)g(will)h(allo)n(w)f(to)h(be)f(used)g(as)h(mail)g +(programs.)i(Y)-9 b(ou)20 b(need)g(to)g(e)o(xplicitly)g(allo)n(w)g +(Mailman')-5 b(s)20 b(wrapper)f(program)f(to)j(be)0 485 +y(used)f(with)g(smrsh)h(or)f(Mailman)f(will)i(not)f(w)o(ork.)25 +b(If)20 b(mail)g(is)i(not)d(getting)h(deli)n(v)o(ered)e(to)j(Mailman') +-5 b(s)20 b(wrapper)f(program)f(and)h(you')l(re)0 585 +y(getting)g(an)i(\223operating)d(system)i(error\224)f(in)h(your)f(mail) +i(syslog,)e(this)i(could)e(be)h(your)f(problem.)0 732 +y(One)h(good)f(w)o(ay)h(of)g(enabling)f(this)h(is:)125 +962 y Fd(\017)41 b Fw(Find)20 b(out)f(where)h(your)f(Sendmail)g(e)o(x)o +(ecutes)g(its)j(smrsh)e(wrapper)982 1186 y Fl(\045)44 +b(grep)h(smrsh)f(/etc/mail/sendmail.cf)125 1583 y Fd(\017)d +Fw(Figure)21 b(out)h(where)f(smrsh)h(e)o(xpects)f(symlinks)g(for)h +(allo)n(w)o(able)f(mail)h(programs.)29 b(At)22 b(the)g(v)o(ery)f(be)o +(ginning)f(of)h(the)h(follo)n(wing)208 1682 y(output)d(you)g(will)i +(see)g(a)f(full)g(path)g(to)g(some)g(directory)-5 b(,)18 +b(e.g.)25 b(`)p Fv(/v)n(ar/adm/sm.bin)p Fw(')17 b(or)j(similar:)982 +1907 y Fl(\045)44 b(strings)g($path_to_smrsh)f(|)h(less)125 +2304 y Fd(\017)d Fw(cd)20 b(into)g(`)p Fv(/v)n(ar/adm/sm.bin)p +Fw(',)e(or)i(where)f(e)n(v)o(er)h(it)h(happens)e(to)h(reside)h(on)f +(your)f(system)h(\226)h(alternati)n(v)o(es)e(include)g(`)p +Fv(/etc/smrsh)p Fw(',)208 2403 y(`)p Fv(/v)n(ar/smrsh)p +Fw(')g(and)h(`)p Fv(/usr/local/smrsh)p Fw('.)982 2627 +y Fl(\045)44 b(cd)h(/var/adm/sm.bin)125 3024 y Fd(\017)c +Fw(Create)20 b(a)h(symbolic)e(link)h(to)g(Mailman')-5 +b(s)20 b(wrapper)f(program:)982 3248 y Fl(\045)44 b(ln)h(-s)f +(/usr/local/mailman/mail/mailman)c(mailman)0 3752 y Fp(Integ)o(r)o +(ating)25 b(Sendmail)g(and)e(Mailman)0 3955 y Fw(Da)n(vid)k(Champion)f (has)i(contrib)n(uted)d(a)j(recipe)e(for)h(more)g(closely)g(inte)o (grating)e(Sendmail)i(and)g(Mailman,)h(such)f(that)g(Sendmail)0 -2555 y(will)20 b(automatically)e(recognize)g(and)h(deli)n(v)o(er)f(to)h +4055 y(will)20 b(automatically)e(recognize)g(and)h(deli)n(v)o(er)f(to)h (ne)n(w)h(mailing)e(lists)j(as)f(the)o(y)f(are)g(created,)g(without)f -(ha)n(ving)h(to)g(manually)f(edit)i(alias)0 2655 y(tables.)0 -2802 y(In)g(the)g(`)p Fv(contr)q(ib)p Fw(')f(directory)f(of)i(Mailman') +(ha)n(ving)h(to)g(manually)f(edit)i(alias)0 4154 y(tables.)0 +4301 y(In)g(the)g(`)p Fv(contr)q(ib)p Fw(')f(directory)f(of)i(Mailman') -5 b(s)20 b(source)f(distrib)n(ution,)g(you)g(will)i(\002nd)f(four)f -(\002les:)125 3032 y Fd(\017)41 b Fw(`)p Fv(mm-handler)l(.readme)p +(\002les:)125 4531 y Fd(\017)41 b Fw(`)p Fv(mm-handler)l(.readme)p Fw(')15 b(-)21 b(an)f(e)o(xplanation)e(of)i(ho)n(w)f(to)i(set)g(e)n(v)o -(erything)c(up)125 3198 y Fd(\017)41 b Fw(`)p Fv(mm-handler)p +(erything)c(up)125 4697 y Fd(\017)41 b Fw(`)p Fv(mm-handler)p Fw(')17 b(-)k(the)f(mail)g(deli)n(v)o(ery)f(agent)g(\(MD)m(A\))125 -3364 y Fd(\017)41 b Fw(`)p Fv(mailman.mc)p Fw(')18 b(-)j(a)f(to)o(y)g -(con\002guration)e(\002le)j(sample)125 3530 y Fd(\017)41 +4863 y Fd(\017)41 b Fw(`)p Fv(mailman.mc)p Fw(')18 b(-)j(a)f(to)o(y)g +(con\002guration)e(\002le)j(sample)125 5029 y Fd(\017)41 b Fw(`)p Fv(vir)s(tuser)s(tab)o(le)p Fw(')16 b(-)k(a)h(sample)f(for)g -(RFC)h(2142)e(address)h(e)o(xceptions)0 3798 y Fp(P)l(erf)n(or)r(mance) -j(notes)0 4001 y Fw(One)f(of)f(the)h(surest)h(performance)c(killers)j +(RFC)h(2142)e(address)h(e)o(xceptions)p 0 5549 3901 4 +v 0 5649 a Fp(16)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f(mail)h(ser)r(v)n +(er)p eop end +%%Page: 17 17 +TeXDict begin 17 16 bop 0 83 a Fp(P)l(erf)n(or)r(mance)23 +b(notes)0 286 y Fw(One)f(of)f(the)h(surest)h(performance)c(killers)j (for)f(Sendmail)g(users)h(is)h(when)f(Sendmail)f(is)i(con\002gured)c -(to)j(synchronously)d(v)o(erify)i(the)0 4100 y(recipient')-5 +(to)j(synchronously)d(v)o(erify)i(the)0 386 y(recipient')-5 b(s)24 b(host)g(via)h(DNS.)f(If)h(it)g(does)f(this)h(for)f(messages)g (posted)g(to)h(it)g(from)e(Mailman,)i(you)e(will)i(get)g(horrible)e -(performance.)0 4200 y(Since)f(Mailman)f(usually)g(connects)f(via)i +(performance.)0 485 y(Since)f(Mailman)f(usually)g(connects)f(via)i Fm(localhost)e Fw(\(i.e.)29 b(127.0.0.1\))18 b(to)k(the)g(SMTP)g(port)f -(of)g(Sendmail,)g(you)g(should)f(be)i(sure)0 4300 y(to)e(con\002gure)f +(of)g(Sendmail,)g(you)g(should)f(be)i(sure)0 585 y(to)e(con\002gure)f (Sendmail)g(to)h Fr(not)g Fw(do)g(DNS)h(v)o(eri\002cation)e -(synchronously)e(for)i(localhost)h(connections.)0 4585 +(synchronously)e(for)i(localhost)h(connections.)0 864 y Fo(6.4)100 b(Using)28 b(the)h(Qmail)e(mail)i(ser)s(v)n(er)0 -4788 y Fw(There)18 b(are)i(some)f(issues)h(that)f(users)h(of)f(the)g +1067 y Fw(There)18 b(are)i(some)f(issues)h(that)f(users)h(of)f(the)g (qmail)g(mail)g(transport)f(agent)h(ha)n(v)o(e)g(encountered.)j(None)c -(of)h(the)g(core)g(maintainers)f(use)0 4887 y(qmail,)23 +(of)h(the)g(core)g(maintainers)f(use)0 1167 y(qmail,)23 b(so)h(all)f(of)g(this)h(information)c(has)j(been)g(contrib)n(uted)e (by)h(the)i(Mailman)e(user)h(community)-5 b(,)21 b(especially)h(Martin) -h(Preishuber)0 4987 y(and)d(Christian)g(T)m(ismer)m(,)f(with)i(notes)f +h(Preishuber)0 1266 y(and)d(Christian)g(T)m(ismer)m(,)f(with)i(notes)f (by)f(Balazs)j(Nagy)d(\(BN\))i(and)e(Norbert)g(Bollo)n(w)h(\(NB\).)125 -5217 y Fd(\017)41 b Fw(Y)-9 b(ou)17 b(might)h(need)f(to)i(set)g(the)f +1466 y Fd(\017)41 b Fw(Y)-9 b(ou)17 b(might)h(need)f(to)i(set)g(the)f (mail-gid)f(user)h(to)g(either)g Fm(qmail)p Fw(,)g Fm(mailman)p Fw(,)g(or)g Fm(nofiles)f Fw(by)h(using)g(the)g Fr(--with-mail-gid)208 -5316 y(con\002gur)o(e)h Fw(option.)p 0 5549 3901 4 v -0 5649 a Fp(16)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f(mail)h(ser)r(v)n -(er)p eop end -%%Page: 17 17 -TeXDict begin 17 16 bop 208 83 a Fj(BN:)21 b Fw(it)h(highly)e(depends)g -(on)h(your)e(mail)j(storing)e(polic)o(y)-5 b(.)27 b(F)o(or)20 -b(e)o(xample)g(if)i(you)e(use)h(the)h(simple)f(`)p Fv -(\230alias/.qmail-*)p Fw(')c(\002les,)22 b(you)208 183 -y(can)e(use)g Fr(`id)h(-g)f(alias`)p Fw(.)k(But)d(if)f(you)g(use)g(`)p -Fv(/v)n(ar/qmail/users)p Fw(',)d(the)j(speci\002ed)g(mail)h(gid)f(can)g -(be)g(used.)208 315 y(If)27 b(you)g(are)g(going)g(to)h(be)f(directing)g -(virtual)g(domains)f(directly)h(to)h(the)g Fm(mailman)e -Fw(user)i(\(using)f(\223virtualdomains\224)e(on)i(a)208 -415 y(list-only)h(domain,)i(for)f(e)o(xample\),)h(you)e(will)i(ha)n(v)o -(e)f(to)h(use)f Fr(--with-mail-gid)p Fw(=)p Fj(gid)e(of)i(mailman)g -(user')m(s)g(gr)l(oup)p Fw(.)52 b(This)30 b(is)208 515 +1566 y(con\002gur)o(e)h Fw(option.)208 1692 y Fj(BN:)i +Fw(it)h(highly)e(depends)g(on)h(your)e(mail)j(storing)e(polic)o(y)-5 +b(.)27 b(F)o(or)20 b(e)o(xample)g(if)i(you)e(use)h(the)h(simple)f(`)p +Fv(\230alias/.qmail-*)p Fw(')c(\002les,)22 b(you)208 +1792 y(can)e(use)g Fr(`id)h(-g)f(alias`)p Fw(.)k(But)d(if)f(you)g(use)g +(`)p Fv(/v)n(ar/qmail/users)p Fw(',)d(the)j(speci\002ed)g(mail)h(gid)f +(can)g(be)g(used.)208 1919 y(If)27 b(you)g(are)g(going)g(to)h(be)f +(directing)g(virtual)g(domains)f(directly)h(to)h(the)g +Fm(mailman)e Fw(user)i(\(using)f(\223virtualdomains\224)e(on)i(a)208 +2018 y(list-only)h(domain,)i(for)f(e)o(xample\),)h(you)e(will)i(ha)n(v) +o(e)f(to)h(use)f Fr(--with-mail-gid)p Fw(=)p Fj(gid)e(of)i(mailman)g +(user')m(s)g(gr)l(oup)p Fw(.)52 b(This)30 b(is)208 2118 y(incompatible)18 b(with)i(ha)n(ving)f(list)j(aliases)f(in)f(`)p Fv(\230alias)p Fw(',)e(unless)j(that)f(alias)h(simply)f(forw)o(ards)f -(to)h Fm(mailman-listname)3794 530 y(*)3844 515 y Fw(.)125 -681 y Fd(\017)41 b Fw(If)26 b(there)g(is)h(a)g(user)f -Fm(mailman)f Fw(on)h(your)f(system,)j(the)f(alias)g Fm(mailman-owner)d -Fw(will)j(w)o(ork)f(only)f(in)i(`)p Fv(\230mailman)p -Fw('.)41 b(Y)-9 b(ou)208 780 y(ha)n(v)o(e)19 b(to)h(do)g(a)h -Fr(touch)f(.qmail-o)o(wner)g Fw(in)g(`)p Fv(\230mailman)p -Fw(')e(directory)h(to)h(create)g(this)h(alias.)208 913 -y Fj(NB:)26 b Fw(An)f(alternati)n(v)o(e,)h(IMHO)g(better)f(solution)g -(is)h(to)g Fr(cho)o(wn)g(r)o(oot)f(\230mailman)p Fw(,)i(that)e(will)i -(stop)f(qmail)f(from)g(considering)208 1013 y Fm(mailman)19 -b Fw(to)h(be)g(a)h(user)f(to)h(whom)e(mail)h(can)g(be)g(deli)n(v)o -(ered.)j(\(See)e(\223man)e(8)i(qmail-getpw\224.\))125 -1179 y Fd(\017)41 b Fw(In)18 b(a)h(related)f(issue,)h(if)g(you)e(ha)n +(to)h Fm(mailman-listname*)p Fw(.)125 2272 y Fd(\017)41 +b Fw(If)26 b(there)g(is)h(a)g(user)f Fm(mailman)f Fw(on)h(your)f +(system,)j(the)f(alias)g Fm(mailman-owner)d Fw(will)j(w)o(ork)f(only)f +(in)i(`)p Fv(\230mailman)p Fw('.)41 b(Y)-9 b(ou)208 2372 +y(ha)n(v)o(e)19 b(to)h(do)g(a)h Fr(touch)f(.qmail-o)o(wner)g +Fw(in)g(`)p Fv(\230mailman)p Fw(')e(directory)h(to)h(create)g(this)h +(alias.)208 2498 y Fj(NB:)26 b Fw(An)f(alternati)n(v)o(e,)h(IMHO)g +(better)f(solution)g(is)h(to)g Fr(cho)o(wn)g(r)o(oot)f(\230mailman)p +Fw(,)i(that)e(will)i(stop)f(qmail)f(from)g(considering)208 +2598 y Fm(mailman)19 b Fw(to)h(be)g(a)h(user)f(to)h(whom)e(mail)h(can)g +(be)g(deli)n(v)o(ered.)j(\(See)e(\223man)e(8)i(qmail-getpw\224.\))125 +2752 y Fd(\017)41 b Fw(In)18 b(a)h(related)f(issue,)h(if)g(you)e(ha)n (v)o(e)h(an)o(y)g(users)h(with)f(the)h(same)g(name)f(as)h(one)f(of)g (your)f(mailing)h(lists,)i(you)e(will)h(ha)n(v)o(e)f(problems)208 -1279 y(if)30 b(list)i(names)e(contain)f(`)p Fm(-)p Fw(')h(in)g(them.)55 +2851 y(if)30 b(list)i(names)e(contain)f(`)p Fm(-)p Fw(')h(in)g(them.)55 b(Putting)30 b(`)p Fv(.qmail)p Fw(')f(redirections)f(into)j(the)f (user')-5 b(s)30 b(home)g(directory)e(doesn')o(t)h(w)o(ork)208 -1378 y(because)22 b(the)g(Mailman)g(wrappers)g(will)h(not)g(get)g(spa)o +2951 y(because)22 b(the)g(Mailman)g(wrappers)g(will)h(not)g(get)g(spa)o (wned)e(with)i(the)g(proper)e(GID.)h(The)h(solution)f(is)h(to)g(put)f -(the)h(follo)n(wing)208 1478 y(lines)d(in)g(the)h(`)p +(the)h(follo)n(wing)208 3051 y(lines)d(in)g(the)h(`)p Fv(/v)n(ar/qmail/users/assign)p Fw(')16 b(\002le:)533 -1702 y Fl(+zope-:alias:112:11:/var/qmail/alias:-:zop)o(e-:)533 -1793 y(.)208 2066 y Fw(where)j(in)h(this)h(case)g(the)f(listname)g(is)h -(e.g.)k Fm(zope-users)p Fw(.)208 2199 y Fj(NB:)g Fw(Alternati)n(v)o +3269 y Fl(+zope-:alias:112:11:/var/qmail/alias:-:zop)o(e-:)533 +3360 y(.)208 3627 y Fw(where)j(in)h(this)h(case)g(the)f(listname)g(is)h +(e.g.)k Fm(zope-users)p Fw(.)208 3753 y Fj(NB:)g Fw(Alternati)n(v)o (ely)-5 b(,)24 b(you)g(could)g(host)h(the)g(lists)h(on)f(a)g(virtual)f (domain,)h(and)f(use)h(the)g(`)p Fv(/v)n(ar/qmail/control/vir)s(tualdo) -o(mai)o(ns)p Fw(')208 2298 y(\002le)20 b(to)h(put)f(the)g +o(mai)o(ns)p Fw(')208 3853 y(\002le)20 b(to)h(put)f(the)g Fm(mailman)f Fw(user)h(in)h(char)o(ge)d(of)i(this)h(virtual)e(domain.) -125 2464 y Fd(\017)41 b Fj(BN:)p Fw(If)32 b(inbound)e(messages)j(are)f +125 4007 y Fd(\017)41 b Fj(BN:)p Fw(If)32 b(inbound)e(messages)j(are)f (deli)n(v)o(ered)f(by)h(another)g(user)g(than)g Fm(mailman)p Fw(,)j(it')-5 b(s)34 b(necessary)e(to)g(allo)n(w)h(it)g(to)g(access)208 -2564 y(`)p Fv(\230mailman)p Fw('.)26 b(Be)d(sure)e(that)g(`)p +4106 y(`)p Fv(\230mailman)p Fw('.)26 b(Be)d(sure)e(that)g(`)p Fv(\230mailman)p Fw(')f(has)i(group)d(writing)i(access)h(and)f(setgid)h (bit)f(is)i(set.)29 b(Then)21 b(put)g(the)g(deli)n(v)o(ering)f(user)208 -2664 y(to)f Fm(mailman)f Fw(group,)f(and)i(you)f(can)h(den)o(y)f +4206 y(to)f Fm(mailman)f Fw(group,)f(and)i(you)f(can)h(den)o(y)f (access)i(to)f(`)p Fv(\230mailman)p Fw(')e(to)i(others.)24 b(Be)c(sure)f(that)g(you)f(can)h(do)g(the)g(same)g(with)h(the)208 -2763 y(WWW)h(service.)208 2896 y(By)50 b(the)g(w)o(ay)g(the)g(best)g +4306 y(WWW)h(service.)208 4432 y(By)50 b(the)g(w)o(ay)g(the)g(best)g (thing)f(is)i(to)f(mak)o(e)f(a)i(virtual)e(mail)h(serv)o(er)f(to)h (handle)f(all)h(of)g(the)g(mail.)114 b Fj(NB:)50 b Fw(E.g.)208 -2996 y(mak)o(e)c(an)h(additional)f(\224A\224)h(DNS)h(record)d(for)i +4532 y(mak)o(e)c(an)h(additional)f(\224A\224)h(DNS)h(record)d(for)i (the)g(virtual)f(mailserv)o(er)g(pointing)g(to)h(your)f(IP)h(address,) -53 b(add)47 b(the)208 3095 y(line)54 b Fm(lists.kva.hu:mailman)c +53 b(add)47 b(the)208 4632 y(line)54 b Fm(lists.kva.hu:mailman)c Fw(to)k(`)p Fv(/v)n(ar/qmail/control/vir)s(tualdo)o(mai)o(ns)p Fw(')48 b(and)54 b(a)g Fm(lists.kva.hu)e Fw(line)i(to)208 -3195 y(`)p Fv(/v)n(ar/qmail/control/rcpthosts)p Fw(')16 +4731 y(`)p Fv(/v)n(ar/qmail/control/rcpthosts)p Fw(')16 b(\002le.)32 b(Don')o(t)21 b(for)o(get)f(to)j(HUP)g(the)f(qmail-send)f (after)g(modifying)f(\223virtualdomains\224.)28 b(Then)208 -3294 y(e)n(v)o(ery)18 b(mail)j(to)f(lists.kv)n(a.hu)f(will)i(arri)n(v)o +4831 y(e)n(v)o(ery)18 b(mail)j(to)f(lists.kv)n(a.hu)f(will)i(arri)n(v)o (e)e(to)h(mail.kv)n(a.hu')-5 b(s)18 b(mailman)i(user)-5 -b(.)208 3427 y(Then)19 b(mak)o(e)h(your)f(aliases:)892 -3651 y Fl(.qmail)627 b(=>)44 b(mailman@...'s)f(letters)892 -3743 y(.qmail-owner)357 b(=>)44 b(mailman-owner's)f(letters)208 -4015 y Fw(F)o(or)19 b(list)j(aliases,)f(you)e(can)h(either)g(create)g -(them)f(manually:)892 4239 y Fl(.qmail-list)402 b(=>)44 -b(posts)g(to)h(the)f('list')g(list)892 4331 y(.qmail-list-admin)132 -b(=>)44 b(posts)g(to)h(the)f('list's)g(owner)892 4422 -y(.qmail-list-request)e(=>)i(requests)g(to)g('list')892 -4513 y(etc)208 4786 y Fw(or)c(for)h(automatic)f(list)i(alias)g -(handling)e(\(when)g(using)g(the)i(lists.kv)n(a.hu)d(virtual)i(as)h -(abo)o(v)o(e\),)i(see)e(`)p Fv(contr)q(ib/qmail-to-)208 -4886 y(mailman.p)n(y)p Fw(')18 b(in)i(the)g(Mailman)g(source)f(distrib) -n(ution.)24 b(Modify)19 b(the)h(`)p Fv(\230mailman/.qmail-def)n(au)o -(lt)p Fw(')14 b(to)21 b(include:)892 5110 y Fl(|preline)44 -b(/path/to/python)e(/path/to/qmail-to-mailman.py)208 -5382 y Fw(and)19 b(ne)n(w)h(lists)i(will)f(automatically)d(be)j(pick)o -(ed)e(up.)p 0 5549 3901 4 v 0 5649 a Fp(6.4)83 b(Using)24 -b(the)f(Qmail)h(mail)g(ser)r(v)n(er)2589 b(17)p eop end +b(.)208 4958 y(Then)19 b(mak)o(e)h(your)f(aliases:)892 +5176 y Fl(.qmail)627 b(=>)44 b(mailman@...'s)f(letters)892 +5267 y(.qmail-owner)357 b(=>)44 b(mailman-owner's)f(letters)p +0 5549 3901 4 v 0 5649 a Fp(6.4)83 b(Using)24 b(the)f(Qmail)h(mail)g +(ser)r(v)n(er)2589 b(17)p eop end %%Page: 18 18 -TeXDict begin 18 17 bop 125 83 a Fd(\017)41 b Fw(Y)-9 -b(ou)21 b(ha)n(v)o(e)h(to)g(mak)o(e)g(sure)g(that)g(the)g(localhost)g -(can)g(relay)-5 b(.)30 b(If)22 b(you)f(start)i(qmail)f(via)g(inetd)g -(and)f(tcpen)m(v)-5 b(,)21 b(you)g(need)g(some)h(line)208 -183 y(the)e(follo)n(wing)e(in)j(your)e(`)p Fv(/etc/hosts)o(.allo)o(w)p -Fw(')d(\002le:)713 407 y Fl(tcp-env:)43 b(127.)h(10.205.200.)f(:)i -(setenv)f(RELAYCLIENT)208 679 y Fw(where)18 b(10.205.200.)j(is)f(your)e -(IP)i(address)f(block.)k(If)c(you)g(use)g(tcpserv)o(er)m(,)f(then)g -(you)h(need)f(something)g(lik)o(e)i(the)f(follo)n(wing)e(in)208 -779 y(your)h(`)p Fv(/etc/tcp)m(.smtp)p Fw(')i(\002le:)713 -1003 y Fl(10.205.200.:allow,RELAYCLIENT="")713 1094 y -(127.:allow,RELAYCLIENT="")125 1400 y Fd(\017)41 b Fj(BN:)23 +TeXDict begin 18 17 bop 208 83 a Fw(F)o(or)19 b(list)j(aliases,)f(you)e +(can)h(either)g(create)g(them)f(manually:)892 307 y Fl(.qmail-list)402 +b(=>)44 b(posts)g(to)h(the)f('list')g(list)892 399 y(.qmail-list-admin) +132 b(=>)44 b(posts)g(to)h(the)f('list's)g(owner)892 +490 y(.qmail-list-request)e(=>)i(requests)g(to)g('list')892 +581 y(etc)208 854 y Fw(or)c(for)h(automatic)f(list)i(alias)g(handling)e +(\(when)g(using)g(the)i(lists.kv)n(a.hu)d(virtual)i(as)h(abo)o(v)o +(e\),)i(see)e(`)p Fv(contr)q(ib/qmail-to-)208 953 y(mailman.p)n(y)p +Fw(')18 b(in)i(the)g(Mailman)g(source)f(distrib)n(ution.)24 +b(Modify)19 b(the)h(`)p Fv(\230mailman/.qmail-def)n(au)o(lt)p +Fw(')14 b(to)21 b(include:)892 1177 y Fl(|preline)44 +b(/path/to/python)e(/path/to/qmail-to-mailman.py)208 +1450 y Fw(and)19 b(ne)n(w)h(lists)i(will)f(automatically)d(be)j(pick)o +(ed)e(up.)125 1616 y Fd(\017)41 b Fw(Y)-9 b(ou)21 b(ha)n(v)o(e)h(to)g +(mak)o(e)g(sure)g(that)g(the)g(localhost)g(can)g(relay)-5 +b(.)30 b(If)22 b(you)f(start)i(qmail)f(via)g(inetd)g(and)f(tcpen)m(v)-5 +b(,)21 b(you)g(need)g(some)h(line)208 1716 y(the)e(follo)n(wing)e(in)j +(your)e(`)p Fv(/etc/hosts)o(.allo)o(w)p Fw(')d(\002le:)713 +1940 y Fl(tcp-env:)43 b(127.)h(10.205.200.)f(:)i(setenv)f(RELAYCLIENT) +208 2212 y Fw(where)18 b(10.205.200.)j(is)f(your)e(IP)i(address)f +(block.)k(If)c(you)g(use)g(tcpserv)o(er)m(,)f(then)g(you)h(need)f +(something)g(lik)o(e)i(the)f(follo)n(wing)e(in)208 2312 +y(your)h(`)p Fv(/etc/tcp)m(.smtp)p Fw(')i(\002le:)713 +2536 y Fl(10.205.200.:allow,RELAYCLIENT="")713 2627 y +(127.:allow,RELAYCLIENT="")125 2933 y Fd(\017)41 b Fj(BN:)23 b Fw(Bigger)f(`)p Fv(/v)n(ar/qmail/control/concurrencyremo)o(te)p Fw(')17 b(v)n(alues)22 b(w)o(ork)g(better)h(sending)e(outbound)f -(messages,)j(within)g(rea-)208 1500 y(son.)43 b(Unless)27 +(messages,)j(within)g(rea-)208 3033 y(son.)43 b(Unless)27 b(you)e(kno)n(w)g(your)h(system)g(can)g(handle)g(it)h(\(man)o(y)d(if)j (not)f(most)g(cannot\))f(this)i(should)f(not)g(be)g(set)h(to)f(a)h(v)n -(alue)208 1599 y(greater)19 b(than)g(120.)125 1765 y +(alue)208 3132 y(greater)19 b(than)g(120.)125 3298 y Fd(\017)41 b Fw(More)19 b(information)f(about)h(setting)h(up)g(qmail)g (and)g(relaying)e(can)i(be)h(found)d(in)i(the)h(qmail)e(documentation.) -0 1995 y Fj(BN:)24 b Fw(Last)g(b)n(ut)f(not)h(least,)h(here')-5 +0 3528 y Fj(BN:)24 b Fw(Last)g(b)n(ut)f(not)h(least,)h(here')-5 b(s)23 b(a)h(little)g(script)g(to)g(generate)e(aliases)i(to)g(your)e (lists)j(\(if)f(for)f(some)g(reason)g(you)f(can/will)i(not)f(ha)n(v)o -(e)0 2095 y(them)d(automatically)f(pick)o(ed)g(up)h(using)f(`)p -Fv(contr)q(ib/qmail-to-mailman.p)m(y)p Fw('\):)0 2242 +(e)0 3628 y(them)d(automatically)f(pick)o(ed)g(up)h(using)f(`)p +Fv(contr)q(ib/qmail-to-mailman.p)m(y)p Fw('\):)0 3775 y(This)h(script)h(is)g(for)e(the)h(Mailman)g(2.0)g(series:)236 -2480 y Fl(#!/bin/sh)236 2571 y(if)45 b([)f($#)h(=)g(1)f(];)h(then)416 -2663 y(i=$1)416 2754 y(echo)f(Making)g(links)g(to)g($i)h(in)f(the)g -(current)g(directory...)416 2845 y(echo)g("|preline)f +4013 y Fl(#!/bin/sh)236 4104 y(if)45 b([)f($#)h(=)g(1)f(];)h(then)416 +4196 y(i=$1)416 4287 y(echo)f(Making)g(links)g(to)g($i)h(in)f(the)g +(current)g(directory...)416 4378 y(echo)g("|preline)f (/home/mailman/mail/mailman)d(post)45 b($i")f(>)h(.qmail-$i)416 -2937 y(echo)f("|preline)f(/home/mailman/mail/mailman)d(mailowner)k($i") -g(>)h(.qmail-$i-admin)416 3028 y(echo)f("|preline)f +4469 y(echo)f("|preline)f(/home/mailman/mail/mailman)d(mailowner)k($i") +g(>)h(.qmail-$i-admin)416 4561 y(echo)f("|preline)f (/home/mailman/mail/mailman)d(mailowner)k($i")g(>)h(.qmail-$i-owner)416 -3119 y(echo)f("|preline)f(/home/mailman/mail/mailman)d(mailowner)k($i") -g(>)h(.qmail-owner-$i)416 3211 y(echo)f("|preline)f +4652 y(echo)f("|preline)f(/home/mailman/mail/mailman)d(mailowner)k($i") +g(>)h(.qmail-owner-$i)416 4743 y(echo)f("|preline)f (/home/mailman/mail/mailman)d(mailcmd)k($i")g(>)h(.qmail-$i-request)236 -3302 y(fi)0 3588 y Fr(Note:)81 b Fw(This)28 b(is)h(for)e(a)h(ne)n(w)g +4835 y(fi)0 5121 y Fr(Note:)81 b Fw(This)28 b(is)h(for)e(a)h(ne)n(w)g (Mailman)f(2.1)h(installation.)47 b(Users)29 b(upgrading)c(from)i (Mailman)g(2.0)g(w)o(ould)g(most)h(lik)o(ely)g(change)0 -3688 y(`)p Fv(/usr/local/mailman)p Fw(')19 b(to)k(`)p +5221 y(`)p Fv(/usr/local/mailman)p Fw(')19 b(to)k(`)p Fv(/home/mailman)p Fw('.)30 b(If)23 b(in)g(doubt,)f(refer)g(to)h(the)g Fr(--pr)o(e\002x)f Fw(option)g(passed)h(to)g Fr(con\002gur)o(e)f -Fw(during)g(compile)0 3788 y(time.)p 0 5549 3901 4 v +Fw(during)g(compile)0 5321 y(time.)p 0 5549 3901 4 v 0 5649 a Fp(18)2827 b(6)83 b(Set)23 b(up)h(y)n(our)f(mail)h(ser)r(v)n (er)p eop end %%Page: 19 19 @@ -1684,30 +1732,30 @@ o(o)f(options.)24 b(The)19 b(\002rst)h(option)e(is)i(to)f(allo)n(w)h (Mailman)e(to)i(do)e(the)i(VERP)g(formatting.)i(T)-7 b(o)0 2450 y(acti)n(v)n(ate)20 b(this,)g(uncomment)e(that)i(line)h(and) e(add)h(the)g(follo)n(wing)f(lines)h(to)h(your)e(`)p -Fv(mm)p 2477 2450 42 4 v 45 w(cfg.p)n(y)p Fw(')h(\002le:)416 +Fv(mm)p 2477 2450 23 4 v 27 w(cfg.p)n(y)p Fw(')g(\002le:)416 2688 y Fl(VERP_FORMAT)43 b(=)h ('\045\(bounces\)s-+\045\(mailbox\)s=\045\(host\)s')416 -2779 y(VERP_REGEXP)f(=)h(r'\210\(?P<bounces>.)1763 2792 -y(*)1808 2779 y(?\)-\\+\(?P<mailbox>[\210=]+\))o(=\(?P<h)o(ost>[\210)o -(@]+\)@.)3649 2792 y(*)3694 2779 y($')0 3066 y Fw(The)20 -b(second)f(option)g(is)i(a)g(patch)e(on)h(SourceF)o(or)o(ge)d(located)j -(at:)0 3213 y Fv(http://sourcef)n(orge)o(.net/t)o(r)o(ac)o(k)o(e)o(r/?) -o(fun)o(c=de)o(tai)o(l&a)o(tid)o(=3)o(00)o(10)o(3&a)o(id=)o(64)o(55)o -(13)o(&g)o(rou)o(p)p 2530 3213 V 39 w(id=103)0 3359 y -Fw(This)i(patch)f(currently)f(needs)h(more)g(testing)h(and)f(might)g -(best)h(be)g(suitable)g(for)f(de)n(v)o(elopers)e(or)j(people)f(well)h -(f)o(amiliar)f(with)h(qmail.)0 3459 y(Ha)n(ving)e(said)g(that,)g(this)h -(patch)e(is)i(the)g(more)e(qmail-friendly)e(approach)h(resulting)i(in)g -(lar)o(ge)f(performance)f(gains.)0 3727 y Fp(Vir)s(tual)25 -b(mail)f(ser)r(v)n(er)0 3930 y Fw(As)d(mentioned)d(in)j(the)f(6.4)f -(section)h(for)g(a)g(virtual)g(mail)g(serv)o(er)m(,)f(a)i(patch)e -(under)g(testing)h(is)h(located)f(at:)0 4077 y Fv(http://sf)n(.net/tr)o -(ac)o(k)o(er/ind)o(e)n(x.p)o(hp)o(?fu)o(nc=d)o(eta)o(il)o(&ai)o(d=)o -(621)o(25)o(7&g)n(rou)o(p)p 2053 4077 V 39 w(id=103&atid=300103)0 -4224 y Fw(Again,)f(this)i(patch)e(is)i(for)f(people)f(f)o(amiliar)h -(with)g(their)g(qmail)g(installation.)0 4492 y Fp(More)j(inf)n(or)r -(mation)0 4695 y Fw(Y)-9 b(ou)25 b(might)h(be)g(interested)f(in)h(some) -g(information)d(on)j(modifying)d(footers)j(that)g(Norbert)e(Bollo)n(w)i +2779 y(VERP_REGEXP)f(=)h +(r'\210\(?P<bounces>.*?\)-\\+\(?P<mailbox>[\210=]+\))o(=\(?P<h)o +(ost>[\210)o(@]+\)@.)o(*$')0 3066 y Fw(The)20 b(second)f(option)g(is)i +(a)g(patch)e(on)h(SourceF)o(or)o(ge)d(located)j(at:)0 +3213 y Fv(http://sourcef)n(orge)o(.net/t)o(r)o(ac)o(k)o(e)o(r/?)o(fun)o +(c=de)o(tai)o(l&a)o(tid)o(=3)o(00)o(10)o(3&a)o(id=)o(64)o(55)o(13)o(&g) +o(rou)o(p)p 2530 3213 V 20 w(id=103)0 3359 y Fw(This)i(patch)f +(currently)f(needs)h(more)g(testing)h(and)f(might)g(best)h(be)g +(suitable)g(for)f(de)n(v)o(elopers)e(or)j(people)f(well)h(f)o(amiliar)f +(with)h(qmail.)0 3459 y(Ha)n(ving)e(said)g(that,)g(this)h(patch)e(is)i +(the)g(more)e(qmail-friendly)e(approach)h(resulting)i(in)g(lar)o(ge)f +(performance)f(gains.)0 3727 y Fp(Vir)s(tual)25 b(mail)f(ser)r(v)n(er)0 +3930 y Fw(As)d(mentioned)d(in)j(the)f(6.4)f(section)h(for)g(a)g +(virtual)g(mail)g(serv)o(er)m(,)f(a)i(patch)e(under)g(testing)h(is)h +(located)f(at:)0 4077 y Fv(http://sf)n(.net/tr)o(ac)o(k)o(er/ind)o(e)n +(x.p)o(hp)o(?fu)o(nc=d)o(eta)o(il)o(&ai)o(d=)o(621)o(25)o(7&g)n(rou)o +(p)p 2053 4077 V 21 w(id=103&atid=3001)o(03)0 4224 y +Fw(Again,)f(this)i(patch)e(is)i(for)f(people)f(f)o(amiliar)h(with)g +(their)g(qmail)g(installation.)0 4492 y Fp(More)j(inf)n(or)r(mation)0 +4695 y Fw(Y)-9 b(ou)25 b(might)h(be)g(interested)f(in)h(some)g +(information)d(on)j(modifying)d(footers)j(that)g(Norbert)e(Bollo)n(w)i (has)g(written)g(about)f(Mailman)0 4795 y(and)20 b(qmail,)f(a)n(v)n (ailable)h(here:)0 4942 y Fv(http://mailman.cis)o(.to/qmail-)o(v)n (erh/)p 0 5549 3901 4 v 0 5649 a Fp(6.4)83 b(Using)24 @@ -1725,45 +1773,46 @@ y Fw(.)26 b(There)19 b(are)h(system)h(tuning)e(parameters)g(and)g(inte) o(gration)g(options.)0 666 y(The)24 b(full)f(set)i(of)e(site-wide)h (def)o(aults)g(li)n(v)o(es)g(in)g(the)f(`)p Fk($)p Fj(pr)m(e\002x)p Fp(/Mailman/Def)n(aults)o(.p)n(y)p Fw(')h(\002le,)h(ho)n(we)n(v)o(er)d -(you)h(should)g Fr(ne)o(v)o(er)g Fw(modify)0 766 y(this)k(\002le!)45 -b(Instead,)27 b(change)e(the)i(`)p Fv(mm)p 1162 766 42 -4 v 46 w(cfg.p)n(y)p Fw(')f(\002le)h(in)g(that)f(same)h(directory)-5 -b(.)42 b(Y)-9 b(ou)26 b(only)g(need)g(to)h(add)f(v)n(alues)g(to)h(`)p -Fv(mm)p 3634 766 V 45 w(cfg.p)n(y)p Fw(')0 866 y(that)d(are)f(dif)n -(ferent)f(than)h(the)g(def)o(aults)g(in)h(`)p Fv(Def)n(aults)o(.p)n(y)p -Fw(',)d(and)i(future)f(Mailman)h(upgrades)f(are)h(guaranteed)f(ne)n(v)o -(er)g(to)h(touch)g(your)0 965 y(`)p Fv(mm)p 156 965 V -46 w(cfg.p)n(y)p Fw(')c(\002le.)0 1112 y(The)37 b(`)p -Fv(Def)n(aults)o(.p)n(y)p Fw(')d(\002le)k(is)g(documented)d(e)o(xtensi) -n(v)o(ely)-5 b(,)39 b(so)e(the)g(options)g(are)g(not)g(described)f -(here.)75 b(The)37 b(`)p Fv(Def)n(aults)o(.p)n(y)p Fw(')d(and)0 -1212 y(`)p Fv(mm)p 156 1212 V 46 w(cfg.p)n(y)p Fw(')18 -b(are)h(both)f(Python)g(\002les)i(so)f(v)n(alid)g(Python)e(syntax)i -(must)g(be)f(maintained)g(or)h(your)e(Mailman)i(installation)f(will)i -(break.)0 1358 y Fr(Note:)65 b Fw(Do)24 b Fr(not)f Fw(change)g(the)h -Fj(HOME)p 1156 1358 46 4 v 50 w(DIR)g Fw(or)f Fj(MAILMAN)p -1831 1358 V 51 w(DIR)h Fw(v)n(ariables.)35 b(These)23 -b(are)h(set)h(automatically)d(by)i(the)f Fr(con\002gur)o(e)0 -1458 y Fw(script,)d(and)g(you)f(will)i(break)e(your)g(Mailman)g +(you)h(should)g Fr(ne)o(v)o(er)g Fw(modify)0 766 y(this)29 +b(\002le!)50 b(Instead,)29 b(change)e(the)h(`)p Fv(mm)p +1174 766 23 4 v 27 w(cfg.p)n(y)p Fw(')g(\002le)h(in)f(that)h(same)f +(directory)-5 b(.)47 b(Y)-9 b(ou)28 b(only)f(need)h(to)g(add)g(v)n +(alues)g(to)g(`)p Fv(mm)p 3652 766 V 27 w(cfg.p)n(y)p +Fw(')0 866 y(that)c(are)f(dif)n(ferent)f(than)h(the)g(def)o(aults)g(in) +h(`)p Fv(Def)n(aults)o(.p)n(y)p Fw(',)d(and)i(future)f(Mailman)h +(upgrades)f(are)h(guaranteed)f(ne)n(v)o(er)g(to)h(touch)g(your)0 +965 y(`)p Fv(mm)p 156 965 V 27 w(cfg.p)n(y)p Fw(')d(\002le.)0 +1112 y(The)k(`)p Fv(Def)n(aults)o(.p)n(y)p Fw(')d(\002le)j(is)h +(documented)c(e)o(xtensi)n(v)o(ely)-5 b(,)23 b(so)h(the)g(options)f +(are)h(not)g(described)e(here.)36 b(The)24 b(`)p Fv(Def)n(aults)o(.p)n +(y)p Fw(')d(and)i(`)p Fv(mm)p 3852 1112 V 27 w(-)0 1212 +y(cfg.p)n(y)p Fw(')d(are)g(both)f(Python)g(\002les)i(so)g(v)n(alid)e +(Python)h(syntax)f(must)h(be)g(maintained)f(or)h(your)f(Mailman)g +(installation)h(will)h(break.)0 1358 y Fr(Note:)73 b +Fw(Do)26 b Fr(not)g Fw(change)e(the)i Fj(HOME)p 1172 +1358 25 4 v 30 w(DIR)g Fw(or)f Fj(MAILMAN)p 1831 1358 +V 30 w(DIR)h Fw(v)n(ariables.)41 b(These)26 b(are)g(set)h +(automatically)d(by)h(the)h Fr(con\002gur)o(e)0 1458 +y Fw(script,)20 b(and)g(you)f(will)i(break)e(your)g(Mailman)g (installation)h(by)g(if)h(you)e(change)g(these.)0 1605 y(Y)-9 b(ou)20 b(should)f(mak)o(e)h(an)o(y)f(changes)g(to)h(`)p -Fv(mm)p 1265 1605 42 4 v 46 w(cfg.p)n(y)p Fw(')g(using)f(the)i(account) -d(you)i(installed)g(Mailman)f(under)g(in)i(the)f(14)g(section.)0 +Fv(mm)p 1265 1605 23 4 v 27 w(cfg.p)n(y)p Fw(')g(using)g(the)g(account) +f(you)g(installed)h(Mailman)g(under)f(in)h(the)g(14)g(section.)0 1932 y Fx(8)120 b(Create)35 b(a)f(site-wide)g(mailing)e(list)0 -2165 y Fw(After)27 b(you)f(ha)n(v)o(e)g(completed)g(the)h(inte)o -(gration)e(of)i(Mailman)f(and)h(your)f(mail)h(serv)o(er)m(,)g(you)f -(need)h(to)g(create)g(a)g(\223site-wide\224)g(mail-)0 -2265 y(ing)g(list.)49 b(This)28 b(is)h(the)f(one)f(that)h(passw)o(ord)f -(reminders)g(will)h(appear)f(to)h(come)f(from,)h(and)g(it)g(is)h -(required)d(for)h(proper)f(Mailman)0 2364 y(operation.)g(Usually)21 -b(this)h(should)e(be)h(a)h(list)g(called)g Fm(mailman)p -Fw(,)e(b)n(ut)h(if)h(you)e(need)h(to)g(change)f(this,)i(be)f(sure)g(to) -g(change)f(the)i Fj(MAIL-)0 2464 y(MAN)p 180 2464 46 -4 v 51 w(SITE)p 398 2464 V 50 w(LIST)k Fw(v)n(ariable)19 -b(in)i(`)p Fv(mm)p 1159 2464 42 4 v 45 w(cfg.p)n(y)p -Fw('.)k(Y)-9 b(ou)19 b(can)h(create)g(the)g(site)h(list)h(with)e(this)h -(command,)d(follo)n(wing)g(the)i(prompts:)416 2702 y -Fl(\045)44 b(bin/newlist)f(mailman)0 2989 y Fw(No)n(w)23 +2165 y Fw(After)22 b(you)g(ha)n(v)o(e)g(completed)g(the)g(inte)o +(gration)f(of)i(Mailman)f(and)g(your)g(mail)g(serv)o(er)m(,)g(you)g +(need)g(to)h(create)g(a)g(\223site-wide\224)f(mailing)0 +2265 y(list.)j(This)17 b(is)h(the)g(one)e(that)h(passw)o(ord)g +(reminders)e(will)j(appear)e(to)i(come)e(from,)h(and)f(it)i(is)g +(required)d(for)i(proper)e(Mailman)i(operation.)0 2364 +y(Usually)i(this)h(should)e(be)i(a)f(list)i(called)e +Fm(mailman)p Fw(,)g(b)n(ut)g(if)h(you)e(need)h(to)g(change)f(this,)i +(be)f(sure)h(to)f(change)f(the)i Fj(MAILMAN)p 3652 2364 +25 4 v 29 w(SITE)p 3848 2364 V 29 w(-)0 2464 y(LIST)27 +b Fw(v)n(ariable)19 b(in)h(`)p Fv(mm)p 716 2464 23 4 +v 27 w(cfg.p)n(y)p Fw('.)k(Y)-9 b(ou)20 b(can)g(create)g(the)g(site)h +(list)g(with)g(this)f(command,)e(follo)n(wing)h(the)h(prompts:)416 +2702 y Fl(\045)44 b(bin/newlist)f(mailman)0 2989 y Fw(No)n(w)23 b(con\002gure)f(your)h(site)h(list.)36 b(There)23 b(is)i(a)f(con)m(v)o (enient)d(template)i(for)g(a)h(generic)e(site)j(list)f(in)g(the)g (installation)f(directory)-5 b(,)22 b(under)0 3088 y(`)p @@ -1793,7 +1842,7 @@ y Fq(In)f(general,)j(changing)f(the)f(list)h(def)o(aults)g(described)h (created)g(lists.)31 b(T)-5 b(o)20 b(mak)o(e)h(changes)h(after)f(a)g (list)g(has)g(been)0 5142 y(created,)e(use)e(the)h(web)f(interf)o(ace)j (or)d(the)h(command)g(line)g(scripts,)f(such)h(as)f Fa(bin/withlist)h -Fq(and)g Fa(bin/con\002g)p 2518 5142 37 4 v 42 w(list)p +Fq(and)g Fa(bin/con\002g)p 2518 5142 20 4 v 25 w(list)p Fq(.)90 5199 y Fi(5)120 5223 y Fq(Note)23 b(that)i(if)e(you')m(re)h (upgrading)h(from)e(a)g(pre)n(vious)i(v)o(ersion)f(of)f(Mailman,)j (you')o(ll)e(w)o(ant)g(to)g(install)h(the)f(ne)n(w)g(crontab,)i(b)o(ut) @@ -1853,23 +1902,23 @@ TeXDict begin 22 21 bop 416 174 a Fl(\045)44 b(cp)h(scripts/mailman)d 1362 y(\045)f(ln)h(-s)f(../init.d/mailman)e(S98mailman)416 1453 y(\045)i(cd)h(../rc6.d)416 1544 y(\045)f(ln)h(-s)f (../init.d/mailman)e(K12mailman)0 1993 y Fx(11)120 b(Chec)n(k)34 -b(the)h(hostname)g(settings)0 2226 y Fw(Y)-9 b(ou)21 -b(should)g(check)g(the)h(v)n(alues)g(for)f Fj(DEF)-10 -b(A)l(UL)n(T)p 1446 2226 46 4 v 50 w(EMAIL)p 1741 2226 -V 50 w(HOST)29 b Fw(and)21 b Fj(DEF)-10 b(A)l(UL)n(T)p -2519 2226 V 51 w(URL)p 2727 2226 V 50 w(HOST)29 b Fw(in)22 -b(`)p Fv(Def)n(aults)o(.p)n(y)p Fw('.)27 b(Mak)o(e)21 -b(an)o(y)0 2325 y(necessary)d(changes)f(in)i(the)f(`)p -Fv(mm)p 988 2325 42 4 v 46 w(cfg.p)n(y)p Fw(')f(\002le,)j -Fr(not)e Fw(in)g(the)h(`)p Fv(Def)n(aults)o(.p)n(y)p -Fw(')c(\002le.)25 b(If)18 b(you)g(change)f(either)h(of)g(these)h(tw)o -(o)f(v)n(alues,)g(you')o(ll)0 2425 y(w)o(ant)i(to)h(add)e(the)i(follo)n +b(the)h(hostname)g(settings)0 2226 y Fw(Y)-9 b(ou)27 +b(should)g(check)g(the)h(v)n(alues)f(for)g Fj(DEF)-10 +b(A)l(UL)n(T)p 1481 2226 25 4 v 30 w(EMAIL)p 1756 2226 +V 30 w(HOST)34 b Fw(and)27 b Fj(DEF)-10 b(A)l(UL)n(T)p +2525 2226 V 30 w(URL)p 2712 2226 V 30 w(HOST)34 b Fw(in)28 +b(`)p Fv(Def)n(aults)o(.p)n(y)p Fw('.)45 b(Mak)o(e)27 +b(an)o(y)0 2325 y(necessary)19 b(changes)f(in)i(the)f(`)p +Fv(mm)p 992 2325 23 4 v 27 w(cfg.p)n(y)p Fw(')g(\002le,)h +Fr(not)f Fw(in)h(the)f(`)p Fv(Def)n(aults)o(.p)n(y)p +Fw(')e(\002le.)25 b(If)19 b(you)g(change)f(either)h(of)g(these)h(tw)o +(o)g(v)n(alues,)e(you')o(ll)0 2425 y(w)o(ant)i(to)h(add)e(the)i(follo)n (wing)d(afterw)o(ards)h(in)i(the)f(`)p Fv(mm)p 1605 2425 -V 46 w(cfg.p)n(y)p Fw(')f(\002le:)416 2663 y Fl +V 27 w(cfg.p)n(y)p Fw(')f(\002le:)416 2663 y Fl (add_virtualhost\(DEFAULT_URL_HOST,)39 b(DEFAULT_EMAIL_HOST\))0 2950 y Fw(Y)-9 b(ou)20 b(will)h(w)o(ant)f(to)g(run)g(the)g -Fr(bin/\002x)p 1056 2950 46 4 v 51 w(url.py)g Fw(to)g(change)f(the)h -(domain)f(of)h(an)o(y)f(e)o(xisting)h(lists.)0 3278 y +Fr(bin/\002x)p 1056 2950 25 4 v 30 w(url.py)g Fw(to)g(change)f(the)i +(domain)d(of)i(an)o(y)g(e)o(xisting)f(lists.)0 3278 y Fx(12)120 b(Create)35 b(the)g(site)e(pass)l(w)o(ord)0 3511 y Fw(There)20 b(are)h(tw)o(o)g(site-wide)f(passw)o(ords)h(that)g (you)f(can)g(create)h(from)e(the)i(command)e(line,)i(using)f(the)h @@ -2063,10 +2112,10 @@ b(Here)c(are)f(some)g(hints)h(on)f(getting)g(Mailman)g(to)g(run)g(on)0 1206 y(Linux:)125 1436 y Fd(\017)41 b Fw(If)f(you)f(are)h(getting)f (errors)g(with)i(hard)e(link)h(creations)f(and/or)g(you)g(are)h(using)g (a)g(special)h(secure)e(k)o(ernel)h(\(secure-)208 1536 -y(linux/openw)o(all/grsecurity\),)18 b(see)24 b(the)e(\002le)i(`)p -Fv(contr)q(ib/README.chec)o(k)p 2331 1536 42 4 v 42 w(per)r(ms)p -2583 1536 V 45 w(g)o(rsecur)q(ity)p Fw(')f(in)g(the)f(Mailman)g(source) -g(dis-)208 1636 y(trib)n(ution.)208 1768 y(Note)e(that)g(if)g(you)g +y(linux/openw)o(all/grsecurity\),)23 b(see)28 b(the)f(\002le)g(`)p +Fv(contr)q(ib/README.chec)o(k)p 2348 1536 23 4 v 24 w(per)r(ms)p +2582 1536 V 26 w(g)o(rsecur)q(ity)p Fw(')f(in)h(the)g(Mailman)f(source) +g(dis-)208 1636 y(trib)n(ution.)208 1768 y(Note)20 b(that)g(if)g(you)g (are)g(using)g(Linux)f(Mandrak)o(e)f(in)i(secure)g(mode,)f(you)h(are)g (probably)e(concerned)f(by)j(this.)125 1934 y Fd(\017)41 b Fw(Apparently)16 b(Mandrak)o(e)i(9.0)g(changed)f(the)h(permissions)g @@ -2090,9 +2139,9 @@ y(One)f(symptom)f(of)h(this)h(problem,)d(although)g(for)i(unkno)n(wn)e Fl(Traceback)43 b(\(most)h(recent)g(call)g(last\):)982 3313 y(File)g("bin/update",)f(line)h(44,)g(in)h(?)1071 3404 y(import)f(paths)892 3495 y(ImportError:)f(No)h(module)g(named)g -(paths)892 3587 y(make:)1161 3600 y(***)1340 3587 y([update])g(Error)g -(1)208 3951 y Fw(If)24 b(this)i(happens,)e(install)i(the)f(Python)f(de) -n(v)o(elopment)e(package)h(and)i(try)f Fr(con\002gur)o(e)h +(paths)892 3587 y(make:)g(***)g([update])g(Error)g(1)208 +3951 y Fw(If)24 b(this)i(happens,)e(install)i(the)f(Python)f(de)n(v)o +(elopment)e(package)h(and)i(try)f Fr(con\002gur)o(e)h Fw(and)f Fr(mak)o(e)h(install)h Fw(again.)38 b(Or)25 b(install)208 4051 y(the)20 b(latest)h(v)o(ersion)e(of)h(Python)f(from) g(source,)g(a)n(v)n(ailable)h(from)f Fv(http://www)l(.p)n(ython.org)-6 @@ -2146,7 +2195,7 @@ m(.appl)o(e)o(.)o(com/ar)s(t)o(icle)n(.html)o(?a)o(r)s(tn)o(u)o(m=10)o (follo)n(wing)g(detailed)g(instructions)g(on)g(running)f(Mailman)h(on)g (the)h('client')f(v)o(ersion)f(of)i(OSX,)g(or)f(in)0 2878 y(earlier)20 b(v)o(ersions)f(of)h(OSX:)0 3024 y(Mac)26 -b(OSX)h(10.3)e(and)h(onw)o(ards)f(has)i(the)f(basics)g(for)g(a)h +b(OSX)h(10.3)e(and)h(onw)o(ards)f(has)h(the)h(basics)f(for)g(a)h (successful)f(Mailman)f(installation.)43 b(Users)27 b(of)e(earlier)h(v) o(ersions)g(of)f(Mac)0 3124 y(OSX)f(contains)f(Sendmail)g(and)g(those)g (users)h(should)f(look)f(at)i(the)g(Sendmail)f(installation)g(section)g @@ -2217,10 +2266,10 @@ y(niutil)g(-createprop)f(/)i(/groups/mailman)d(name)i(mailman)236 1270 y(#)h(Note)f(that)g(xxx)h(is)f(a)h(free)f(group)g(ID)g(number)g (on)h(your)f(system)236 1362 y(niutil)g(-createprop)f(/)i (/groups/mailman)d(gid)i(xxx)236 1453 y(niutil)g(-createprop)f(/)i -(/groups/mailman)d(passwd)i(')2254 1466 y(*)2299 1453 -y(')236 1544 y(niutil)g(-createprop)f(/)i(/groups/mailman)d(users)i -('mailman')236 1636 y(chown)g(mailman:mailman)f(/usr/local/mailman)236 -1727 y(cd)i(/usr/local/mailman)236 1818 y(chmod)f(a+rx,g+ws)g(.)236 +(/groups/mailman)d(passwd)i('*')236 1544 y(niutil)g(-createprop)f(/)i +(/groups/mailman)d(users)i('mailman')236 1636 y(chown)g +(mailman:mailman)f(/usr/local/mailman)236 1727 y(cd)i +(/usr/local/mailman)236 1818 y(chmod)f(a+rx,g+ws)g(.)236 1910 y(exit)236 2001 y(su)h(mailman)0 2287 y Fw(F)o(or)21 b(setting)g(up)f(Apache)g(on)h(OSX)g(to)g(handle)f(Mailman,)h(the)g (steps)g(are)g(almost)g(identical)f(and)h(the)g(con\002guration)d diff --git a/admin/www/mailman-install.txt b/admin/www/mailman-install.txt index c7b2dca1..9071639a 100644 --- a/admin/www/mailman-install.txt +++ b/admin/www/mailman-install.txt @@ -1,4 +1,3 @@ - #GNU Mailman - Installation Manual About this document... About this document... @@ -12,7 +11,7 @@ GNU Mailman - Installation Manual barry(at)python.org Release 2.1 - April 16, 2005 + May 12, 2005 Front Matter @@ -53,7 +52,7 @@ GNU Mailman - Installation Manual Mailman requires a unique user and group name which will own its files, and under which its processes will run. Mailman's basic security is based on group ownership permissions, so it's important to - get this step right1. Typically, you will add a new user and a new + get this step right^1. Typically, you will add a new user and a new group, both called mailman. The mailman user must be a member of the mailman group. Mailman will be installed under the mailman user and group, with the set-group-id (setgid) bit enabled. @@ -79,7 +78,7 @@ GNU Mailman - Installation Manual the variable data files and install them in separate directories. This section will describe the available options. - The default is to install all of Mailman to /usr/local/mailman2. You + The default is to install all of Mailman to /usr/local/mailman^2. You can change this base installation directory (referred to here as $prefix) by specifying the directory with the --prefix configure option. If you're upgrading from a previous version of Mailman, you @@ -93,7 +92,7 @@ GNU Mailman - Installation Manual Make sure the installation directory is set to group mailman (or whatever you're going to specify with --with-groupname) and has the - setgid bit set3. You probably also want to guarantee that this + setgid bit set^3. You probably also want to guarantee that this directory is readable and executable by everyone. For example, these shell commands will accomplish this: @@ -241,6 +240,22 @@ GNU Mailman - Installation Manual * Run bin/check_perms -f * Repeat previous step until no more errors are reported! + Warning: If you're running Mailman on a shared multiuser system, and + you have mailing lists with private archives, you may want to hide the + private archive directory from other users on your system. In that + case, you should drop the other execute permission (o-x) from the + archives/private directory. However, the web server process must be + able to follow the symbolic link in public directory, otherwise your + public Pipermail archives will not work. To set this up, become root + and run the following commands: + +# cd <prefix>/archives +# chown <web-server-user> private +# chmod o-x private + + You need to know what user your web server runs as. It may be www, + apache, httpd or nobody, depending on your server's configuration. + 5 Set up your web server Congratulations! You've installed the Mailman software. To get @@ -827,8 +842,8 @@ GNU Mailman - Installation Manual server. Don't. The Sendmail.py module is misnamed - it's really a command line based message handoff scheme as opposed to the SMTP scheme used in SMTPDirect.py (the default). Sendmail.py has known - security holes and is provided as a proof-of-concept only4. If you are - having problems using SMTPDirect.py fix those instead of using + security holes and is provided as a proof-of-concept only^4. If you + are having problems using SMTPDirect.py fix those instead of using Sendmail.py, or you may open your system up to security exploits. 6.3.1 Sendmail ``smrsh'' compatibility @@ -1056,7 +1071,7 @@ fi Mailman has a large number of site-wide configuration options which you should now review and change according to your needs. Some of the options control how Mailman interacts with your environment, and other - options select defaults for newly created lists5. There are system + options select defaults for newly created lists^5. There are system tuning parameters and integration options. The full set of site-wide defaults lives in the @@ -1254,7 +1269,7 @@ fi Also check for errors in your syslog files, your mail and web server log files and in Mailman's $prefix/logs/error file. If you're still having problems, you should send a message to the - mailman-users@python.org mailing list7; see + mailman-users@python.org mailing list^7; see http://mail.python.org/mailman/listinfo/mailman-users for more information. @@ -1490,7 +1505,7 @@ tar xvf MailmanStartup.tar About this document ... - GNU Mailman - Installation Manual, April 16, 2005, Release 2.1 + GNU Mailman - Installation Manual, May 12, 2005, Release 2.1 This document was generated using the LaTeX2HTML translator. @@ -1506,24 +1521,24 @@ tar xvf MailmanStartup.tar Footnotes - ... right1 + ... right^1 You will be able to check and repair your permissions after installation is complete. - .../usr/local/mailman2 + .../usr/local/mailman^2 This is the default for Mailman 2.1. Earlier versions of Mailman installed everything under /home/mailman by default. - ... set3 + ... set^3 BSD users should see the 15.2 section for additional information. - ... only4 + ... only^4 In fact, in later versions of Mailman, this module is explicitly sabotaged. You have to know what you're doing in order to re-enable it. - ... lists5 + ... lists^5 In general, changing the list defaults described in this section will not affect any already created lists. To make changes after a list has been created, use the web interface or @@ -1537,7 +1552,7 @@ tar xvf MailmanStartup.tar Changing the crontab could mess with other parallel Mailman installations. - ... list7 + ... list^7 You must subscribe to this mailing list in order to post to it, but the mailing list's archives are publicly visible. _________________________________________________________________ @@ -1545,4 +1560,4 @@ tar xvf MailmanStartup.tar Previous Page Up One Level Next Page GNU Mailman - Installation Manual _________________________________________________________________ - Release 2.1, documentation updated on April 16, 2005. + Release 2.1, documentation updated on May 12, 2005. diff --git a/admin/www/mailman-install/about.html b/admin/www/mailman-install/about.html index 33d97a72..c83efd43 100644 --- a/admin/www/mailman-install/about.html +++ b/admin/www/mailman-install/about.html @@ -45,7 +45,7 @@ About this document ...</A> </H1> <strong>GNU Mailman - Installation Manual</strong>, -April 16, 2005, Release 2.1 +May 12, 2005, Release 2.1 <p> This document was generated using the <a href="http://saftsack.fs.uni-bayreuth.de/~latex2ht/"> <strong>LaTeX</strong>2<tt>HTML</tt></a> translator. @@ -100,7 +100,7 @@ April 16, 2005, Release 2.1 </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/bsd-issues.html b/admin/www/mailman-install/bsd-issues.html index 98240b48..79df2e39 100644 --- a/admin/www/mailman-install/bsd-issues.html +++ b/admin/www/mailman-install/bsd-issues.html @@ -105,7 +105,7 @@ This disables the <b class="program">chmod g+s</b> command on installed director </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/create-install-dir.html b/admin/www/mailman-install/create-install-dir.html index 2167e72e..f3e9a0eb 100644 --- a/admin/www/mailman-install/create-install-dir.html +++ b/admin/www/mailman-install/create-install-dir.html @@ -58,7 +58,7 @@ available options. <P> The default is to install all of Mailman to <span class="file">/usr/local/mailman</span><A NAME="tex2html2" - HREF="#foot697"><SUP>2</SUP></A>. You can change this base installation directory (referred to here + HREF="#foot706"><SUP>2</SUP></A>. You can change this base installation directory (referred to here as <var>$prefix</var>) by specifying the directory with the <b class="programopt">--prefix</b> <b class="program">configure</b> option. If you're upgrading from a previous version of Mailman, you may want to use the <b class="programopt">--prefix</b> @@ -77,7 +77,7 @@ Mailman in a location that allows setgid programs. Make sure the installation directory is set to group <code>mailman</code> (or whatever you're going to specify with <b class="programopt">--with-groupname</b>) and has the setgid bit set<A NAME="tex2html3" - HREF="#foot698"><SUP>3</SUP></A>. You probably also want to guarantee that this + HREF="#foot707"><SUP>3</SUP></A>. You probably also want to guarantee that this directory is readable and executable by everyone. For example, these shell commands will accomplish this: @@ -94,14 +94,14 @@ You are now ready to configure and install the Mailman software. <P> <BR><HR><H4>Footnotes</H4> <DL> -<DT><A NAME="foot697">.../usr/local/mailman</A><A +<DT><A NAME="foot706">.../usr/local/mailman</A><A href="create-install-dir.html#tex2html2"><SUP>2</SUP></A></DT> <DD>This is the default for Mailman 2.1. Earlier versions of Mailman installed everything under <span class="file">/home/mailman</span> by default. </DD> -<DT><A NAME="foot698">... set</A><A +<DT><A NAME="foot707">... set</A><A href="create-install-dir.html#tex2html3"><SUP>3</SUP></A></DT> <DD>BSD users should see the <A href="bsd-issues.html#bsd-issues">15.2</A> section for additional information. @@ -140,7 +140,7 @@ for additional information. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/customizing.html b/admin/www/mailman-install/customizing.html index 3d677caa..f4fc8673 100644 --- a/admin/www/mailman-install/customizing.html +++ b/admin/www/mailman-install/customizing.html @@ -56,7 +56,7 @@ Mailman has a large number of site-wide configuration options which you should now review and change according to your needs. Some of the options control how Mailman interacts with your environment, and other options select defaults for newly created lists<A NAME="tex2html5" - HREF="#foot724"><SUP>5</SUP></A>. + HREF="#foot733"><SUP>5</SUP></A>. There are system tuning parameters and integration options. <P> @@ -89,7 +89,7 @@ installed Mailman under in the <A href="troubleshooting.html#building">14</A> se <P> <BR><HR><H4>Footnotes</H4> <DL> -<DT><A NAME="foot724">... lists</A><A +<DT><A NAME="foot733">... lists</A><A href="customizing.html#tex2html5"><SUP>5</SUP></A></DT> <DD>In general, changing the list defaults described in this section will not affect any already created lists. To make @@ -130,7 +130,7 @@ line scripts, such as <b class="program">bin/withlist</b> and <b class="program" </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/exim3-transport.html b/admin/www/mailman-install/exim3-transport.html index 26b4a902..ec7b7119 100644 --- a/admin/www/mailman-install/exim3-transport.html +++ b/admin/www/mailman-install/exim3-transport.html @@ -104,7 +104,7 @@ i.e. somewhere between the first and second ``end'' line: </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/front.html b/admin/www/mailman-install/front.html index 3e6d0eef..72007a1c 100644 --- a/admin/www/mailman-install/front.html +++ b/admin/www/mailman-install/front.html @@ -173,7 +173,7 @@ The GNU Mailman website is at <a class="url" href="http://www.list.org">http://w </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/index.html b/admin/www/mailman-install/index.html index 0b2d8c48..97958dea 100644 --- a/admin/www/mailman-install/index.html +++ b/admin/www/mailman-install/index.html @@ -45,7 +45,7 @@ <p><b><font size="+2">Barry Warsaw</font></b></p> <p><span class="email">barry(at)python.org</span></p> <p><strong>Release 2.1</strong><br /> -<strong>April 16, 2005</strong></p> +<strong>May 12, 2005</strong></p> <p></p> </div> </div> @@ -126,7 +126,7 @@ </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/mail-server.html b/admin/www/mailman-install/mail-server.html index 7bd1eb58..a2c7ddc6 100644 --- a/admin/www/mailman-install/mail-server.html +++ b/admin/www/mailman-install/mail-server.html @@ -136,7 +136,7 @@ contributing documentation updates to the Mailman developers. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/mailman-install.html b/admin/www/mailman-install/mailman-install.html index 0b2d8c48..97958dea 100644 --- a/admin/www/mailman-install/mailman-install.html +++ b/admin/www/mailman-install/mailman-install.html @@ -45,7 +45,7 @@ <p><b><font size="+2">Barry Warsaw</font></b></p> <p><span class="email">barry(at)python.org</span></p> <p><strong>Release 2.1</strong><br /> -<strong>April 16, 2005</strong></p> +<strong>May 12, 2005</strong></p> <p></p> </div> </div> @@ -126,7 +126,7 @@ </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node10.html b/admin/www/mailman-install/node10.html index 4014452d..5b5740ee 100644 --- a/admin/www/mailman-install/node10.html +++ b/admin/www/mailman-install/node10.html @@ -184,7 +184,7 @@ Now restart your web server. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node12.html b/admin/www/mailman-install/node12.html index 5155f07d..0dd38f8a 100644 --- a/admin/www/mailman-install/node12.html +++ b/admin/www/mailman-install/node12.html @@ -145,7 +145,7 @@ virtual domain support below. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node13.html b/admin/www/mailman-install/node13.html index f4deb18c..e4a7688e 100644 --- a/admin/www/mailman-install/node13.html +++ b/admin/www/mailman-install/node13.html @@ -197,7 +197,7 @@ tables. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node15.html b/admin/www/mailman-install/node15.html index d1da109a..84e10c7f 100644 --- a/admin/www/mailman-install/node15.html +++ b/admin/www/mailman-install/node15.html @@ -102,7 +102,7 @@ instead of <code>mylist@dom.ain</code>. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node16.html b/admin/www/mailman-install/node16.html index b3ce9711..94d82142 100644 --- a/admin/www/mailman-install/node16.html +++ b/admin/www/mailman-install/node16.html @@ -123,7 +123,7 @@ those in the config fragments given below. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node17.html b/admin/www/mailman-install/node17.html index 4a825c1b..43ed8f45 100644 --- a/admin/www/mailman-install/node17.html +++ b/admin/www/mailman-install/node17.html @@ -143,7 +143,7 @@ and 2.1 installations, with the proviso that you'll probably want to use </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node18.html b/admin/www/mailman-install/node18.html index 172b723a..d473f710 100644 --- a/admin/www/mailman-install/node18.html +++ b/admin/www/mailman-install/node18.html @@ -102,7 +102,7 @@ you'll need to edit these based on how you configured and installed Mailman. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node2.html b/admin/www/mailman-install/node2.html index 76c573c7..89a8850c 100644 --- a/admin/www/mailman-install/node2.html +++ b/admin/www/mailman-install/node2.html @@ -114,7 +114,7 @@ Python 2.3 or newer is recommended. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node20.html b/admin/www/mailman-install/node20.html index ca39922e..8eb51239 100644 --- a/admin/www/mailman-install/node20.html +++ b/admin/www/mailman-install/node20.html @@ -106,7 +106,7 @@ aliasfile director, or vice-versa. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node21.html b/admin/www/mailman-install/node21.html index 8115d7b7..d7743f31 100644 --- a/admin/www/mailman-install/node21.html +++ b/admin/www/mailman-install/node21.html @@ -103,7 +103,7 @@ file, and remember that order matters. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node22.html b/admin/www/mailman-install/node22.html index fdb53549..f50ed1cf 100644 --- a/admin/www/mailman-install/node22.html +++ b/admin/www/mailman-install/node22.html @@ -89,7 +89,7 @@ transports'' line of your Exim config file. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node23.html b/admin/www/mailman-install/node23.html index 90ca5975..e416803d 100644 --- a/admin/www/mailman-install/node23.html +++ b/admin/www/mailman-install/node23.html @@ -93,7 +93,7 @@ mail, unless you like receiving tons of mail when some random host is down. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node24.html b/admin/www/mailman-install/node24.html index e9f0b6f3..d4b2ed7d 100644 --- a/admin/www/mailman-install/node24.html +++ b/admin/www/mailman-install/node24.html @@ -119,7 +119,7 @@ </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node25.html b/admin/www/mailman-install/node25.html index 9512f245..bcb132f9 100644 --- a/admin/www/mailman-install/node25.html +++ b/admin/www/mailman-install/node25.html @@ -126,7 +126,7 @@ from non-127.0.0.1 hosts, but it should do the trick for Mailman.) </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node26.html b/admin/www/mailman-install/node26.html index bf12347f..108c90ac 100644 --- a/admin/www/mailman-install/node26.html +++ b/admin/www/mailman-install/node26.html @@ -131,7 +131,7 @@ this in your <code>DATA</code> ACL: </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node27.html b/admin/www/mailman-install/node27.html index af1660fa..252bcbad 100644 --- a/admin/www/mailman-install/node27.html +++ b/admin/www/mailman-install/node27.html @@ -101,7 +101,7 @@ In a nutshell, all you need to do to enable VERP with Exim is to add these lines </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node28.html b/admin/www/mailman-install/node28.html index 19835e4d..c20e1990 100644 --- a/admin/www/mailman-install/node28.html +++ b/admin/www/mailman-install/node28.html @@ -113,7 +113,7 @@ and change your transport like this: </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node29.html b/admin/www/mailman-install/node29.html index cf4a4179..96c00a77 100644 --- a/admin/www/mailman-install/node29.html +++ b/admin/www/mailman-install/node29.html @@ -115,7 +115,7 @@ functioning perfectly, though! </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node3.html b/admin/www/mailman-install/node3.html index 6f39356e..2d82b90f 100644 --- a/admin/www/mailman-install/node3.html +++ b/admin/www/mailman-install/node3.html @@ -101,7 +101,7 @@ in this section. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node30.html b/admin/www/mailman-install/node30.html index 333dfae1..70b3fbd7 100644 --- a/admin/www/mailman-install/node30.html +++ b/admin/www/mailman-install/node30.html @@ -89,7 +89,7 @@ Overhauled/reformatted/clarified/simplified by Greg Ward </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node31.html b/admin/www/mailman-install/node31.html index 5c3faa62..73e751e6 100644 --- a/admin/www/mailman-install/node31.html +++ b/admin/www/mailman-install/node31.html @@ -59,7 +59,7 @@ You may be tempted to set the <var>DELIVERY_MODULE</var> configuration variable command line based message handoff scheme as opposed to the SMTP scheme used in <span class="file">SMTPDirect.py</span> (the default). <span class="file">Sendmail.py</span> has known security holes and is provided as a proof-of-concept only<A NAME="tex2html4" - HREF="#foot393"><SUP>4</SUP></A>. If you are having problems + HREF="#foot402"><SUP>4</SUP></A>. If you are having problems using <span class="file">SMTPDirect.py</span> fix those instead of using <span class="file">Sendmail.py</span>, or you may open your system up to security exploits. </div> @@ -67,7 +67,7 @@ you may open your system up to security exploits. <P> <BR><HR><H4>Footnotes</H4> <DL> -<DT><A NAME="foot393">... only</A><A +<DT><A NAME="foot402">... only</A><A HREF="node31.html#tex2html4"><SUP>4</SUP></A></DT> <DD>In fact, in later versions of Mailman, this module is explicitly sabotaged. You have to know @@ -120,7 +120,7 @@ what you're doing in order to re-enable it. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node32.html b/admin/www/mailman-install/node32.html index bfc270da..c5801a05 100644 --- a/admin/www/mailman-install/node32.html +++ b/admin/www/mailman-install/node32.html @@ -139,7 +139,7 @@ One good way of enabling this is: </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node33.html b/admin/www/mailman-install/node33.html index 4816436c..73e87b97 100644 --- a/admin/www/mailman-install/node33.html +++ b/admin/www/mailman-install/node33.html @@ -107,7 +107,7 @@ find four files: </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node34.html b/admin/www/mailman-install/node34.html index 0f2f0094..0c842069 100644 --- a/admin/www/mailman-install/node34.html +++ b/admin/www/mailman-install/node34.html @@ -92,7 +92,7 @@ connections. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node36.html b/admin/www/mailman-install/node36.html index 6f1aee16..5f8de237 100644 --- a/admin/www/mailman-install/node36.html +++ b/admin/www/mailman-install/node36.html @@ -107,7 +107,7 @@ is the more qmail-friendly approach resulting in large performance gains. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node37.html b/admin/www/mailman-install/node37.html index cf066007..fd180d41 100644 --- a/admin/www/mailman-install/node37.html +++ b/admin/www/mailman-install/node37.html @@ -93,7 +93,7 @@ Again, this patch is for people familiar with their qmail installation. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node38.html b/admin/www/mailman-install/node38.html index 41a91eaa..6ded5dd1 100644 --- a/admin/www/mailman-install/node38.html +++ b/admin/www/mailman-install/node38.html @@ -89,7 +89,7 @@ Bollow has written about Mailman and qmail, available here: </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node39.html b/admin/www/mailman-install/node39.html deleted file mode 100644 index d120751b..00000000 --- a/admin/www/mailman-install/node39.html +++ /dev/null @@ -1,124 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> -<html> -<head> -<link rel="STYLESHEET" href="mailman-install.css" type='text/css' /> -<link rel="first" href="mailman-install.html" title='GNU Mailman - Installation Manual' /> -<link rel='last' href='about.html' title='About this document...' /> -<link rel='help' href='about.html' title='About this document...' /> -<link rel="next" href="node40.html" /> -<link rel="prev" href="mail-server.html" /> -<link rel="parent" href="front.html" /> -<link rel="next" href="node40.html" /> -<meta name='aesop' content='information' /> -<title>7 Review your site defaults</title> -</head> -<body> -<DIV CLASS="navigation"> -<div id='top-navigation-panel' xml:id='top-navigation-panel'> -<table align="center" width="100%" cellpadding="0" cellspacing="2"> -<tr> -<td class='online-navigation'><a rel="prev" title="6.4.3 More information" - href="node38.html"><img src='previous.png' - border='0' height='32' alt='Previous Page' width='32' /></A></td> -<td class='online-navigation'><a rel="parent" title="Front Matter" - href="front.html"><img src='up.png' - border='0' height='32' alt='Up One Level' width='32' /></A></td> -<td class='online-navigation'><a rel="next" title="8 Create a site-wide" - href="node40.html"><img src='next.png' - border='0' height='32' alt='Next Page' width='32' /></A></td> -<td align="center" width="100%">GNU Mailman - Installation Manual</td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -</tr></table> -<div class='online-navigation'> -<b class="navlabel">Previous:</b> -<a class="sectref" rel="prev" href="node38.html">6.4.3 More information</A> -<b class="navlabel">Up:</b> -<a class="sectref" rel="parent" href="front.html">Front Matter</A> -<b class="navlabel">Next:</b> -<a class="sectref" rel="next" href="node40.html">8 Create a site-wide</A> -</div> -<hr /></div> -</DIV> -<!--End of Navigation Panel--> - -<H1><A NAME="SECTION001700000000000000000"> -7 Review your site defaults</A> -</H1> - -<P> -Mailman has a large number of site-wide configuration options which you should -now review and change according to your needs. Some of the options control -how Mailman interacts with your environment, and other options select defaults -for newly created lists<A NAME="tex2html5" - HREF="#foot508"><SUP>5</SUP></A>. There are system tuning parameters and integration options. - -<P> -The full set of site-wide defaults lives in the -<span class="file"><var>$prefix</var>/Mailman/Defaults.py</span> file, however you should -<strong>never</strong> modify this file! Instead, change the <span class="file">mm_cfg.py</span> file in -that same directory. You only need to add values to <span class="file">mm_cfg.py</span> that are -different than the defaults in <span class="file">Defaults.py</span>, and future Mailman upgrades -are guaranteed never to touch your <span class="file">mm_cfg.py</span> file. - -<P> -The <span class="file">Defaults.py</span> file is documented extensively, so the options are not -described here. The <span class="file">Defaults.py</span> and <span class="file">mm_cfg.py</span> are both -<a class="ulink" href="http://www.python.org" - >Python</a> files so valid Python syntax must be -maintained or your Mailman installation will break. - -<P> -<BR><HR><H4>Footnotes</H4> -<DL> -<DT><A NAME="foot508">... lists</A><A - HREF="node39.html#tex2html5"><SUP>5</SUP></A></DT> -<DD>In general, changing the list defaults -described in this section will not affect any already created lists. To make -changes after a list has been created, use the web interface or the command -line scripts. - -</DD> -</DL> -<DIV CLASS="navigation"> -<div class='online-navigation'> -<p></p><hr /> -<table align="center" width="100%" cellpadding="0" cellspacing="2"> -<tr> -<td class='online-navigation'><a rel="prev" title="6.4.3 More information" - href="node38.html"><img src='previous.png' - border='0' height='32' alt='Previous Page' width='32' /></A></td> -<td class='online-navigation'><a rel="parent" title="Front Matter" - href="front.html"><img src='up.png' - border='0' height='32' alt='Up One Level' width='32' /></A></td> -<td class='online-navigation'><a rel="next" title="8 Create a site-wide" - href="node40.html"><img src='next.png' - border='0' height='32' alt='Next Page' width='32' /></A></td> -<td align="center" width="100%">GNU Mailman - Installation Manual</td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -</tr></table> -<div class='online-navigation'> -<b class="navlabel">Previous:</b> -<a class="sectref" rel="prev" href="node38.html">6.4.3 More information</A> -<b class="navlabel">Up:</b> -<a class="sectref" rel="parent" href="front.html">Front Matter</A> -<b class="navlabel">Next:</b> -<a class="sectref" rel="next" href="node40.html">8 Create a site-wide</A> -</div> -</div> -<hr /> -<span class="release-info">Release 2.1, documentation updated on December 22, 2004.</span> -</DIV> -<!--End of Navigation Panel--> - -</BODY> -</HTML> diff --git a/admin/www/mailman-install/node4.html b/admin/www/mailman-install/node4.html index 911d4447..3d627226 100644 --- a/admin/www/mailman-install/node4.html +++ b/admin/www/mailman-install/node4.html @@ -121,7 +121,7 @@ installation is complete. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node40.html b/admin/www/mailman-install/node40.html index 4c2686c0..76b9ec19 100644 --- a/admin/www/mailman-install/node40.html +++ b/admin/www/mailman-install/node40.html @@ -121,7 +121,7 @@ You should also subscribe yourself to the site list. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node41.html b/admin/www/mailman-install/node41.html index c2b4192a..70fd2c3d 100644 --- a/admin/www/mailman-install/node41.html +++ b/admin/www/mailman-install/node41.html @@ -53,7 +53,7 @@ <P> Several Mailman features occur on a regular schedule, so you must set up <b class="program">cron</b> to run the right programs at the right time<A NAME="tex2html6" - HREF="#foot542"><SUP>6</SUP></A>. + HREF="#foot551"><SUP>6</SUP></A>. <P> If your version of crontab supports the <b class="programopt">-u</b> option, you must be @@ -81,7 +81,7 @@ crontab does not support the <b class="programopt">-u</b> option, try these comm <P> <BR><HR><H4>Footnotes</H4> <DL> -<DT><A NAME="foot542">... time</A><A +<DT><A NAME="foot551">... time</A><A HREF="node41.html#tex2html6"><SUP>6</SUP></A></DT> <DD>Note that if you're upgrading from a previous version of Mailman, you'll want to install @@ -123,7 +123,7 @@ parallel Mailman installations. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node42.html b/admin/www/mailman-install/node42.html index 49f0725d..0b2c081e 100644 --- a/admin/www/mailman-install/node42.html +++ b/admin/www/mailman-install/node42.html @@ -150,7 +150,7 @@ following set of commands: </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node43.html b/admin/www/mailman-install/node43.html index 216e1584..9e50695a 100644 --- a/admin/www/mailman-install/node43.html +++ b/admin/www/mailman-install/node43.html @@ -100,7 +100,7 @@ existing lists. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node44.html b/admin/www/mailman-install/node44.html index 56fd7277..b2606658 100644 --- a/admin/www/mailman-install/node44.html +++ b/admin/www/mailman-install/node44.html @@ -119,7 +119,7 @@ password. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node45.html b/admin/www/mailman-install/node45.html index 7f5351fd..4a55c1b6 100644 --- a/admin/www/mailman-install/node45.html +++ b/admin/www/mailman-install/node45.html @@ -145,7 +145,7 @@ list. If you had any problems along the way, please see the </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node46.html b/admin/www/mailman-install/node46.html deleted file mode 100644 index 1ae12493..00000000 --- a/admin/www/mailman-install/node46.html +++ /dev/null @@ -1,112 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> -<html> -<head> -<link rel="STYLESHEET" href="mailman-install.css" type='text/css' /> -<link rel="first" href="mailman-install.html" title='GNU Mailman - Installation Manual' /> -<link rel='last' href='about.html' title='About this document...' /> -<link rel='help' href='about.html' title='About this document...' /> -<link rel="prev" href="troubleshooting.html" /> -<link rel="parent" href="front.html" /> -<link rel="next" href="node47.html" /> -<meta name='aesop' content='information' /> -<title>14 Platform and operating system notes</title> -</head> -<body> -<DIV CLASS="navigation"> -<div id='top-navigation-panel' xml:id='top-navigation-panel'> -<table align="center" width="100%" cellpadding="0" cellspacing="2"> -<tr> -<td class='online-navigation'><a rel="prev" title="13 Troubleshooting" - href="troubleshooting.html"><img src='previous.png' - border='0' height='32' alt='Previous Page' width='32' /></A></td> -<td class='online-navigation'><a rel="parent" title="Front Matter" - href="front.html"><img src='up.png' - border='0' height='32' alt='Up One Level' width='32' /></A></td> -<td class='online-navigation'><a rel="next" title="14.1 GNU/Linux issues" - href="node47.html"><img src='next.png' - border='0' height='32' alt='Next Page' width='32' /></A></td> -<td align="center" width="100%">GNU Mailman - Installation Manual</td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -</tr></table> -<div class='online-navigation'> -<b class="navlabel">Previous:</b> -<a class="sectref" rel="prev" href="troubleshooting.html">13 Troubleshooting</A> -<b class="navlabel">Up:</b> -<a class="sectref" rel="parent" href="front.html">Front Matter</A> -<b class="navlabel">Next:</b> -<a class="sectref" rel="next" href="node47.html">14.1 GNU/Linux issues</A> -</div> -<hr /></div> -</DIV> -<!--End of Navigation Panel--> - -<H1><A NAME="SECTION0011400000000000000000"> -14 Platform and operating system notes</A> -</H1> - -<P> -Generally, Mailman runs on any POSIX-based system, such as Solaris, the -various BSD variants, Linux systems, MacOSX, and other generic <span class="Unix">Unix</span> -systems. It doesn't run on Windows. For the most part, the generic -instructions given in this document should be sufficient to get Mailman -working on any supported platform. Some operating systems have additional -recommended installation or configuration instructions. - -<P> - -<p><br /></p><hr class='online-navigation' /> -<div class='online-navigation'> -<!--Table of Child-Links--> -<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></a> - -<UL CLASS="ChildLinks"> -<LI><A href="node47.html">14.1 GNU/Linux issues</a> -<LI><A href="bsd-issues.html">14.2 BSD issues</a> -<LI><A href="node49.html">14.3 MacOSX issues</a> -</ul> -<!--End of Table of Child-Links--> -</div> - -<DIV CLASS="navigation"> -<div class='online-navigation'> -<p></p><hr /> -<table align="center" width="100%" cellpadding="0" cellspacing="2"> -<tr> -<td class='online-navigation'><a rel="prev" title="13 Troubleshooting" - href="troubleshooting.html"><img src='previous.png' - border='0' height='32' alt='Previous Page' width='32' /></A></td> -<td class='online-navigation'><a rel="parent" title="Front Matter" - href="front.html"><img src='up.png' - border='0' height='32' alt='Up One Level' width='32' /></A></td> -<td class='online-navigation'><a rel="next" title="14.1 GNU/Linux issues" - href="node47.html"><img src='next.png' - border='0' height='32' alt='Next Page' width='32' /></A></td> -<td align="center" width="100%">GNU Mailman - Installation Manual</td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -</tr></table> -<div class='online-navigation'> -<b class="navlabel">Previous:</b> -<a class="sectref" rel="prev" href="troubleshooting.html">13 Troubleshooting</A> -<b class="navlabel">Up:</b> -<a class="sectref" rel="parent" href="front.html">Front Matter</A> -<b class="navlabel">Next:</b> -<a class="sectref" rel="next" href="node47.html">14.1 GNU/Linux issues</A> -</div> -</div> -<hr /> -<span class="release-info">Release 2.1, documentation updated on December 13, 2004.</span> -</DIV> -<!--End of Navigation Panel--> - -</BODY> -</HTML> diff --git a/admin/www/mailman-install/node47.html b/admin/www/mailman-install/node47.html index 7dc7be42..f02b9eab 100644 --- a/admin/www/mailman-install/node47.html +++ b/admin/www/mailman-install/node47.html @@ -104,7 +104,7 @@ recommended installation or configuration instructions. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node48.html b/admin/www/mailman-install/node48.html index a293f051..a5d78a97 100644 --- a/admin/www/mailman-install/node48.html +++ b/admin/www/mailman-install/node48.html @@ -146,7 +146,7 @@ This problem can manifest itself in other Linux distributions in </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node49.html b/admin/www/mailman-install/node49.html deleted file mode 100644 index 48878a14..00000000 --- a/admin/www/mailman-install/node49.html +++ /dev/null @@ -1,127 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> -<html> -<head> -<link rel="STYLESHEET" href="mailman-install.css" type='text/css' /> -<link rel="first" href="mailman-install.html" title='GNU Mailman - Installation Manual' /> -<link rel='last' href='about.html' title='About this document...' /> -<link rel='help' href='about.html' title='About this document...' /> -<link rel="prev" href="bsd-issues.html" /> -<link rel="parent" href="node46.html" /> -<link rel="next" href="about.html" /> -<meta name='aesop' content='information' /> -<title>14.3 MacOSX issues</title> -</head> -<body> -<DIV CLASS="navigation"> -<div id='top-navigation-panel' xml:id='top-navigation-panel'> -<table align="center" width="100%" cellpadding="0" cellspacing="2"> -<tr> -<td class='online-navigation'><a rel="prev" title="14.2 BSD issues" - href="bsd-issues.html"><img src='previous.png' - border='0' height='32' alt='Previous Page' width='32' /></A></td> -<td class='online-navigation'><a rel="parent" title="14 Platform and operating" - href="node46.html"><img src='up.png' - border='0' height='32' alt='Up One Level' width='32' /></A></td> -<td class='online-navigation'><a rel="next" title="About this document ..." - href="about.html"><img src='next.png' - border='0' height='32' alt='Next Page' width='32' /></A></td> -<td align="center" width="100%">GNU Mailman - Installation Manual</td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -</tr></table> -<div class='online-navigation'> -<b class="navlabel">Previous:</b> -<a class="sectref" rel="prev" href="bsd-issues.html">14.2 BSD issues</A> -<b class="navlabel">Up:</b> -<a class="sectref" rel="parent" href="node46.html">14 Platform and operating</A> -<b class="navlabel">Next:</b> -<a class="sectref" rel="next" href="about.html">About this document ...</A> -</div> -<hr /></div> -</DIV> -<!--End of Navigation Panel--> - -<H2><A NAME="SECTION0011430000000000000000"> -14.3 MacOSX issues</A> -</H2> - -<P> -Many people run Mailman on MacOSX. Here are some pointers that have been -collected on getting Mailman to run on MacOSX. - -<P> - -<UL> -<LI>Jaguar (MacOSX 10.2) comes with Python 2.2. While this isn't the very - latest stable version of Python, it ought to be sufficient to run - Mailman 2.1. - -<P> -</LI> -<LI>David B. O'Donnell has a web page describing his configuration of - Mailman 2.0.13 and Postfix on MacOSX Server. - -<P> -<a class="url" href="http://www.afp548.com/Articles/mail/python-mailman.html">http://www.afp548.com/Articles/mail/python-mailman.html</a> -<P> -</LI> -<LI>Kathleen Webb posted her experiences in getting Mailman running on - Jaguar using Sendmail. - -<P> -<a class="url" href="http://mail.python.org/pipermail/mailman-users/2002-October/022944.html">http://mail.python.org/pipermail/mailman-users/2002-October/022944.html</a> -<P> -</LI> -<LI>Panther server (MacOSX 10.3) comes with Mailman; Apple has a tech - document about a problem you might encounter running Mailman on Mac OS X - Server 10.3: - -<P> -<a class="url" href="http://docs.info.apple.com/article.html?artnum=107889">http://docs.info.apple.com/article.html?artnum=107889</a> -</LI> -</UL> - -<P> - -<DIV CLASS="navigation"> -<div class='online-navigation'> -<p></p><hr /> -<table align="center" width="100%" cellpadding="0" cellspacing="2"> -<tr> -<td class='online-navigation'><a rel="prev" title="14.2 BSD issues" - href="bsd-issues.html"><img src='previous.png' - border='0' height='32' alt='Previous Page' width='32' /></A></td> -<td class='online-navigation'><a rel="parent" title="14 Platform and operating" - href="node46.html"><img src='up.png' - border='0' height='32' alt='Up One Level' width='32' /></A></td> -<td class='online-navigation'><a rel="next" title="About this document ..." - href="about.html"><img src='next.png' - border='0' height='32' alt='Next Page' width='32' /></A></td> -<td align="center" width="100%">GNU Mailman - Installation Manual</td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -<td class='online-navigation'><img src='blank.png' - border='0' height='32' alt='' width='32' /></td> -</tr></table> -<div class='online-navigation'> -<b class="navlabel">Previous:</b> -<a class="sectref" rel="prev" href="bsd-issues.html">14.2 BSD issues</A> -<b class="navlabel">Up:</b> -<a class="sectref" rel="parent" href="node46.html">14 Platform and operating</A> -<b class="navlabel">Next:</b> -<a class="sectref" rel="next" href="about.html">About this document ...</A> -</div> -</div> -<hr /> -<span class="release-info">Release 2.1, documentation updated on December 13, 2004.</span> -</DIV> -<!--End of Navigation Panel--> - -</BODY> -</HTML> diff --git a/admin/www/mailman-install/node50.html b/admin/www/mailman-install/node50.html index a81d6823..52bdb69f 100644 --- a/admin/www/mailman-install/node50.html +++ b/admin/www/mailman-install/node50.html @@ -220,7 +220,7 @@ start up. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node6.html b/admin/www/mailman-install/node6.html index c71205b0..f8446806 100644 --- a/admin/www/mailman-install/node6.html +++ b/admin/www/mailman-install/node6.html @@ -97,7 +97,7 @@ </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node7.html b/admin/www/mailman-install/node7.html index 4a6fbd5e..761c706d 100644 --- a/admin/www/mailman-install/node7.html +++ b/admin/www/mailman-install/node7.html @@ -242,7 +242,7 @@ If you're using Apache, check the values for the <var>Group</var> option in </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node8.html b/admin/www/mailman-install/node8.html index 7bf6716c..f1ce4a9a 100644 --- a/admin/www/mailman-install/node8.html +++ b/admin/www/mailman-install/node8.html @@ -87,7 +87,7 @@ Once you've run <b class="program">configure</b>, you can simply run <b class="p </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/node9.html b/admin/www/mailman-install/node9.html index ffadfeb3..498f47fc 100644 --- a/admin/www/mailman-install/node9.html +++ b/admin/www/mailman-install/node9.html @@ -81,6 +81,30 @@ to fix the problems (probably the easiest solution): </UL> <P> +<div class="warning"><b class="label">Warning:</b> + +If you're running Mailman on a shared multiuser system, and you have mailing +lists with private archives, you may want to hide the private archive +directory from other users on your system. In that case, you should drop the +other execute permission (o-x) from the <span class="file">archives/private</span> directory. +However, the web server process must be able to follow the symbolic link in +public directory, otherwise your public Pipermail archives will not work. To +set this up, become root and run the following commands: + +<P> +<div class="verbatim"><pre> +# cd <prefix>/archives +# chown <web-server-user> private +# chmod o-x private +</pre></div> + +<P> +You need to know what user your web server runs as. It may be <code>www</code>, +<code>apache</code>, <code>httpd</code> or <code>nobody</code>, depending on your server's +configuration. +</div> + +<P> <DIV CLASS="navigation"> <div class='online-navigation'> @@ -114,7 +138,7 @@ to fix the problems (probably the easiest solution): </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/postfix-virtual.html b/admin/www/mailman-install/postfix-virtual.html index 07371ea7..91775ad6 100644 --- a/admin/www/mailman-install/postfix-virtual.html +++ b/admin/www/mailman-install/postfix-virtual.html @@ -188,7 +188,7 @@ group owned by <code>mailman</code>. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/pyfav.png b/admin/www/mailman-install/pyfav.png Binary files differnew file mode 100644 index 00000000..d2d8669d --- /dev/null +++ b/admin/www/mailman-install/pyfav.png diff --git a/admin/www/mailman-install/qmail-issues.html b/admin/www/mailman-install/qmail-issues.html index 65230d9b..86fbee16 100644 --- a/admin/www/mailman-install/qmail-issues.html +++ b/admin/www/mailman-install/qmail-issues.html @@ -300,7 +300,7 @@ fi </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/admin/www/mailman-install/troubleshooting.html b/admin/www/mailman-install/troubleshooting.html index 0cca3dec..fa6d153e 100644 --- a/admin/www/mailman-install/troubleshooting.html +++ b/admin/www/mailman-install/troubleshooting.html @@ -66,7 +66,7 @@ Also check for errors in your syslog files, your mail and web server log files and in Mailman's <span class="file"><var>$prefix</var>/logs/error</span> file. If you're still having problems, you should send a message to the <span class="email">mailman-users@python.org</span> mailing list<A NAME="tex2html7" - HREF="#foot605"><SUP>7</SUP></A>; see + HREF="#foot614"><SUP>7</SUP></A>; see <a class="url" href="http://mail.python.org/mailman/listinfo/mailman-users">http://mail.python.org/mailman/listinfo/mailman-users</a> for more information. @@ -211,7 +211,7 @@ Note that on Debian Linux, the system makes <span class="file">/usr/lib/sm.bin</ <P> <BR><HR><H4>Footnotes</H4> <DL> -<DT><A NAME="foot605">... list</A><A +<DT><A NAME="foot614">... list</A><A href="troubleshooting.html#tex2html7"><SUP>7</SUP></A></DT> <DD>You must subscribe to this mailing list in order to post to it, but the mailing list's archives are @@ -251,7 +251,7 @@ publicly visible. </div> </div> <hr /> -<span class="release-info">Release 2.1, documentation updated on April 16, 2005.</span> +<span class="release-info">Release 2.1, documentation updated on May 12, 2005.</span> </DIV> <!--End of Navigation Panel--> diff --git a/bin/check_perms b/bin/check_perms index 5c8ce415..53239e71 100755 --- a/bin/check_perms +++ b/bin/check_perms @@ -1,6 +1,6 @@ #! @PYTHON@ # -# Copyright (C) 1998-2004 by the Free Software Foundation, Inc. +# Copyright (C) 1998-2005 by the Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License @@ -209,7 +209,14 @@ def checkarchives(): os.chmod(private, mode & ~S_IROTH) else: print - + # In addition, on a multiuser system you may want to hide the private + # archives so other users can't read them. + if mode & S_IXOTH: + print _("""\ +Warning: Private archive directory is other-executable (o+x). + This could allow other users on your system to read private archives. + If you're on a shared multiuser system, you should consult the + installation manual on how to fix this.""") MBOXPERMS = S_IRGRP | S_IWGRP | S_IRUSR | S_IWUSR diff --git a/doc/mailman-install.tex b/doc/mailman-install.tex index 71b1e6d2..769a96ce 100644 --- a/doc/mailman-install.tex +++ b/doc/mailman-install.tex @@ -283,6 +283,26 @@ to fix the problems (probably the easiest solution): \item Repeat previous step until no more errors are reported! \end{itemize} +\begin{notice}[warning] +If you're running Mailman on a shared multiuser system, and you have mailing +lists with private archives, you may want to hide the private archive +directory from other users on your system. In that case, you should drop the +other execute permission (o-x) from the \file{archives/private} directory. +However, the web server process must be able to follow the symbolic link in +public directory, otherwise your public Pipermail archives will not work. To +set this up, become root and run the following commands: + +\begin{verbatim} +# cd <prefix>/archives +# chown <web-server-user> private +# chmod o-x private +\end{verbatim} + +You need to know what user your web server runs as. It may be \code{www}, +\code{apache}, \code{httpd} or \code{nobody}, depending on your server's +configuration. +\end{notice} + \section{Set up your web server} Congratulations! You've installed the Mailman software. To get everything |