NeoMutt  2020-06-26-89-g172cd3
Teaching an old dog new tricks
DOXYGEN
remailer.h
Go to the documentation of this file.
1 
23 #ifndef MUTT_REMAILER_H
24 #define MUTT_REMAILER_H
25 
26 #include <stddef.h>
27 #include <stdint.h>
28 
29 struct Email;
30 struct ListHead;
31 struct MuttWindow;
32 
33 /* These Config Variables are only used in remailer.c */
34 extern char *C_MixEntryFormat;
35 extern char *C_Mixmaster;
36 
37 /* Mixmaster's maximum chain length. Don't change this. */
38 #define MAX_MIXES 19
39 
40 typedef uint8_t MixCapFlags;
41 #define MIX_CAP_NO_FLAGS 0
42 #define MIX_CAP_COMPRESS (1 << 0)
43 #define MIX_CAP_MIDDLEMAN (1 << 1)
44 #define MIX_CAP_NEWSPOST (1 << 2)
45 #define MIX_CAP_NEWSMAIL (1 << 3)
46 
50 struct Remailer
51 {
52  int num;
53  char *shortname;
54  char *addr;
55  char *ver;
57 };
58 
62 struct MixChain
63 {
64  size_t cl;
65  int ch[MAX_MIXES];
66 };
67 
68 int mix_send_message(struct ListHead *chain, const char *tempfile);
69 int mix_check_message(struct Email *e);
70 void mix_make_chain(struct MuttWindow *win, struct ListHead *chainhead, int cols);
71 
72 #endif /* MUTT_REMAILER_H */
char * C_MixEntryFormat
Config: (mixmaster) printf-like format string for the mixmaster chain.
Definition: remailer.c:58
The envelope/body of an email.
Definition: email.h:37
A Mixmaster chain.
Definition: remailer.h:62
int mix_check_message(struct Email *e)
Safety-check the message before passing it to mixmaster.
Definition: remailer.c:851
MixCapFlags caps
Definition: remailer.h:56
A division of the screen.
Definition: mutt_window.h:114
int num
Definition: remailer.h:52
char * C_Mixmaster
Config: (mixmaster) External command to route a mixmaster message.
Definition: remailer.c:59
uint8_t MixCapFlags
Flags, e.g. MIX_CAP_NO_FLAGS.
Definition: remailer.h:40
char * shortname
Definition: remailer.h:53
size_t cl
Definition: remailer.h:64
int mix_send_message(struct ListHead *chain, const char *tempfile)
Send an email via Mixmaster.
Definition: remailer.c:903
char * addr
Definition: remailer.h:54
#define MAX_MIXES
Definition: remailer.h:38
char * ver
Definition: remailer.h:55
A Mixmaster remailer.
Definition: remailer.h:50
void mix_make_chain(struct MuttWindow *win, struct ListHead *chainhead, int cols)
Create a Mixmaster chain.
Definition: remailer.c:601