-/* $Cambridge: exim/src/src/local_scan.h,v 1.8 2006/12/06 09:46:03 magnus Exp $ */
+/* $Cambridge: exim/src/src/local_scan.h,v 1.12 2008/09/29 11:41:07 nm4 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
*************************************************/
-/* Copyright (c) University of Cambridge 1995 - 2006 */
+/* Copyright (c) University of Cambridge 1995 - 2007 */
/* See the file NOTICE for conditions of use and distribution. */
/* This file is the header that is the only Exim header to be included in the
/* Some basic types that make some things easier, the Exim configuration
settings, and the store functions. */
+#include <stdarg.h>
#include <sys/types.h>
#include "config.h"
#include "mytypes.h"
#define LOCAL_SCAN_ABI_VERSION_MAJOR 1
#define LOCAL_SCAN_ABI_VERSION_MINOR 1
+#define LOCAL_SCAN_ABI_VERSION \
+ LOCAL_SCAN_ABI_VERSION_MAJOR.LOCAL_SCAN_ABI_VERSION_MINOR
/* Structure definitions that are documented as visible in the function. */
extern unsigned int debug_selector; /* Debugging bits */
+extern int body_linecount; /* Line count in body */
+extern int body_zerocount; /* Binary zero count in body */
extern uschar *expand_string_message; /* Error info for failing expansion */
extern uschar *headers_charset; /* Charset for RFC 2047 decoding */
extern header_line *header_last; /* Final header */
extern pid_t child_open(uschar **, uschar **, int, int *, int *, BOOL);
extern pid_t child_open_exim(int *);
extern pid_t child_open_exim2(int *, uschar *, uschar *);
-extern void debug_printf(char *, ...) PRINTF_FUNCTION;
+extern void debug_printf(char *, ...) PRINTF_FUNCTION(1,2);
extern uschar *expand_string(uschar *);
extern void header_add(int, char *, ...);
extern void header_add_at_position(BOOL, uschar *, BOOL, int, char *, ...);
extern BOOL receive_remove_recipient(uschar *);
extern uschar *rfc2047_decode(uschar *, BOOL, uschar *, int, int *, uschar **);
extern int smtp_fflush(void);
-extern void smtp_printf(char *, ...) PRINTF_FUNCTION;
+extern void smtp_printf(char *, ...) PRINTF_FUNCTION(1,2);
+extern void smtp_vprintf(char *, va_list);
extern uschar *string_copy(uschar *);
extern uschar *string_copyn(uschar *, int);
extern uschar *string_sprintf(char *, ...);