int main(int argc, char **argv) { int ch; log_init(1); while ((ch = getopt(argc, argv, "")) != -1) { switch (ch) { default: log_warnx("warn: table-stub: bad option"); return (1); /* NOTREACHED */ } } argc -= optind; argv += optind; if (argc != 0) { log_warnx("warn: table-stub: bogus argument(s)"); return (1); } table_api_on_update(table_stub_update); table_api_on_check(table_stub_check); table_api_on_lookup(table_stub_lookup); table_api_on_fetch(table_stub_fetch); table_api_dispatch(); return (0); }
int main(int argc, char **argv) { int ch, i; log_init(1); log_verbose(~0); while ((ch = getopt(argc, argv, "")) != -1) { switch (ch) { default: log_warnx("warn: table-mysql: bad option"); return (1); /* NOTREACHED */ } } argc -= optind; argv += optind; if (argc != 1) { log_warnx("warn: table-mysql: bogus argument(s)"); return (1); } conffile = argv[0]; for (i = 0; i < SQL_MAX_RESULT; i++) { results[i].buffer_type = MYSQL_TYPE_STRING; results[i].buffer = results_buffer[i]; results[i].buffer_length = SMTPD_MAXLINESIZE; results[i].is_null = 0; } config = config_load(conffile); if (config == NULL) { log_warnx("warn: table-mysql: error parsing config file"); return (1); } if (config_connect(config) == 0) { log_warnx("warn: table-mysql: could not connect"); return (1); } table_api_on_update(table_mysql_update); table_api_on_check(table_mysql_check); table_api_on_lookup(table_mysql_lookup); table_api_on_fetch(table_mysql_fetch); table_api_dispatch(); return (0); }
int main(int argc, char **argv) { int ch; log_init(1); log_verbose(~0); while ((ch = getopt(argc, argv, "")) != -1) { switch (ch) { default: log_warnx("warn: table-ldap: bad option"); return (1); /* NOTREACHED */ } } argc -= optind; argv += optind; if (argc != 1) { log_warnx("warn: table-ldap: bogus argument(s)"); return (1); } config = argv[0]; if (!ldap_config()) { log_warnx("warn: table-ldap: could not parse config"); return (1); } log_debug("debug: table-ldap: done reading config"); if (!ldap_open()) { log_warnx("warn: table-ldap: failed to connect"); return (1); } log_debug("debug: table-ldap: connected"); table_api_on_update(table_ldap_update); table_api_on_check(table_ldap_check); table_api_on_lookup(table_ldap_lookup); table_api_on_fetch(table_ldap_fetch); table_api_dispatch(); return (0); }
int main(int argc, char **argv) { int ch; log_init(1); log_verbose(~0); while ((ch = getopt(argc, argv, "")) != -1) { switch (ch) { default: log_warnx("warn: table-postgres: bad option"); return (1); /* NOTREACHED */ } } argc -= optind; argv += optind; if (argc != 1) { log_warnx("warn: table-postgres: bogus argument(s)"); return (1); } conffile = argv[0]; config = config_load(conffile); if (config == NULL) { log_warnx("warn: table-postgres: error parsing config file"); return (1); } if (config_connect(config) == 0) { log_warnx("warn: table-postgres: could not connect"); return (1); } table_api_on_update(table_postgres_update); table_api_on_check(table_postgres_check); table_api_on_lookup(table_postgres_lookup); table_api_on_fetch(table_postgres_fetch); table_api_dispatch(); return (0); }
int main(int argc, char **argv) { int ch; log_init(1); log_verbose(~0); while ((ch = getopt(argc, argv, "")) != -1) { switch (ch) { default: log_warnx("warn: table-sqlite: bad option"); return (1); /* NOTREACHED */ } } argc -= optind; argv += optind; if (argc != 1) { log_warnx("warn: table-sqlite: bogus argument(s)"); return (1); } config = argv[0]; dict_init(&sources); if (table_sqlite_update() == 0) { log_warnx("warn: table-sqlite: error parsing config file"); return (1); } table_api_on_update(table_sqlite_update); table_api_on_check(table_sqlite_check); table_api_on_lookup(table_sqlite_lookup); table_api_on_fetch(table_sqlite_fetch); table_api_dispatch(); return (0); }
int main(int argc, char **argv) { int ch; log_init(1); log_verbose(~0); while ((ch = getopt(argc, argv, "")) != -1) { switch (ch) { default: log_warnx("warn: table-socketmap: bad option"); return (1); /* NOTREACHED */ } } argc -= optind; argv += optind; if (argc != 1) { log_warnx("warn: table-socketmap: bogus argument(s)"); return (1); } config = argv[0]; if (table_socketmap_connect(config) == 0) { log_warnx("warn: table-socketmap: error connecting to %s", config); return (1); } table_api_on_update(table_socketmap_update); table_api_on_check(table_socketmap_check); table_api_on_lookup(table_socketmap_lookup); table_api_on_fetch(table_socketmap_fetch); table_api_dispatch(); return (0); }
int main(int argc, char **argv) { int ch; char *path, *buf; PyObject *self, *code, *module; log_init(1); while ((ch = getopt(argc, argv, "")) != -1) { switch (ch) { default: fatalx("bad option"); /* NOTREACHED */ } } argc -= optind; argv += optind; if (argc == 0) fatalx("missing path"); path = argv[0]; Py_Initialize(); self = Py_InitModule("table", py_methods); PyModule_AddIntConstant(self, "K_NONE", K_NONE); PyModule_AddIntConstant(self, "K_ALIAS", K_ALIAS); PyModule_AddIntConstant(self, "K_DOMAIN", K_DOMAIN); PyModule_AddIntConstant(self, "K_CREDENTIALS", K_CREDENTIALS); PyModule_AddIntConstant(self, "K_NETADDR", K_NETADDR); PyModule_AddIntConstant(self, "K_USERINFO", K_USERINFO); PyModule_AddIntConstant(self, "K_SOURCE", K_SOURCE); PyModule_AddIntConstant(self, "K_MAILADDR", K_MAILADDR); PyModule_AddIntConstant(self, "K_ADDRNAME", K_ADDRNAME); buf = loadfile(path); code = Py_CompileString(buf, path, Py_file_input); free(buf); if (code == NULL) { PyErr_Print(); fatalx("failed to compile %s", path); } module = PyImport_ExecCodeModuleEx("mytable", code, path); if (module == NULL) { PyErr_Print(); fatalx("failed to install module %s", path); } log_debug("debug: starting..."); py_on_update = PyObject_GetAttrString(module, "table_update"); py_on_check = PyObject_GetAttrString(module, "table_check"); py_on_lookup = PyObject_GetAttrString(module, "table_lookup"); py_on_fetch = PyObject_GetAttrString(module, "table_fetch"); table_api_on_update(table_python_update); table_api_on_check(table_python_check); table_api_on_lookup(table_python_lookup); table_api_on_fetch(table_python_fetch); table_api_dispatch(); log_debug("debug: exiting"); Py_Finalize(); return 1; }