From f3fdfab0a1d838c9cc72af2c50c12fad42ba1856 Mon Sep 17 00:00:00 2001 From: Bob Mottram Date: Thu, 11 Feb 2016 12:12:35 +0000 Subject: [PATCH] Public and private email folders --- man/freedombone-addemail.1.gz | Bin 534 -> 683 bytes man/freedombone-addlist.1.gz | Bin 496 -> 676 bytes src/freedombone-addemail | 25 +++++++++++++++++++++---- src/freedombone-addlist | 26 ++++++++++++++++++++++---- 4 files changed, 43 insertions(+), 8 deletions(-) diff --git a/man/freedombone-addemail.1.gz b/man/freedombone-addemail.1.gz index 34b6517e85265eb48e7841445eea77560f853a6f..642d3c22081356735881cd0b48c484b29c69227b 100644 GIT binary patch literal 683 zcmV;c0#yAUiwFSjc)V5s1Fe&7PunmM$KU5uobqNMttl`ev1*!VS=UyhP|uTUE7*efPiL{q2iZQ%DVBqE)O5?6D+4#e{@o2#-!-SQ_~Kv-Ke?<~w&;h7ABAX-i#yc*8OVen7ApFJ2RiG}u!mJM19#!CdJ!R6TP z*vdLoo!;{9>Uy!9E#J`WdDwX3D44=~=pk%gsMAsgo6KlmLKo62eJllsO@;P%q3^po zU&hOeo7rMDyS@s829vdDyIk-boMDAc(O6I<%QCd&nN}2(i7ghddZKn{qpsRdwM@`N zU6t`8Q>8>Q3+VG!N2=PlRClz0K35f&KCU|o>xW+oRZK)Aw$y})1#Zy*+rtR*7C91L z(z3o55)O7kO2{;bqCsw9fio#7>1CA&W+_zKgI0<%>*IQ&)TI-;sMnew;NBQ4TocgN zh@0pnf)&--YLP&xtramDTpCS($~KwLM+G+5UM5gz2V579iGq5oz?O`oB}4Csg;Tdo zT1~6SMOxK1kc??ScdTeRySAvsy-;@t4oX?SIec`7pbepjEprG5Sa4I74wJ*yOdG+d zf&^3Mr6c3$+B0jtB9~mw>MG>6sPD{PqOJKJVo&jDm%<%QimYhU)S)dztuKlUq_D2F zu$Q0v1)7BJevZ}?nzS1%wQ+==5wi=T5#-L5cF^xIpMxki!D6!LPZpB_ zjE5i3PR1Y3n$?kT-Lws0H1D18Tc4}Z_Ir|=X@04HtP)#ZJbXj3(q@fzdD&#$VmxSo RiT7o#;19?aQp4*6005oYPlf;h literal 534 zcmV+x0_pu9iwFSE3tv_M19g&ZZ`wc%$KU5uSb4KoBrQ{=4oy=@#{jJqM8c|#P19Xs zl2dbWbPu$A`I+vsB=TUmQoG!BI{5}jiC~*LJ zs#IQqGorB@G!`_Ah!QP#h%`HuYKzUQ3K*Ub_BrAW)dia9m}T@VbXz002Kaf4U++!@ z?Dd2Aqg{bJaG*lCCMA+Bd2m3`Nzo7ry!Ch zSd16(crhNpX!zl}KYD-NSrg@s*JA+5tk=&Ue5I4^w_;-^)gArF3fta3enpj$S)onu Yx~K<~gASN^&vONT0G|GdHi`oP0EhegM*si- diff --git a/man/freedombone-addlist.1.gz b/man/freedombone-addlist.1.gz index ae9d6961353c35fae334c528d4ac31f7df8d07ce..bff5c6f6fc81cb0c243bed8eb2abf30a354f2258 100644 GIT binary patch literal 676 zcmV;V0$cqbiwFRpdc0Nu1GSS+Z`wc*#qa(UBVU?G#Waa3rKqZcQwpeopcopZG>5f4 zhHbpN?*4&T>WA;FaY&F-sh1)j@a*i{-+P{o<|8OHVy;B0Bz9Pym)ux5f$;1ECQQTW zyOZ}Jg!FuQ?t_Iv{l-v(bgT@6AWB9MPWzKV7`!I;qXYdsH^4wJUUIpDrfe11H3Iq~ znA%trtyFS1y`ClG$~$vOrtSW z?^G@=c?QcG&2OphTZYerM z-hrqaaY7fhFJ6e6gcz4WkSN%$QQ`(QFxgUY0~#~r8_Z$L?V6CEG9Y2}K~PwY=)H%R zz%4bFC8V^dnKT7z+S^(yRGE`}p)|cR+i*oNE}&Kpln}Jpx9x4H%5o)l!hRuhTBEd0 z!~Ph0$tkBhlE?_0l}3T7Fylq-9nn7B=x>>{FDZyAQ__-oXg}CdRr)uJkMpYU^9bjMA-Fl*Vb?@$F0i{iBh!z^J~r z*!yoY_Ixv>YUes$4CzkZV5PK$)U7;I5XG>zwlckLcSSSj(kN4+n=-T3S@#83ms93w zTB-hGKDxdMgIJ|7QI>{Jz{gaj7h0vt^2|i;A+qXI5T!bp4QJiqY}kWA|HJv|;OxAq z#@q_J!fb^-h$o%X?AEPCy!nnx zZMVad^2{qnL=(5Gp&TKu*b8kl-5BXg6lraxq-n||9t=f zy zXRFO@xd_;Q%7$I-_%~O_5@`=W&p(V+eO7La165z(gT`0YEu2JE-2`t{O&~5S#u5!r z1y*=M1H9@iqy>X1$`fYrBwazu=ZOi7&DgY>7P@cbE0B&7%Mt`#8eZ8P4b^s|<+{uW zpKC)$?pm)9W;xW_gI0=)o3xiP^wCLOJ%gKz)Ek49YZG4D&>=hTDc(-#i>~pgjRWBi zv}4D@7z*c(b{Itmn!$@O)hZI)7AB4U+GQlI^=LcPXuFv%*8z*QfVp-wjDn9si(8|G zb~3f0e+-@e#6n@%YO;zZtH}_?qYpQO@%2p`jipoc1MmY5A)faJ>4Ps+eEOE $GROUP_NAME" $PM; then - if ! grep -q "\# encrypt" $PM; then + if [[ $PUBLIC != "yes" ]]; then + # private emails go after the encryption stage + echo '' >> $PM echo "# Email rule for $EMAILADDRESS -> $GROUP_NAME" >> $PM echo ":0" >> $PM echo " * ^From:.*$EMAILADDRESS" >> $PM echo "$LISTDIR/new" >> $PM echo "# End of rule" >> $PM else - filter=$(echo "# Email rule for $EMAILADDRESS -> $GROUP_NAME\n:0\n * ^From:.*$EMAILADDRESS\n$LISTDIR/new\n# End of rule\n") - sed -i "/# encrypt/i ${filter}" $PM + # public emails are copied before hte encryption stage + if ! grep -q '# encrypt' $PM; then + echo '' >> $PM + echo "# Email rule for $EMAILADDRESS -> $GROUP_NAME" >> $PM + echo ":0" >> $PM + echo " * ^From:.*$EMAILADDRESS" >> $PM + echo "$LISTDIR/new" >> $PM + echo "# End of rule" >> $PM + else + filter=$(echo "# Email rule for $EMAILADDRESS -> $GROUP_NAME\n:0\n * ^From:.*$EMAILADDRESS\n$LISTDIR/new\n# End of rule\n") + sed -i "/# encrypt/i ${filter}" $PM + fi fi chown $MYUSERNAME:$MYUSERNAME $PM fi diff --git a/src/freedombone-addlist b/src/freedombone-addlist index 684f8447..592760d9 100755 --- a/src/freedombone-addlist +++ b/src/freedombone-addlist @@ -38,10 +38,11 @@ MYUSERNAME=$USER MAILINGLIST= SUBJECTTAG= LIST_ADDRESS= +PUBLIC='yes' function show_help { echo '' - echo $"${PROJECT_NAME}-addlist -u [username] -l [mailing list name] -s [subject tag] -e [list email address]" + echo $"${PROJECT_NAME}-addlist -u [username] -l [mailing list name] -s [subject tag] -e [list email address] --public [yes|no]" echo '' exit 0 } @@ -70,6 +71,10 @@ case $key in shift LIST_ADDRESS="$1" ;; + -p|--public) + shift + PUBLIC="$1" + ;; *) # unknown option ;; @@ -100,7 +105,8 @@ fi chown -R $MYUSERNAME:$MYUSERNAME $LISTDIR if ! grep -q "Subject:.*()\[$SUBJECTTAG\]" $PM; then - if ! grep -q "\# encrypt" $PM; then + if [[ $PUBLIC != "yes" ]]; then + # private emails go after the encryption stage filter=" # Email rule for $MAILINGLIST subject [$SUBJECTTAG] :0 @@ -110,8 +116,20 @@ $LISTDIR/new " echo "$filter" >> $PM else - filter=$(echo "# Email rule for $MAILINGLIST subject [$SUBJECTTAG]\n:0\n * ^Subject:.*()\\\[$SUBJECTTAG\\\]\n$LISTDIR/new\n# End of rule\n") - sed -i "/# encrypt/i ${filter}" $PM + # public emails are copied before hte encryption stage + if ! grep -q '# encrypt' $PM; then + filter=" +# Email rule for $MAILINGLIST subject [$SUBJECTTAG] +:0 + * ^Subject:.*()\[$SUBJECTTAG\] +$LISTDIR/new +# End of rule +" + echo "$filter" >> $PM + else + filter=$(echo "# Email rule for $MAILINGLIST subject [$SUBJECTTAG]\n:0\n * ^Subject:.*()\\\[$SUBJECTTAG\\\]\n$LISTDIR/new\n# End of rule\n") + sed -i "/# encrypt/i ${filter}" $PM + fi fi chown $MYUSERNAME:$MYUSERNAME $PM fi