Coverage Report

Created: 2026-09-14 07:03

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/pigeonhole/src/lib-sieve/plugins/relational/ext-relational.c
Line
Count
Source
1
/* Copyright (c) Pigeonhole authors, see top-level COPYING file */
2
3
/* Extension relational
4
 * --------------------
5
 *
6
 * Author: Stephan Bosch
7
 * Specification: RFC 3431
8
 * Implementation: full
9
 * Status: testing
10
 *
11
 */
12
13
#include "lib.h"
14
#include "str.h"
15
16
#include "sieve-common.h"
17
18
#include "sieve-ast.h"
19
#include "sieve-code.h"
20
#include "sieve-extensions.h"
21
#include "sieve-commands.h"
22
#include "sieve-comparators.h"
23
#include "sieve-match-types.h"
24
#include "sieve-validator.h"
25
#include "sieve-generator.h"
26
#include "sieve-interpreter.h"
27
28
#include "ext-relational-common.h"
29
30
/*
31
 * Extension
32
 */
33
34
static bool
35
ext_relational_validator_load(const struct sieve_extension *ext,
36
            struct sieve_validator *valdtr);
37
38
const struct sieve_extension_def relational_extension = {
39
  .name = "relational",
40
  .validator_load = ext_relational_validator_load,
41
  SIEVE_EXT_DEFINE_OPERAND(rel_match_type_operand),
42
};
43
44
static bool
45
ext_relational_validator_load(const struct sieve_extension *ext,
46
            struct sieve_validator *valdtr)
47
0
{
48
0
  sieve_match_type_register(valdtr, ext, &value_match_type);
49
0
  sieve_match_type_register(valdtr, ext, &count_match_type);
50
51
0
  return TRUE;
52
0
}