[Exim] command in programquery returns 127

Top Page
Delete this message
Reply to this message
Author: Dale Amon
Date:  
To: exim-users
Subject: [Exim] command in programquery returns 127
After a bit of code skimming, I find that this is
the point in exim, in child.c, child_open_uid()
where it happens:

  if (envp == NULL) execv(CS argv[0], (char *const *)argv);
    else execve(CS argv[0], (char *const *)argv, (char *const *)envp);


/* Failed to execv. Signal this failure using EX_EXECFAILED. We are
losing the actual errno we got back, because there is no way to return
this. */

  CHILD_FAILED:
  _exit(EX_EXECFAILED);      /* Note: must be _exit(), NOT exit() */


Philip defines EX_EXECFAILED to 127 in exim.h, so I
will be this is where the fail occurs, rather than
a shell or pipe problem as I thought. Since it loses
the actual return, I can't tell what really is going
wrong.

Helpful suggestions or even rants on my stupidity
and ancestry are welcome so long as they contain an
answer ;-)

--
------------------------------------------------------
   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"
------------------------------------------------------