bcb4e51a409d94ae670de96afb8483a4f7855294Stephan Bosch/* Copyright (c) 2003-2018 Dovecot authors, see the included COPYING file */
65a1c01472ebf88b9f5bbd6636827902936d5497Timo Sirainenstruct passdb_template *passdb_template_build(pool_t pool, const char *args)
65a1c01472ebf88b9f5bbd6636827902936d5497Timo Sirainen tmpl = p_new(pool, struct passdb_template, 1);
65a1c01472ebf88b9f5bbd6636827902936d5497Timo Sirainen p_array_init(&tmpl->args, pool, str_array_length(tmp));
2bd58dc6e7c991c86713a4b91f9db468abe734a4Aki Tuomi i_fatal("Invalid passdb template %s - key must not be empty",
0f5dc4da3982053036be65190e44bf28a67b1ca2Timo Sirainenint passdb_template_export(struct passdb_template *tmpl,
0f5dc4da3982053036be65190e44bf28a67b1ca2Timo Sirainen const char **error_r)
65a1c01472ebf88b9f5bbd6636827902936d5497Timo Sirainen table = auth_request_get_var_expand_table(auth_request, NULL);
0f5dc4da3982053036be65190e44bf28a67b1ca2Timo Sirainen if (auth_request_var_expand_with_table(str, args[i+1],
65a1c01472ebf88b9f5bbd6636827902936d5497Timo Sirainen auth_request_set_field(auth_request, args[i], value,
65a1c01472ebf88b9f5bbd6636827902936d5497Timo Sirainenbool passdb_template_remove(struct passdb_template *tmpl,
80e80d414f8fa748d2d10c40db423922968a11ccTimo Sirainenbool passdb_template_is_empty(struct passdb_template *tmpl)
edb35cb1acb3d270e32fc731c0573323da041f2cAki Tuomiconst char *const *passdb_template_get_args(struct passdb_template *tmpl, unsigned int *count_r)