projects
/
old-projects.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
f03530c
)
more modules
author
Pierre Habouzit
<madcoder@debian.org>
Wed, 29 Oct 2003 13:25:28 +0000
(13:25 +0000)
committer
Pierre Habouzit
<madcoder@debian.org>
Wed, 29 Oct 2003 13:25:28 +0000
(13:25 +0000)
philter/philter/include/filter.inc.php
patch
|
blob
|
blame
|
history
philter/philter/include/philter.inc.php
patch
|
blob
|
blame
|
history
philter/philter/include/plugin_autoreply.inc.php
patch
|
blob
|
blame
|
history
philter/philter/include/plugin_bogofilter.inc.php
patch
|
blob
|
blame
|
history
philter/philter/include/rule.inc.php
patch
|
blob
|
blame
|
history
philter/philter/install.d/config.inc.php
patch
|
blob
|
blame
|
history
diff --git
a/philter/philter/include/filter.inc.php
b/philter/philter/include/filter.inc.php
index
34c9297
..
ab74a41
100644
(file)
--- a/
philter/philter/include/filter.inc.php
+++ b/
philter/philter/include/filter.inc.php
@@
-51,9
+51,6
@@
class Filter {
global $mail_pool,$philter;
$res = "# generated by philter\n"
. "# vim:set syntax=procmail:\n"
global $mail_pool,$philter;
$res = "# generated by philter\n"
. "# vim:set syntax=procmail:\n"
- . "\n"
- . ":0 f\n"
- . "|formail -I'X-Philter-Or'\n"
. "\n";
foreach($this->rules as $id=>$rule)
. "\n";
foreach($this->rules as $id=>$rule)
diff --git
a/philter/philter/include/philter.inc.php
b/philter/philter/include/philter.inc.php
index
463f772
..
4a71714
100644
(file)
--- a/
philter/philter/include/philter.inc.php
+++ b/
philter/philter/include/philter.inc.php
@@
-28,7
+28,7
@@
class Philter {
function Philter() {
$this->config = array(
'db' => array('host', 'name', 'user', 'pwd', 'link'),
function Philter() {
$this->config = array(
'db' => array('host', 'name', 'user', 'pwd', 'link'),
- 'path' => array('
procmail', '
spool'),
+ 'path' => array('spool'),
'match_plugins' => array(),
'action_plugins' => array(),
'global_plugins' => array(),
'match_plugins' => array(),
'action_plugins' => array(),
'global_plugins' => array(),
@@
-93,6
+93,9
@@
class Philter {
fwrite($f, $procmail, strlen($procmail));
fclose($f);
rename($file.".tmp", $file);
fwrite($f, $procmail, strlen($procmail));
fclose($f);
rename($file.".tmp", $file);
+ echo "<pre>\n";
+ echo $procmail;
+ echo "</pre>\n";
return true;
}
return true;
}
diff --git
a/philter/philter/include/plugin_autoreply.inc.php
b/philter/philter/include/plugin_autoreply.inc.php
index
e068ce1
..
25a9788
100644
(file)
--- a/
philter/philter/include/plugin_autoreply.inc.php
+++ b/
philter/philter/include/plugin_autoreply.inc.php
@@
-33,10
+33,11
@@
EOF;
$uid = get_user_id();
$text = explode("\n",$_data[1]);
$res = " :0 hc\n"
$uid = get_user_id();
$text = explode("\n",$_data[1]);
$res = " :0 hc\n"
- . " *X-Philter-Autoreply: $uid"
- . " | ( formail -rA'X-Philter-Autoreply: $uid; \ \n";
+ . " * !^FROM_DAEMON\n"
+ . " * !^X-Philter-Autoreply: $uid\n"
+ . " | ( formail -rI'Precedence: junk' -A'X-Philter-Autoreply: $uid; \ \n";
foreach($text as $line)
foreach($text as $line)
- $res .= " echo ".escapeshellarg(
$line
)."; \ \n";
+ $res .= " echo ".escapeshellarg(
chop($line)
)."; \ \n";
$res.= " ) | $"."SENDMAIL -oi -t\n";
return $res;
}
$res.= " ) | $"."SENDMAIL -oi -t\n";
return $res;
}
diff --git
a/philter/philter/include/plugin_bogofilter.inc.php
b/philter/philter/include/plugin_bogofilter.inc.php
index
e50488d
..
a8b6fa8
100644
(file)
--- a/
philter/philter/include/plugin_bogofilter.inc.php
+++ b/
philter/philter/include/plugin_bogofilter.inc.php
@@
-16,8
+16,21
@@
class BogoPlugin extends MatchPlugin {
function is_global() { return true; }
function to_string($_data) {
function is_global() { return true; }
function to_string($_data) {
- $res = "\n";
- return $res;
+ global $philter;
+ $bogo = $philter->config['path']['bogofilter'];
+ if($_data[1]==1)
+ return ":0 fw\n"
+ . "| $bogo -u -e -p\n"
+ . ":0 e\n"
+ . "{ EXITCODE=75 HOST }\n"
+ . "\n";
+
+ if($_data[1]==2)
+ return ":0 HB:\n"
+ . "* ? $bogo\n"
+ . "/dev/null\n";
+
+ return "";
}
function to_form($_data) {
}
function to_form($_data) {
diff --git
a/philter/philter/include/rule.inc.php
b/philter/philter/include/rule.inc.php
index
218e59c
..
e18d470
100644
(file)
--- a/
philter/philter/include/rule.inc.php
+++ b/
philter/philter/include/rule.inc.php
@@
-89,34
+89,30
@@
class Rule {
function to_string() {
global $philter;
function to_string() {
global $philter;
+ $bloc = "{\n";
+ foreach($this->actions as $action)
+ $bloc .= $philter->config['action_plugins'][$action[0]]->to_string($action);
+ $bloc.= " :0\n"
+ . " /dev/null\n"
+ . "}\n";
+
$res = $this->block ? ":0\n" : ":0 c\n";
if($this->all) {
foreach($this->matches as $match)
$res .= $philter->config['match_plugins'][$match[0]]->to_string($match);
$res = $this->block ? ":0\n" : ":0 c\n";
if($this->all) {
foreach($this->matches as $match)
$res .= $philter->config['match_plugins'][$match[0]]->to_string($match);
+ $res .= $bloc;
} else {
$i = 0; $res = '';
foreach($this->matches as $match) {
} else {
$i = 0; $res = '';
foreach($this->matches as $match) {
- $res .= (empty($i) ? ":0
f\n" : ":0 f
E\n");
+ $res .= (empty($i) ? ":0
\n" : ":0
E\n");
$res .= $philter->config['match_plugins'][$match[0]]->to_string($match);
$res .= $philter->config['match_plugins'][$match[0]]->to_string($match);
- $res .=
"| formail -I'X-Philter-Or: yes'\n"
;
+ $res .=
$bloc
;
$i++;
}
$i++;
}
-
- $res.= ":0 f\n"
- . "* ^X-Philter-Or: yes\n"
- . "| formail -I'X-Philter-Or'\n"
- . ($this->block ? ":0 A\n" : ":0 Ac\n");
}
}
- $res.= "{\n";
- foreach($this->actions as $action)
- $res .= $philter->config['action_plugins'][$action[0]]->to_string($action);
- $res.= " :0\n"
- . " /dev/null\n"
- . "}\n\n";
-
- return $res;
+ return $res."\n";
}
function sql_clean($_uid, $_rid) {
}
function sql_clean($_uid, $_rid) {
diff --git
a/philter/philter/install.d/config.inc.php
b/philter/philter/install.d/config.inc.php
index
4ffc08a
..
81d08b0
100644
(file)
--- a/
philter/philter/install.d/config.inc.php
+++ b/
philter/philter/install.d/config.inc.php
@@
-7,7
+7,6
@@
* Copyright: See COPYING files that comes with this distribution
********************************************************************************/
* Copyright: See COPYING files that comes with this distribution
********************************************************************************/
-
$philter = new Philter();
/********** LOCALE **********/
$philter = new Philter();
/********** LOCALE **********/
@@
-25,8
+24,8
@@
$philter->pconnect();
/********** PATHS **********/
/********** PATHS **********/
-$philter->config['path']['
procmail'] = "/usr/bin/procmail
";
-$philter->config['path']['spool'] = "/var/spool/philter";
+$philter->config['path']['
bogofilter'] = "/usr/bin/bogfilter -d /var/mail/.bogofilter
";
+$philter->config['path']['spool']
= "/var/spool/philter";
/********** PLUGINS **********/
/********** PLUGINS **********/