/*
* drivertab.c:
* define the available director, router, transport and lookup
* drivers for use by smail.
*
* # # ###
* # # # ## ##### # # # # # #### ###
* # # # # # # # ## # # ## # # # ###
* # # # # # # # # # # # # # # # #
* # # # ###### ##### # # # # # # # # ###
* # # # # # # # # ## # # ## # # ###
* ## ## # # # # # # # # # #### ###
*
* THIS FILE IS GENERATED AUTOMATICALLY BY THE SCRIPT mkdrivtab.sh FROM
* THE DRIVER CONFIGURATION FILE ../conf/driver/arpa-network
*
* YOU MUST MAKE CHANGES TO THE DRIVER CONF FILE AND REBUILD RATHER THAN
* EDITING THIS FILE DIRECTLY.
*/
#include "defs.h"
#include <sys/types.h>
#include <stdio.h>
#include "smail.h"
#include "list.h"
#include "parse.h"
#include "addr.h"
#include "direct.h"
#include "route.h"
#include "transport.h"
extern struct addr *dtd_aliasinclude __P((struct director *, struct addr *, struct addr **, struct addr **, struct addr **, struct addr **));
extern char *dtb_aliasinclude __P((struct director *, struct attribute *));
extern void dtp_aliasinclude __P((FILE *, struct director *));
extern struct addr *dtd_forwardinclude __P((struct director *, struct addr *, struct addr **, struct addr **, struct addr **, struct addr **));
extern char *dtb_forwardinclude __P((struct director *, struct attribute *));
extern void dtp_forwardinclude __P((FILE *, struct director *));
extern struct addr *dtd_genericinclude __P((struct director *, struct addr *, struct addr **, struct addr **, struct addr **, struct addr **));
extern char *dtb_genericinclude __P((struct director *, struct attribute *));
extern void dtp_genericinclude __P((FILE *, struct director *));
extern struct addr *dtd_aliasfile __P((struct director *, struct addr *, struct addr **, struct addr **, struct addr **, struct addr **));
extern char *dtb_aliasfile __P((struct director *, struct attribute *));
extern void dtp_aliasfile __P((FILE *, struct director *));
extern struct addr *dtd_error __P((struct director *, struct addr *, struct addr **, struct addr **, struct addr **, struct addr **));
extern char *dtb_error __P((struct director *, struct attribute *));
extern void dtp_error __P((FILE *, struct director *));
extern struct addr *dtd_forwardfile __P((struct director *, struct addr *, struct addr **, struct addr **, struct addr **, struct addr **));
extern char *dtb_forwardfile __P((struct director *, struct attribute *));
extern void dtp_forwardfile __P((FILE *, struct director *));
extern struct addr *dtd_user __P((struct director *, struct addr *, struct addr **, struct addr **, struct addr **, struct addr **));
extern char *dtb_user __P((struct director *, struct attribute *));
extern void dtp_user __P((FILE *, struct director *));
extern struct addr *dtd_altuser __P((struct director *, struct addr *, struct addr **, struct addr **, struct addr **, struct addr **));
extern char *dtb_altuser __P((struct director *, struct attribute *));
extern void dtp_altuser __P((FILE *, struct director *));
extern struct addr *dtd_smartuser __P((struct director *, struct addr *, struct addr **, struct addr **, struct addr **, struct addr **));
extern char *dtb_smartuser __P((struct director *, struct attribute *));
extern void dtp_smartuser __P((FILE *, struct director *));
extern void rtd_pathalias __P((struct router *, struct addr *, struct addr **, struct addr **, struct addr **));
extern char *rtb_pathalias __P((struct router *, struct attribute *));
extern void rtp_pathalias __P((FILE *, struct router *));
extern void rtc_uuname __P((struct router *));
extern void rtd_uuname __P((struct router *, struct addr *, struct addr **, struct addr **, struct addr **));
extern void rtf_uuname __P((struct router *));
extern char *rtb_uuname __P((struct router *, struct attribute *));
extern void rtp_uuname __P((FILE *, struct router *));
extern void rtd_smarthost __P((struct router *, struct addr *, struct addr **, struct addr **, struct addr **));
extern char *rtb_smarthost __P((struct router *, struct attribute *));
extern void rtp_smarthost __P((FILE *, struct router *));
extern void rtd_reroute __P((struct router *, struct addr *, struct addr **, struct addr **, struct addr **));
extern char *rtb_reroute __P((struct router *, struct attribute *));
extern void rtp_reroute __P((FILE *, struct router *));
extern void rtd_rewrite __P((struct router *, struct addr *, struct addr **, struct addr **, struct addr **));
extern char *rtb_rewrite __P((struct router *, struct attribute *));
extern void rtp_rewrite __P((FILE *, struct router *));
extern void rtd_queryprogram __P((struct router *, struct addr *, struct addr **, struct addr **, struct addr **));
extern char *rtb_queryprogram __P((struct router *, struct attribute *));
extern void rtp_queryprogram __P((FILE *, struct router *));
extern void rtd_gethostbyname __P((struct router *, struct addr *, struct addr **, struct addr **, struct addr **));
extern char *rtb_gethostbyname __P((struct router *, struct attribute *));
extern void rtp_gethostbyname __P((FILE *, struct router *));
extern void rtd_gethostbyaddr __P((struct router *, struct addr *, struct addr **, struct addr **, struct addr **));
extern char *rtb_gethostbyaddr __P((struct router *, struct attribute *));
extern void rtp_gethostbyaddr __P((FILE *, struct router *));
extern void rtd_bind __P((struct router *, struct addr *, struct addr **, struct addr **, struct addr **));
extern char *rtb_bind __P((struct router *, struct attribute *));
extern void rtp_bind __P((FILE *, struct router *));
extern void tpd_pipe __P((struct addr *, struct addr **, struct addr **, struct addr **));
extern char *tpb_pipe __P((struct transport *, struct attribute *));
extern void tpp_pipe __P((FILE *, struct transport *));
extern void tpd_appendfile __P((struct addr *, struct addr **, struct addr **, struct addr **));
extern char *tpb_appendfile __P((struct transport *, struct attribute *));
extern void tpp_appendfile __P((FILE *, struct transport *));
extern void tpd_tcpsmtp __P((struct addr *, struct addr **, struct addr **, struct addr **));
extern char *tpb_tcpsmtp __P((struct transport *, struct attribute *));
extern void tpp_tcpsmtp __P((FILE *, struct transport *));
struct direct_driver direct_drivers[] = {
{ "aliasinclude", NULL, dtd_aliasinclude, NULL, dtb_aliasinclude, dtp_aliasinclude },
{ "forwardinclude", NULL, dtd_forwardinclude, NULL, dtb_forwardinclude, dtp_forwardinclude },
{ "genericinclude", NULL, dtd_genericinclude, NULL, dtb_genericinclude, dtp_genericinclude },
{ "aliasfile", NULL, dtd_aliasfile, NULL, dtb_aliasfile, dtp_aliasfile },
{ "error", NULL, dtd_error, NULL, dtb_error, dtp_error },
{ "forwardfile", NULL, dtd_forwardfile, NULL, dtb_forwardfile, dtp_forwardfile },
{ "user", NULL, dtd_user, NULL, dtb_user, dtp_user },
{ "altuser", NULL, dtd_altuser, NULL, dtb_altuser, dtp_altuser },
{ "smartuser", NULL, dtd_smartuser, NULL, dtb_smartuser, dtp_smartuser },
{ NULL,NULL, NULL, NULL, NULL, NULL },
};
struct route_driver route_drivers[] = {
{ "pathalias", NULL, rtd_pathalias, NULL, rtb_pathalias, rtp_pathalias },
{ "uuname", rtc_uuname, rtd_uuname, rtf_uuname, rtb_uuname, rtp_uuname },
{ "smarthost", NULL, rtd_smarthost, NULL, rtb_smarthost, rtp_smarthost },
{ "reroute", NULL, rtd_reroute, NULL, rtb_reroute, rtp_reroute },
{ "rewrite", NULL, rtd_rewrite, NULL, rtb_rewrite, rtp_rewrite },
{ "queryprogram", NULL, rtd_queryprogram, NULL, rtb_queryprogram, rtp_queryprogram },
{ "gethostbyname", NULL, rtd_gethostbyname, NULL, rtb_gethostbyname, rtp_gethostbyname },
{ "gethostbyaddr", NULL, rtd_gethostbyaddr, NULL, rtb_gethostbyaddr, rtp_gethostbyaddr },
{ "bind", NULL, rtd_bind, NULL, rtb_bind, rtp_bind },
{ NULL, NULL, NULL, NULL, NULL, NULL },
};
struct transport_driver transport_drivers[] = {
{ "pipe", NULL, tpd_pipe, NULL, tpb_pipe, tpp_pipe },
{ "appendfile", NULL, tpd_appendfile, NULL, tpb_appendfile, tpp_appendfile },
{ "tcpsmtp", NULL, tpd_tcpsmtp, NULL, tpb_tcpsmtp, tpp_tcpsmtp },
{ NULL, NULL, NULL, NULL, NULL, NULL },
};
syntax highlighted by Code2HTML, v. 0.9.1