From a87632e2eff2ab411e5a603d3446a481770315d0 Mon Sep 17 00:00:00 2001 From: Stephan Bosch <stephan@rename-it.nl> Date: Sun, 12 Apr 2009 14:10:40 +0200 Subject: [PATCH] Environment: activated host environment item. --- src/lib-sieve/plugins/environment/ext-environment-common.c | 7 ++++++- src/lib-sieve/plugins/environment/sieve-ext-environment.h | 2 ++ src/testsuite/testsuite.c | 3 ++- tests/extensions/environment/basic.svtest | 5 +++++ 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/lib-sieve/plugins/environment/ext-environment-common.c b/src/lib-sieve/plugins/environment/ext-environment-common.c index 367c64e1e..eed230f30 100644 --- a/src/lib-sieve/plugins/environment/ext-environment-common.c +++ b/src/lib-sieve/plugins/environment/ext-environment-common.c @@ -98,10 +98,15 @@ const struct sieve_environment_item domain_env_item = { * executing. */ +const char *envit_host_get_value(const struct sieve_script_env *senv) +{ + return senv->hostname; +} + const struct sieve_environment_item host_env_item = { "host", NULL, - NULL, + envit_host_get_value, }; /* "location": diff --git a/src/lib-sieve/plugins/environment/sieve-ext-environment.h b/src/lib-sieve/plugins/environment/sieve-ext-environment.h index 9bd4cc8de..19060dd45 100644 --- a/src/lib-sieve/plugins/environment/sieve-ext-environment.h +++ b/src/lib-sieve/plugins/environment/sieve-ext-environment.h @@ -1,6 +1,8 @@ #ifndef __SIEVE_EXT_ENVIRONMENT_H #define __SIEVE_EXT_ENVIRONMENT_H +#include "sieve-common.h" + struct sieve_environment_item { const char *name; diff --git a/src/testsuite/testsuite.c b/src/testsuite/testsuite.c index 17b8a04a0..933399fe1 100644 --- a/src/testsuite/testsuite.c +++ b/src/testsuite/testsuite.c @@ -171,9 +171,10 @@ int main(int argc, char **argv) memset(&scriptenv, 0, sizeof(scriptenv)); scriptenv.default_mailbox = "INBOX"; + scriptenv.hostname = "testsuite.example.com"; scriptenv.username = user; scriptenv.smtp_open = testsuite_smtp_open; - scriptenv.smtp_close = testsuite_smtp_close; + scriptenv.smtp_close = testsuite_smtp_close; scriptenv.trace_stream = ( trace ? o_stream_create_fd(1, 0, FALSE) : NULL ); /* Run the test */ diff --git a/tests/extensions/environment/basic.svtest b/tests/extensions/environment/basic.svtest index ed884d511..cb6094587 100644 --- a/tests/extensions/environment/basic.svtest +++ b/tests/extensions/environment/basic.svtest @@ -19,3 +19,8 @@ test "Name" { } } +test "Host" { + if not environment "host" "testsuite.example.com" { + test_fail "wrong testsuite hostname"; + } +} -- GitLab