Beste mede tweakers,
Na al een aantal uren gespeeld te hebben met een squirrelmail plugin (courier-vacation) t.b.v. de vakantieperiode, lukt het me maar niet om mails succesvol door het mailfilter te krijgen.
Constructie maildir's:
/var/spool/mail/virtual/domein/user1/
/var/spool/mail/virtual/domein/user2/
...etc
In main.cf en master.cf wordt alles naar mijn weten al op de juiste manier naar het filter gestuurd, ik zie namelijk aan de error en mail.log dat hij wordt aangeroepen (zie onder voor de error)
Relevante regels in main.cf:
Relevante regels in master.cf:
Het maildrop filter is /var/spool/mail/virtual/.mailfilter en bevat:
De error die terug wordt gestuurd:
[code]Command died with status 2:
"/var/spool/mail/virtual/.mailfilter". Command output:
/var/spool/mail/virtual/.mailfilter: 1: DEFAULT: not found
/var/spool/mail/virtual/.mailfilter: 12: Syntax error: "else" unexpected
(expecting "then")[code]
Op een of andere manier worden de else'jes niet gepakt. Ook als ik alle else statements weghaal (niet wenselijk) doet hij het niet, dan krijg ik een foutmelding dat de laatste } niet correct is.
Heeft iemand enig idee waar dit aan kan liggen? Mijn linux-ubuntu ervaring is nog niet zo groot, ik heb mijn servertje sinds december.
Bij voorbaat heel erg bedankt,
Vincent
Na al een aantal uren gespeeld te hebben met een squirrelmail plugin (courier-vacation) t.b.v. de vakantieperiode, lukt het me maar niet om mails succesvol door het mailfilter te krijgen.
Constructie maildir's:
/var/spool/mail/virtual/domein/user1/
/var/spool/mail/virtual/domein/user2/
...etc
In main.cf en master.cf wordt alles naar mijn weten al op de juiste manier naar het filter gestuurd, ik zie namelijk aan de error en mail.log dat hij wordt aangeroepen (zie onder voor de error)
Relevante regels in main.cf:
code:
1
2
| maildrop_destination_recipient_limit=1 virtual_transport = maildrop |
Relevante regels in master.cf:
code:
1
2
| maildrop unix - n n - - pipe flags=DRhu user=virtual argv=/var/spool/mail/virtual/.mailfilter -d ${recipient} {$user} {$domain} |
Het maildrop filter is /var/spool/mail/virtual/.mailfilter en bevat:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
| DEFAULT = "/var/spool/mail/virtual/$3/$2" `test -f vacation.txt` if ($RETURNCODE==0) { `test -f vacation_subject.txt` if ($RETURNCODE==0) { SUBJECT=`cat vacation_subject.txt` cc "| mailbot -t vacation.txt -A 'From: $LOGNAME' -A 'Subject: $SUBJECT' /usr/sbin/sendmail -f ''" } else { cc "| mailbot -t vacation.txt -A 'From: $LOGNAME' /usr/sbin/sendmail -f ''" } `test -f vacation_cc_addresses.txt` if ($RETURNCODE==0) { CCADDRESSES=`cat vacation_cc_addresses.txt` `test -f vacation_keep_messages.txt` if ($RETURNCODE==0) { cc "! -f \"$FROM\" $CCADDRESSES" } else { to "! -f \"$FROM\" $CCADDRESSES" } } } |
De error die terug wordt gestuurd:
[code]Command died with status 2:
"/var/spool/mail/virtual/.mailfilter". Command output:
/var/spool/mail/virtual/.mailfilter: 1: DEFAULT: not found
/var/spool/mail/virtual/.mailfilter: 12: Syntax error: "else" unexpected
(expecting "then")[code]
Op een of andere manier worden de else'jes niet gepakt. Ook als ik alle else statements weghaal (niet wenselijk) doet hij het niet, dan krijg ik een foutmelding dat de laatste } niet correct is.
Heeft iemand enig idee waar dit aan kan liggen? Mijn linux-ubuntu ervaring is nog niet zo groot, ik heb mijn servertje sinds december.
Bij voorbaat heel erg bedankt,
Vincent