Nigel Wade ha scritto:
>>
>> Hi Nigel,
>> In first case the debugging output is: (with exim4 -oMr spam-scanned
>> -d -bt root@???)
>> --------> maildir_overquota2 router <--------
>> local_part=root domain=domain.it
>> calling maildir_overquota2 router
>> maildir_overquota2 router called for root@???: domain = domain.it
>> uid=8 gid=8 current_directory=/
>> direct command:
>> argv[0] = /usr/local/sbin/checkQuota
>> argv[1] = $local_part
>> argv[2] = $domain
>> direct command after expansion:
>> argv[0] = /usr/local/sbin/checkQuota
>> argv[1] = root
>> argv[2] = domain.it
>> command wrote: PASS
>> maildir_overquota2 router passed for root@???
>
>
> Ok, here the values of $local_part and $domain above (root and
> domain.it) are substited in the command as expected...
>
>>
>> end exim proceed with another router.
>>
>> In second case the debugging output is: (with exim4 -bh IP)
>> --------> maildir_overquota2 router <--------
>> local_part=root domain=domain.it
>> calling maildir_overquota2 router
>> maildir_overquota2 router called for root@???: domain = domain.it
>> uid=8 gid=8 current_directory=/
>> direct command:
>> argv[0] = /usr/local/sbin/checkQuota
>> argv[1] = $local_part
>> argv[2] = $domain
>> direct command after expansion:
>> argv[0] = /usr/local/sbin/checkQuota
>> argv[1] = koron
>> argv[2] = koron.it
>> maildir_overquota2 router: defer for root@???
>
>
> ... but here they are not. In this command they have been substituted
> as koron and koron.it, despite the debug output stating they are root
> and domain.it, as above. >
> Do those values have any significance?
I'm forget to change real value (koron - koron.it) with test value (root
- domain.it) :-)
This is my debug output in second case: (with exim4 -bh IP)
--------> maildir_overquota2 router <--------
local_part=root domain=domain.it
calling maildir_overquota2 router
maildir_overquota2 router called for root@???: domain = domain.it
uid=8 gid=8 current_directory=/
direct command:
argv[0] = /usr/local/sbin/checkQuota
argv[1] = $local_part
argv[2] = $domain
direct command after expansion:
argv[0] = /usr/local/sbin/checkQuota
argv[1] = root
argv[2] = domain.it
maildir_overquota2 router: defer for root@???
>
>> message: maildir_overquota2 router: command returned non-zero code 127
>
>
> What does your script really do? If all it does is to output the
> string PASS, why would the arguments passed to it make any difference?
> The 127 normally indicates a "command not found" or "permission
> denied" type of error.
I would to do a router for check maildir quota. I use as router -
transport procmail that not check maildir quota.
Any idea?