NeoMutt  2022-04-29-323-g5fcc6c
Teaching an old dog new tricks
DOXYGEN
parse.h
Go to the documentation of this file.
1
23#ifndef MUTT_EMAIL_PARSE_H
24#define MUTT_EMAIL_PARSE_H
25
26#include "config.h"
27#include <stdbool.h>
28#include <stdio.h>
29#include "mime.h"
30
31struct Body;
32struct Envelope;
33struct Email;
34
35void mutt_auto_subscribe (const char *mailto);
36int mutt_check_encoding (const char *c);
37enum ContentType mutt_check_mime_type (const char *s);
38char * mutt_extract_message_id (const char *s, size_t *len);
39bool mutt_is_message_type (int type, const char *subtype);
40bool mutt_matches_ignore (const char *s);
41void mutt_parse_content_type (const char *s, struct Body *ct);
42bool mutt_parse_mailto (struct Envelope *env, char **body, const char *src);
43struct Body * mutt_parse_multipart (FILE *fp, const char *boundary, LOFF_T end_off, bool digest);
44void mutt_parse_part (FILE *fp, struct Body *b);
45struct Body * mutt_read_mime_header (FILE *fp, bool digest);
46int mutt_rfc822_parse_line (struct Envelope *env, struct Email *e, const char *name, const char *body, bool user_hdrs, bool weed, bool do_2047);
47struct Body * mutt_rfc822_parse_message(FILE *fp, struct Body *parent);
48struct Envelope *mutt_rfc822_read_header (FILE *fp, struct Email *e, bool user_hdrs, bool weed);
49char * mutt_rfc822_read_line (FILE *fp, char *line, size_t *linelen);
50
51#endif /* MUTT_EMAIL_PARSE_H */
Constants and macros for managing MIME encoding.
ContentType
Content-Type.
Definition: mime.h:30
char * mutt_rfc822_read_line(FILE *fp, char *line, size_t *linelen)
Read a header line from a file.
Definition: parse.c:1082
void mutt_parse_part(FILE *fp, struct Body *b)
Parse a MIME part.
Definition: parse.c:1736
void mutt_auto_subscribe(const char *mailto)
Check if user is subscribed to mailing list.
Definition: parse.c:67
struct Body * mutt_read_mime_header(FILE *fp, bool digest)
Parse a MIME header.
Definition: parse.c:1317
void mutt_parse_content_type(const char *s, struct Body *ct)
Parse a content type.
Definition: parse.c:424
bool mutt_matches_ignore(const char *s)
Does the string match the ignore list.
Definition: parse.c:313
int mutt_rfc822_parse_line(struct Envelope *env, struct Email *e, const char *name, const char *body, bool user_hdrs, bool weed, bool do_2047)
Parse an email header.
Definition: parse.c:634
enum ContentType mutt_check_mime_type(const char *s)
Check a MIME type string.
Definition: parse.c:323
struct Envelope * mutt_rfc822_read_header(FILE *fp, struct Email *e, bool user_hdrs, bool weed)
Parses an RFC822 header.
Definition: parse.c:1157
bool mutt_parse_mailto(struct Envelope *env, char **body, const char *src)
Parse a mailto:// url.
Definition: parse.c:1670
int mutt_check_encoding(const char *c)
Check the encoding type.
Definition: parse.c:396
struct Body * mutt_parse_multipart(FILE *fp, const char *boundary, LOFF_T end_off, bool digest)
Parse a multipart structure.
Definition: parse.c:1767
char * mutt_extract_message_id(const char *s, size_t *len)
Find a message-id.
Definition: parse.c:360
struct Body * mutt_rfc822_parse_message(FILE *fp, struct Body *parent)
Parse a Message/RFC822 body.
Definition: parse.c:1751
bool mutt_is_message_type(int type, const char *subtype)
Determine if a mime type matches a message or not.
Definition: parse.c:1441
The body of an email.
Definition: body.h:36
The envelope/body of an email.
Definition: email.h:37
struct Envelope * env
Envelope information.
Definition: email.h:66
struct Body * body
List of MIME parts.
Definition: email.h:67
The header of an Email.
Definition: envelope.h:57