mta_route
SPLAY_HEAD(mta_route_tree, mta_route);
static struct mta_route *mta_route(struct mta_source *, struct mta_host *);
static void mta_route_ref(struct mta_route *);
static void mta_route_unref(struct mta_route *);
static const char *mta_route_to_text(struct mta_route *);
static int mta_route_cmp(const struct mta_route *, const struct mta_route *);
SPLAY_PROTOTYPE(mta_route_tree, mta_route, entry, mta_route_cmp);
struct mta_route *route;
struct mta_route *route = arg;
mta_route_disable(struct mta_route *route, int penalty, int reason)
mta_route_enable(struct mta_route *route)
static struct mta_route *
struct mta_route *route, *best;
route = mta_route(c->source, mx->host);
struct mta_route *route;
static struct mta_route *
struct mta_route key, *r;
mta_route_ref(struct mta_route *r)
mta_route_unref(struct mta_route *r)
mta_route_to_text(struct mta_route *r)
mta_route_cmp(const struct mta_route *a, const struct mta_route *b)
SPLAY_GENERATE(mta_route_tree, mta_route, entry, mta_route_cmp);
mta_source_error(struct mta_relay *relay, struct mta_route *route, const char *e)
mta_route_error(struct mta_relay *relay, struct mta_route *route)
static void mta_route_enable(struct mta_route *);
mta_route_ok(struct mta_relay *relay, struct mta_route *route)
static void mta_route_disable(struct mta_route *, int, int);
mta_route_down(struct mta_relay *relay, struct mta_route *route)
mta_route_collect(struct mta_relay *relay, struct mta_route *route)
static struct mta_route *mta_find_route(struct mta_connector *, time_t, int*,
mta_route_next_task(struct mta_relay *relay, struct mta_route *route)
mta_session(struct mta_relay *relay, struct mta_route *route, const char *mxname)
struct mta_route *route;
struct mta_route *route;
void mta_route_ok(struct mta_relay *, struct mta_route *);
void mta_route_error(struct mta_relay *, struct mta_route *);
void mta_route_down(struct mta_relay *, struct mta_route *);
void mta_route_collect(struct mta_relay *, struct mta_route *);
void mta_source_error(struct mta_relay *, struct mta_route *, const char *);
struct mta_task *mta_route_next_task(struct mta_relay *, struct mta_route *);
void mta_session(struct mta_relay *, struct mta_route *, const char *);
SPLAY_ENTRY(mta_route) entry;