/* * $Id: reply.h 1074 2008-06-04 00:08:43Z hubert@u.washington.edu $ * * ======================================================================== * Copyright 2013-2021 Eduardo Chappa * Copyright 2006-2008 University of Washington * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * ======================================================================== */ #ifndef PITH_REPLY_INCLUDED #define PITH_REPLY_INCLUDED #define ALLOWED_SUBTYPE(st) (!strucmp((st), "plain") \ || !strucmp((st), "html") \ || !strucmp((st), "enriched") \ || !strucmp((st), "richtext")) /* flags for get_body_part_text */ #define GBPT_NONE 0x00 #define GBPT_PEEK 0x01 #define GBPT_NOINTR 0x02 #define GBPT_DELQUOTES 0x04 #define GBPT_HTML_OK 0x08 /* flags for reply_cp_addr */ #define RCA_NONE 0x00 #define RCA_NOT_US 0x01 /* copy addrs that aren't us */ #define RCA_ONLY_US 0x02 /* copy only addrs that are us */ #define RCA_ALL 0x04 /* copy all addrs, including us */ #include "../pith/repltype.h" #include "../pith/filttype.h" #include "../pith/indxtype.h" #include "../pith/pattern.h" #include "../pith/state.h" #include "../pith/addrstring.h" /* exported prototypes */ int reply_harvest(struct pine *, long, char *, ENVELOPE *, ADDRESS **, ADDRESS **, ADDRESS **, ADDRESS **,int *); ADDRESS *reply_cp_addr(struct pine *, long, char *, char *, ADDRESS *, ADDRESS *, ADDRESS *, int); void reply_append_addr(ADDRESS **, ADDRESS *); ACTION_S *set_role_from_msg(struct pine *, long, long, char *); void reply_seed(struct pine *, ENVELOPE *, ENVELOPE *, ADDRESS *, ADDRESS *, ADDRESS *, ADDRESS *, char **, int, char **); int addr_lists_same(ADDRESS *, ADDRESS *); int addr_in_env(ADDRESS *, ENVELOPE *); void reply_fish_personal(ENVELOPE *, ENVELOPE *); char *reply_build_refs(ENVELOPE *); ADDRESS *reply_resent(struct pine *, long, char *); char *reply_subject(char *, char *, size_t); char *reply_quote_initials(char *); char *reply_quote_str(ENVELOPE *); int reply_quote_str_contains_tokens(void); BODY *reply_body(MAILSTREAM *, ENVELOPE *, BODY *, long, char *, void *, char *, int, ACTION_S *, int, REDRAFT_POS_S **); int reply_body_text(BODY *, BODY **); char *reply_signature(ACTION_S *, ENVELOPE *, REDRAFT_POS_S **, int *); void get_addr_data(ENVELOPE *, IndexColType, char *, size_t); void get_news_data(ENVELOPE *, IndexColType, char *, size_t); char *get_reply_data(ENVELOPE *, ACTION_S *, IndexColType, char *, size_t); void reply_delimiter(ENVELOPE *, ACTION_S *, gf_io_t); void free_redraft_pos(REDRAFT_POS_S **); int forward_mime_msg(MAILSTREAM *, long, char *, ENVELOPE *, PART **, void *); void forward_delimiter(gf_io_t); void reply_forward_header(MAILSTREAM *, long, char *, ENVELOPE *, gf_io_t, char *); char *forward_subject(ENVELOPE *, int); BODY *forward_body(MAILSTREAM *, ENVELOPE *, BODY *, long, char *, void *, int); char *bounce_msg_body(MAILSTREAM *, long int, char *, char **, char *, ENVELOPE **, BODY **, int *); int get_body_part_text(MAILSTREAM *, BODY *, long, char *, long, gf_io_t, char *, char **, unsigned); int quote_fold(long, char *, LT_INS_S **, void *); int twsp_strip(long, char *, LT_INS_S **, void *); int post_quote_space(long, char *, LT_INS_S **, void *); int sigdash_strip(long, char *, LT_INS_S **, void *); char *body_partno(MAILSTREAM *, long, BODY *); char *partno(BODY *, BODY *); int fetch_contents(MAILSTREAM *, long, char *, BODY *); BODY *copy_body(BODY *, BODY *); PARAMETER *copy_parameters(PARAMETER *); ENVELOPE *copy_envelope(ENVELOPE *); char *reply_in_reply_to(ENVELOPE *); char *generate_message_id(ACTION_S *); char *generate_user_agent(void); char *rot13(char *); char *rot5n(char *); ADDRESS *first_addr(ADDRESS *); char *get_signature_lit(char *, int, int, int, int); int sigdashes_are_present(char *); char *signature_path(char *, char *, size_t); char *simple_read_remote_file(char *, char *); BODY *forward_multi_alt(MAILSTREAM *, ENVELOPE *, BODY *, long, char *, void *, gf_io_t, int); BODY *forward_multi_alt_mixed(MAILSTREAM *, ENVELOPE *, BODY *, long, char *, void *, gf_io_t, int); int same_subject(char *, char *s); void shorten_subject(char *); #endif /* PITH_REPLY_INCLUDED */