bb747c4c528fbe5090d12ae58985789185da15cb
[external/busybox.git] / util-linux / mailutils / mail.h
1
2 struct globals {
3         pid_t helper_pid;
4         unsigned timeout;
5         unsigned opts;
6         char *user;
7         char *pass;
8         FILE *fp0; // initial stdin
9         char *opt_charset;
10         char *content_type;
11 };
12
13 #define G (*ptr_to_globals)
14 #define timeout         (G.timeout  )
15 #define opts            (G.opts     )
16 //#define user            (G.user     )
17 //#define pass            (G.pass     )
18 //#define fp0             (G.fp0      )
19 //#define opt_charset     (G.opt_charset)
20 //#define content_type    (G.content_type)
21 #define INIT_G() do { \
22         SET_PTR_TO_GLOBALS(xzalloc(sizeof(G))); \
23         G.opt_charset = (char *)CONFIG_FEATURE_MIME_CHARSET; \
24         G.content_type = (char *)"text/plain"; \
25 } while (0)
26
27 //char FAST_FUNC *parse_url(char *url, char **user, char **pass);
28
29 void FAST_FUNC launch_helper(const char **argv);
30 void FAST_FUNC get_cred_or_die(int fd);
31
32 const FAST_FUNC char *command(const char *fmt, const char *param);
33
34 void FAST_FUNC encode_base64(char *fname, const char *text, const char *eol);
35 void FAST_FUNC decode_base64(FILE *src_stream, FILE *dst_stream);