File: edit-mail.h

package info (click to toggle)
dovecot 1%3A2.2.13-12~deb8u4
  • links: PTS, VCS
  • area: main
  • in suites: jessie
  • size: 38,792 kB
  • sloc: ansic: 341,472; sh: 16,920; makefile: 5,393; cpp: 1,474; perl: 265; xml: 44; python: 34; pascal: 27
file content (49 lines) | stat: -rw-r--r-- 1,239 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/* Copyright (c) 2002-2013 Pigeonhole authors, see the included COPYING file
 */

#ifndef __EDIT_MAIL_H
#define __EDIT_MAIL_H

struct edit_mail;

struct edit_mail *edit_mail_wrap(struct mail *mail);
void edit_mail_unwrap(struct edit_mail **edmail);
struct edit_mail *edit_mail_snapshot(struct edit_mail *edmail);

void edit_mail_reset(struct edit_mail *edmail);

struct mail *edit_mail_get_mail(struct edit_mail *edmail);

/*
 * Header modification
 */

/* Simple API */

void edit_mail_header_add
	(struct edit_mail *edmail, const char *field_name, const char *value,
		bool last);
int edit_mail_header_delete
	(struct edit_mail *edmail, const char *field_name, int index);

/* Iterator */

struct edit_mail_header_iter;

int edit_mail_headers_iterate_init
	(struct edit_mail *edmail, const char *field_name, bool reverse,
		struct edit_mail_header_iter **edhiter_r);
void edit_mail_headers_iterate_deinit
	(struct edit_mail_header_iter **edhiter);

void edit_mail_headers_iterate_get
	(struct edit_mail_header_iter *edhiter, const char **value_r);

bool edit_mail_headers_iterate_next
	(struct edit_mail_header_iter *edhiter);
bool edit_mail_headers_iterate_remove
	(struct edit_mail_header_iter *edhiter);



#endif /* __edit_mail_H */