]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
auth: db-lua - Split off auth_lua_script_auth_db_init() from auth_lua_script_init()
authorMarkus Valentin <markus.valentin@open-xchange.com>
Wed, 21 Feb 2024 12:16:57 +0000 (13:16 +0100)
committerAki Tuomi <aki.tuomi@open-xchange.com>
Fri, 17 Jan 2025 08:39:58 +0000 (10:39 +0200)
src/auth/db-lua.c
src/auth/db-lua.h
src/auth/passdb-lua.c
src/auth/userdb-lua.c

index cba551e1e2c7e002d5e8450f3ebbf538eae9b684..3386a42469355a9fd02fd45288da711b7fb73b89 100644 (file)
@@ -478,6 +478,14 @@ int auth_lua_script_init(const struct auth_lua_script_parameters *params,
        auth_lua_auth_request_register(script->L);
        if (dlua_script_init(script, error_r) < 0)
                return -1;
+
+       return 0;
+}
+
+int auth_lua_script_auth_db_init(const struct auth_lua_script_parameters *params,
+                                const char **error_r)
+{
+       struct dlua_script *script = params->script;
        const char *fn;
        switch (params->stype) {
        case AUTH_LUA_SCRIPT_TYPE_PASSDB:
index 277f7e5c6d058267f5b9e2932199e569e426f02d..1962bc6d6742f00be5956e579317bd9967ee6058 100644 (file)
@@ -28,6 +28,9 @@ struct auth_lua_script_parameters {
        const char *const *arguments;
 };
 
+int
+auth_lua_script_auth_db_init(const struct auth_lua_script_parameters *params,
+                            const char **error_r);
 int auth_lua_script_init(const struct auth_lua_script_parameters *params,
                         const char **error_r);
 
index 17be5b14f4e241c35233ff4ec8385c5482b54441..e7892bcfda3475722bdbf2f2c31a7152ff62ef15 100644 (file)
@@ -153,6 +153,8 @@ static void passdb_lua_init(struct passdb_module *_module)
                .arguments = module->arguments,
        };
        if (auth_lua_script_init(&params, &error) < 0)
+               i_fatal("passdb-lua: script_init() failed: %s", error);
+       if (auth_lua_script_auth_db_init(&params, &error) < 0)
                i_fatal("passdb-lua: auth_passdb_init() failed: %s", error);
 
        module->has_password_verify =
index 66ac75fa2fc6d0d689093e5c54d47f28eaa16ccc..6138ab726d92fae84726c4c53c6bd45aba7beb47 100644 (file)
@@ -77,6 +77,8 @@ static void userdb_lua_init(struct userdb_module *_module)
                .arguments = module->arguments,
        };
        if (auth_lua_script_init(&params, &error) < 0)
+               i_fatal("userdb-lua: script_init() failed: %s", error);
+       if (auth_lua_script_auth_db_init(&params, &error) < 0)
                i_fatal("userdb-lua: auth_userdb_init() failed: %s", error);
 }