[Exim] commmand in programquery returns 127

Top Page
Delete this message
Reply to this message
Author: Dale Amon
Date:  
To: exim-users
Subject: [Exim] commmand in programquery returns 127
At the moment my incoming mail is swamped by spammers
and I'm trying to get a legacy system to verify early
so I can reject another few percent at HELO.

The problem I have having is I cannot get my process
to run via exim.

Here is a test script I wrote after I gave up trying
to work this problem with my C program:

#!/bin/sh
echo "Calling weaselvfy $1 $2" >> /var/log/weaselvfy.log
set >> /var/log/weaselvfy.log
echo "accept"
exit 0

Not that I have tried it with exit 1 also to see if that
affected the results. When it runs under exim nothing
shows up in the /var/log/weaselvfy.log; if I su and newgrp
and cd / and run the same
    /usr/sbin/weaselvfy ${local_part} ${domain}
output *does* go to that log. So the script itself
(and the original C program) do what is expected of
them.


Here is the exim4.conf routers segment:

vfy:
  driver                = queryprogram
  domains               = +weasel_domains
  retry_use_local_part
  command               = "/usr/sbin/weaselvfy ${local_part} ${domain}"
  command_user          = root
  command_group         = mail
  verify_only
  verify_sender         = false
  verify_recipient      = true
  debug_print           = "***** WEASEL VERIFIER ${local_part} ${domain} *****"


I have tried it with user pop and as well as user root.

The ACL segment is:

  warn    log_message   = [DEBUG] Can't verify recipient: ${local_part} ${domain} <${acl_verify_message}>
          !verify       = recipient



The actual output is:

01:02:34 19542 --------> weasel_vfy router <--------
01:02:34 19542 local_part=willmore domain=vnl.com
01:02:34 19542 checking domains
01:02:34 19542 vnl.com in "apollo.vnl.com : vnl.com:vnl.net: partial-dbm;/etc/weaselpop/virtual-domains.db"? yes (
matched "vnl.com")
01:02:34 19542 vnl.com in "+weasel_domains"? yes (matched "+weasel_domains")
01:02:34 19542 ***** WEASEL VERIFIER willmore vnl.com *****
01:02:34 19542 calling weasel_vfy router
01:02:34 19542 weasel_vfy router called for willmore@???: domain = vnl.com
01:02:34 19542 uid=0 gid=8 current_directory=/
01:02:34 19542 direct command:
01:02:34 19542 argv[0] = /usr/sbin/weaselvfy
01:02:34 19542 argv[1] = ${local_part}
01:02:34 19542 argv[2] = ${domain}
01:02:34 19542 direct command after expansion:
01:02:34 19542 argv[0] = /usr/sbin/weaselvfy
01:02:34 19542 argv[1] = willmore
01:02:34 19542 argv[2] = vnl.com
01:02:34 19542 weasel_vfy router: defer for willmore@???
01:02:34 19542 message: weasel_vfy router: command returned non-zero code 127
01:02:34 19542 ----------- end verify ------------
01:02:34 19542 warn: condition test deferred

The process is installed as:

-r-sr-xr-x    1 root     mail          197 Jul  2 01:00 /usr/sbin/weaselvfy


The exim version is:
Exim version 4.32 #1 built 26-Apr-2004 09:57:22
Copyright (c) University of Cambridge 2004
Berkeley DB: Sleepycat Software: Berkeley DB 3.2.9: (June 16, 2003)
Support for: iconv() IPv6 PAM Perl GnuTLS
Lookups: lsearch wildlsearch nwildlsearch cdb dbm dbmnz dnsdb dsearch ldap ldapdn ldapm mysql nis nis0 passwd pgsql
Authenticators: cram_md5 plaintext spa
Routers: accept dnslookup ipliteral iplookup manualroute queryprogram redirect
Transports: appendfile/maildir/mailstore/mbx autoreply lmtp pipe smtp
Fixed never_users: 0
Contains exiscan-acl patch revision 17 (c) Tom Kistner [http://duncanthrax.net/exiscan/]
Configuration file is /etc/exim4/exim4.conf

The symptoms imply to me the exec of a shell is failing
and my test script is not executing. Any ideas what I
have done wrong?

        **** NOTE *****
Since I am recieving very little email through the
spam storm I will have to watch for replies on
http://www.exim.org/pipermail/exim-users/



--
------------------------------------------------------
   Dale Amon     amon@???    +44-7802-188325
       International linux systems consultancy
     Hardware & software system design, security
    and networking, systems programming and Admin
          "Have Laptop, Will Travel"
------------------------------------------------------