Coverage Report

Created: 2026-05-16 06:58

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/pigeonhole/src/lib-sieve/plugins/imap4flags/sieve-ext-imap4flags.h
Line
Count
Source
1
#ifndef SIEVE_EXT_IMAP4FLAGS_H
2
#define SIEVE_EXT_IMAP4FLAGS_H
3
4
struct sieve_variable_storage;
5
6
/*
7
 * Imap4flags extension
8
 */
9
10
/* FIXME: this is not suitable for future plugin support */
11
12
extern const struct sieve_extension_def imap4flags_extension;
13
extern const struct sieve_interpreter_extension
14
  imap4flags_interpreter_extension;
15
16
static inline int
17
sieve_ext_imap4flags_require_extension(struct sieve_instance *svinst,
18
               const struct sieve_extension **ext_r)
19
0
{
20
0
  return sieve_extension_require(svinst, &imap4flags_extension, TRUE,
21
0
               ext_r);
22
0
}
Unexecuted instantiation: ext-imap4flags.c:sieve_ext_imap4flags_require_extension
Unexecuted instantiation: tag-flags.c:sieve_ext_imap4flags_require_extension
Unexecuted instantiation: tst-hasflag.c:sieve_ext_imap4flags_require_extension
Unexecuted instantiation: cmd-flag.c:sieve_ext_imap4flags_require_extension
Unexecuted instantiation: ext-imap4flags-common.c:sieve_ext_imap4flags_require_extension
23
24
void sieve_ext_imap4flags_interpreter_load(
25
  const struct sieve_extension *ext,
26
  const struct sieve_runtime_env *renv);
27
28
/*
29
 * Action side-effect
30
 */
31
32
void sieve_ext_imap4flags_register_side_effect(
33
  struct sieve_validator *valdtr, const struct sieve_extension *flg_ext,
34
        const char *command);
35
36
/*
37
 * Flag syntax
38
 */
39
40
bool sieve_ext_imap4flags_flag_is_valid(const char *flag);
41
42
/*
43
 * Flag manipulation
44
 */
45
46
int sieve_ext_imap4flags_set_flags(const struct sieve_runtime_env *renv,
47
           const struct sieve_extension *flg_ext,
48
           struct sieve_variable_storage *storage,
49
           unsigned int var_index,
50
           struct sieve_stringlist *flags) ATTR_NULL(3);
51
int sieve_ext_imap4flags_add_flags(const struct sieve_runtime_env *renv,
52
           const struct sieve_extension *flg_ext,
53
           struct sieve_variable_storage *storage,
54
           unsigned int var_index,
55
           struct sieve_stringlist *flags) ATTR_NULL(3);
56
int sieve_ext_imap4flags_remove_flags(const struct sieve_runtime_env *renv,
57
              const struct sieve_extension *flg_ext,
58
              struct sieve_variable_storage *storage,
59
              unsigned int var_index,
60
              struct sieve_stringlist *flags)
61
              ATTR_NULL(3);
62
63
/*
64
 * Flag retrieval
65
 */
66
67
struct sieve_stringlist *
68
sieve_ext_imap4flags_get_flags(const struct sieve_runtime_env *renv,
69
             const struct sieve_extension *flg_ext,
70
             struct sieve_stringlist *flags_list);
71
72
#endif