Re: [EXIM] queryprogram error message

Top Page
Delete this message
Reply to this message
Author: Dave C.
Date:  
To: exim-users
Subject: Re: [EXIM] queryprogram error message

Ugh..

I made the following change in routers/queryprogram.c but it didnt
help.. It seems that when verify fails on an inbound SMTP it is
hardcoded to say "Cannot route to...." rather than returning a message
determined at runtime. I tried to follow the code to see how a message
could be passed back but I am barely a novice at C so I got lost
quickly...


  if (strcmpic(returned[0], "fail") == 0) return FAIL;
- if (strcmpic(returned[0], "forcefail") == 0) return FORCEFAIL;
+ if (strcmpic(returned[0], "forcefail") == 0) {
+    addr->message = string_sprintf("%s", returned[1]);
+    return FORCEFAIL;
+  } ;
  if (strcmpic(returned[0], "defer") == 0) return DEFER;



On Mon, 23 Mar 1998, Dave C. wrote:

> Date: Mon, 23 Mar 1998 18:28:08 -0500 (EST)
> From: "Dave C." <djc@???>
> Reply-To: djc@???
> To: exim-users@???
> Subject: [EXIM] queryprogram error message
>
>
>
> # .   FAIL: routing failed; pass the address to the next router.
> #
> # .   FORCEFAIL: routing failed; do not pass the address to any more
> #     routers.
> #
> # .   DEFER: routing could not be completed at this time; try again later.
> #
> # .   ERROR: some disastrous error occured; freeze the message.
> #
> #When the first word is not OK, the remainder of the line is an error
> #message explaining what went wrong. For example:
> #
> #  FAIL  queryprogram cannot route to unseen.discworld.fict.book

>
>
> Hrm.. Why doesnt exim return the error text in the 550 code returned in
> an SMTP session for a recipient that is passed to queryprogram?
>
> Would this be hard to implement?
>
>
> #
> #Otherwise, the line must be formatted as follows:
> #
> # OK <transport name> <new domain> <option> <arbitrary text>
> #
> #The second field is the name of a transport instance, or a + character,
> #which means that the transport specified for the router using the generic
> #transport option is to be used, if set.
> #
> #If the third field is not empty or a + character, it is a new domain name
>
>
> ---------------------------------------------------------------------
> David J. Chiodo \ Microwave Systems  \ Campbell Network Systems
>  <djc@???> <davec@???>  \ 820 Monroe NW Ste 411
>   Domain Administrator <dns@???>   \ Grand Rapids  MI 49503
>    Customer Support <support@???>   \ 616-774-3131 <info@???>
> Fax 616-774-3933    Tollfree 1-888-694-INET    http://www.cns.net

>
>
>
> --
> *** Exim information can be found at http://www.exim.org/ ***
>
>



--
*** Exim information can be found at http://www.exim.org/ ***