Coverage Report

Created: 2026-10-17 06:32

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/pigeonhole/src/lib-sieve/plugins/duplicate/ext-duplicate.c
Line
Count
Source
1
/* Copyright (c) Pigeonhole authors, see top-level COPYING file */
2
3
/* Extension duplicate
4
 * -------------------
5
 *
6
 * Authors: Stephan Bosch
7
 * Specification: vendor-defined; spec-bosch-sieve-duplicate
8
 * Implementation: full
9
 * Status: experimental
10
 *
11
 */
12
13
#include "lib.h"
14
15
#include "sieve-extensions.h"
16
#include "sieve-commands.h"
17
#include "sieve-binary.h"
18
19
#include "sieve-validator.h"
20
21
#include "ext-duplicate-common.h"
22
23
/*
24
 * Extensions
25
 */
26
27
static bool
28
ext_duplicate_validator_load(const struct sieve_extension *ext,
29
           struct sieve_validator *valdtr);
30
31
const struct sieve_extension_def duplicate_extension = {
32
  .name = "duplicate",
33
  .load = ext_duplicate_load,
34
  .unload = ext_duplicate_unload,
35
  .validator_load = ext_duplicate_validator_load,
36
  SIEVE_EXT_DEFINE_OPERATION(tst_duplicate_operation),
37
};
38
39
/*
40
 * Validation
41
 */
42
43
static bool
44
ext_duplicate_validator_load(const struct sieve_extension *ext,
45
           struct sieve_validator *valdtr)
46
0
{
47
  /* Register duplicate test */
48
0
  sieve_validator_register_command(valdtr, ext, &tst_duplicate);
49
50
0
  return TRUE;
51
0
}