Coverage Report

Created: 2026-04-27 06:39

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/pigeonhole/src/lib-sieve/plugins/environment/sieve-ext-environment.h
Line
Count
Source
1
#ifndef SIEVE_EXT_ENVIRONMENT_H
2
#define SIEVE_EXT_ENVIRONMENT_H
3
4
#include "sieve-common.h"
5
6
/*
7
 * Environment extension
8
 */
9
10
/* FIXME: this is not suitable for future plugin support */
11
12
extern const struct sieve_extension_def environment_extension;
13
14
static inline int
15
sieve_ext_environment_get_extension(struct sieve_instance *svinst,
16
             const struct sieve_extension **ext_r)
17
0
{
18
0
  return sieve_extension_register(svinst, &environment_extension, FALSE,
19
0
          ext_r);
20
0
}
Unexecuted instantiation: ext-environment.c:sieve_ext_environment_get_extension
Unexecuted instantiation: tst-environment.c:sieve_ext_environment_get_extension
Unexecuted instantiation: ext-vnd-environment.c:sieve_ext_environment_get_extension
Unexecuted instantiation: ext-environment-common.c:sieve_ext_environment_get_extension
Unexecuted instantiation: ext-vnd-environment-items.c:sieve_ext_environment_get_extension
Unexecuted instantiation: ext-vnd-environment-variables.c:sieve_ext_environment_get_extension
21
22
static inline int
23
sieve_ext_environment_require_extension(struct sieve_instance *svinst,
24
          const struct sieve_extension **ext_r)
25
0
{
26
0
  return sieve_extension_require(svinst, &environment_extension, TRUE,
27
0
               ext_r);
28
0
}
Unexecuted instantiation: ext-environment.c:sieve_ext_environment_require_extension
Unexecuted instantiation: tst-environment.c:sieve_ext_environment_require_extension
Unexecuted instantiation: ext-vnd-environment.c:sieve_ext_environment_require_extension
Unexecuted instantiation: ext-environment-common.c:sieve_ext_environment_require_extension
Unexecuted instantiation: ext-vnd-environment-items.c:sieve_ext_environment_require_extension
Unexecuted instantiation: ext-vnd-environment-variables.c:sieve_ext_environment_require_extension
29
30
bool sieve_ext_environment_is_active(const struct sieve_extension *env_ext,
31
             struct sieve_interpreter *interp);
32
33
/*
34
 * Environment item
35
 */
36
37
struct sieve_environment_item;
38
39
struct sieve_environment_item_def {
40
  const char *name;
41
  bool prefix;
42
43
  const char *value;
44
  const char *(*get_value)(const struct sieve_runtime_env *renv,
45
         const struct sieve_environment_item *item,
46
         const char *name);
47
};
48
49
struct sieve_environment_item {
50
  const struct sieve_environment_item_def *def;
51
  const struct sieve_extension *ext;
52
};
53
54
void sieve_environment_item_register(
55
  const struct sieve_extension *env_ext, struct sieve_interpreter *interp,
56
  const struct sieve_extension *ext,
57
  const struct sieve_environment_item_def *item_def);
58
const char *
59
ext_environment_item_get_value(const struct sieve_extension *env_ext,
60
             const struct sieve_runtime_env *renv,
61
             const char *name);
62
63
#endif