* Write error message to database log *
*************************************************/
-/* This writes to the database log
+/* This expands an arbitrary per-transport string.
+ It might, for example, be used to write to the database log.
Arguments:
dbl_host_defer_query dbl_host_defer_query from the transport options block
dbl_delivery_domain = string_copy(addr->domain);
dbl_defer_errno = addr->basic_errno;
-dbl_defer_errstr = NULL;
-if (addr->message != NULL)
- if (addr->basic_errno > 0)
- dbl_defer_errstr = string_sprintf("%s: %s", addr->message, strerror(addr->basic_errno));
- else
- dbl_defer_errstr = string_copy(addr->message);
-else if (addr->basic_errno > 0)
- dbl_defer_errstr = string_copy(strerror(addr->basic_errno));
+dbl_defer_errstr = (addr->message != NULL)
+ ? (addr->basic_errno > 0)
+ ? string_sprintf("%s: %s", addr->message, strerror(addr->basic_errno))
+ : string_copy(addr->message)
+ : (addr->basic_errno > 0)
+ ? string_copy(strerror(addr->basic_errno))
+ : NULL;
DEBUG(D_transport) {
debug_printf(" DBL(host defer): dbl_host_defer_query=|%s| dbl_delivery_IP=%s\n", dbl_host_defer_query, dbl_delivery_ip);
}
+
+router_name = addr->router->name;
+transport_name = addr->transport->name;
expand_string(dbl_host_defer_query);
+router_name = transport_name = NULL;
}
#endif