X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/f6f4a58dcac2a21f4104bb8d7e580e90ba6bf3f4..4e910c01eea401e36044816744691789ef4656fa:/src/src/functions.h diff --git a/src/src/functions.h b/src/src/functions.h index 722fbf9d5..c3c96b69c 100644 --- a/src/src/functions.h +++ b/src/src/functions.h @@ -110,18 +110,19 @@ extern void bdat_flush_data(void); extern void bits_clear(unsigned int *, size_t, int *); extern void bits_set(unsigned int *, size_t, int *); -extern void cancel_cutthrough_connection(const char *); +extern void cancel_cutthrough_connection(BOOL, const uschar *); extern int check_host(void *, const uschar *, const uschar **, uschar **); extern uschar **child_exec_exim(int, BOOL, int *, BOOL, int, ...); extern pid_t child_open_uid(const uschar **, const uschar **, int, uid_t *, gid_t *, int *, int *, uschar *, BOOL); extern BOOL cleanup_environment(void); +extern void cutthrough_data_puts(uschar *, int); +extern void cutthrough_data_put_nl(void); extern uschar *cutthrough_finaldot(void); extern BOOL cutthrough_flush_send(void); extern BOOL cutthrough_headers_send(void); extern BOOL cutthrough_predata(void); -extern BOOL cutthrough_puts(uschar *, int); -extern BOOL cutthrough_put_nl(void); +extern void release_cutthrough_connection(const uschar *); extern void daemon_go(void); @@ -149,11 +150,12 @@ extern int deliver_split_address(address_item *); extern void deliver_succeeded(address_item *); extern uschar *deliver_get_sender_address (uschar *id); +extern void delivery_re_exec(int); extern BOOL directory_make(const uschar *, const uschar *, int, BOOL); #ifndef DISABLE_DKIM extern BOOL dkim_transport_write_message(int, transport_ctx *, - struct ob_dkim *); + struct ob_dkim *, const uschar ** errstr); #endif extern dns_address *dns_address_from_rr(dns_answer *, dns_record *); extern int dns_basic_lookup(dns_answer *, const uschar *, int); @@ -259,6 +261,7 @@ extern void malware_init(void); #endif extern int match_address_list(const uschar *, BOOL, BOOL, const uschar **, unsigned int *, int, int, const uschar **); +extern int match_address_list_basic(const uschar *, const uschar **, int); extern int match_check_list(const uschar **, int, tree_node **, unsigned int **, int(*)(void *, const uschar *, const uschar **, uschar **), void *, int, const uschar *, const uschar **); @@ -405,6 +408,7 @@ extern void smtp_get_cache(void); extern int smtp_handle_acl_fail(int, int, uschar *, uschar *); extern void smtp_log_no_mail(void); extern void smtp_message_code(uschar **, int *, uschar **, uschar **, BOOL); +extern void smtp_proxy_tls(uschar *, size_t, int, int); extern BOOL smtp_read_response(smtp_inblock *, uschar *, int, int, int); extern void smtp_respond(uschar *, int, BOOL, uschar *); extern void smtp_notquit_exit(uschar *, uschar *, uschar *, ...); @@ -413,10 +417,10 @@ extern int smtp_setup_msg(void); extern BOOL smtp_start_session(void); extern int smtp_ungetc(int); extern BOOL smtp_verify_helo(void); -extern int smtp_write_command(smtp_outblock *, BOOL, const char *, ...) PRINTF_FUNCTION(3,4); +extern int smtp_write_command(smtp_outblock *, int, const char *, ...) PRINTF_FUNCTION(3,4); #ifdef WITH_CONTENT_SCAN extern int spam(const uschar **); -extern FILE *spool_mbox(unsigned long *, const uschar *); +extern FILE *spool_mbox(unsigned long *, const uschar *, uschar **); #endif extern BOOL spool_move_message(uschar *, uschar *, uschar *, uschar *); extern uschar *spool_dname(const uschar *, uschar *); @@ -472,6 +476,8 @@ extern void tls_modify_variables(tls_support *); extern BOOL transport_check_waiting(const uschar *, const uschar *, int, uschar *, BOOL *, oicf, void*); extern void transport_init(void); +extern void transport_do_pass_socket(const uschar *, const uschar *, + const uschar *, uschar *, int); extern BOOL transport_pass_socket(const uschar *, const uschar *, const uschar *, uschar *, int); extern uschar *transport_rcpt_address(address_item *, BOOL);