Postfix3.3.1
データ構造 | マクロ定義 | 型定義 | 関数 | 変数
cleanup.h ファイル
#include <sys/time.h>
#include <vstring.h>
#include <vstream.h>
#include <argv.h>
#include <nvtable.h>
#include <maps.h>
#include <tok822.h>
#include <been_here.h>
#include <mail_stream.h>
#include <mail_conf.h>
#include <mime_state.h>
#include <string_list.h>
#include <cleanup_user.h>
#include <header_body_checks.h>
#include <dsn_mask.h>
#include <milter.h>

[ソースコード]

データ構造

struct  CLEANUP_STATE
 
struct  CLEANUP_REGION
 

マクロ定義

#define CLEANUP_FLAG_INRCPT   (1<<16) /* Processing recipient records */
 
#define CLEANUP_FLAG_WARN_SEEN   (1<<17) /* REC_TYPE_WARN record seen */
 
#define CLEANUP_FLAG_END_SEEN   (1<<18) /* REC_TYPE_END record seen */
 
#define CLEANUP_CANON_FLAG_ENV_FROM   (1<<0) /* envelope sender */
 
#define CLEANUP_CANON_FLAG_ENV_RCPT   (1<<1) /* envelope recipient */
 
#define CLEANUP_CANON_FLAG_HDR_FROM   (1<<2) /* header sender */
 
#define CLEANUP_CANON_FLAG_HDR_RCPT   (1<<3) /* header recipient */
 
#define CLEANUP_MASQ_FLAG_ENV_FROM   (1<<0) /* envelope sender */
 
#define CLEANUP_MASQ_FLAG_ENV_RCPT   (1<<1) /* envelope recipient */
 
#define CLEANUP_MASQ_FLAG_HDR_FROM   (1<<2) /* header sender */
 
#define CLEANUP_MASQ_FLAG_HDR_RCPT   (1<<3) /* header recipient */
 
#define CLEANUP_RECORD(s, t, b, l)   ((s)->action((s), (t), (b), (l)))
 
#define CLEANUP_OUT_BUF(s, t, b)   cleanup_out((s), (t), vstring_str((b)), VSTRING_LEN((b)))
 
#define CLEANUP_OUT_OK(s)   (!((s)->errs & (s)->err_mask) && !((s)->flags & CLEANUP_FLAG_DISCARD))
 
#define NO_DSN_ORCPT   ((char *) 0)
 
#define NO_DSN_NOTIFY   DSN_NOTIFY_NEVER
 
#define DEF_DSN_NOTIFY   (0)
 
#define cleanup_addr_bcc(state, addr)   cleanup_addr_bcc_dsn((state), (addr), NO_DSN_ORCPT, NO_DSN_NOTIFY)
 
#define CLEANUP_MSG_STATS(stats, state)   MSG_STATS_INIT1(stats, incoming_arrival, state->arrival_time)
 
#define CLEANUP_MILTER_OK(s)
 
#define HFROM_FORMAT_CODE_STD   0
 
#define HFROM_FORMAT_CODE_OBS   1
 

型定義

typedef struct CLEANUP_STATE CLEANUP_STATE
 
typedef struct CLEANUP_REGION CLEANUP_REGION
 

関数

CLEANUP_STATE * cleanup_state_alloc (VSTREAM *)
 
void cleanup_state_free (CLEANUP_STATE *)
 
CLEANUP_STATE * cleanup_open (VSTREAM *)
 
void cleanup_control (CLEANUP_STATE *, int)
 
int cleanup_flush (CLEANUP_STATE *)
 
void cleanup_free (CLEANUP_STATE *)
 
void cleanup_all (void)
 
void cleanup_sig (int)
 
void cleanup_pre_jail (char *, char **)
 
void cleanup_post_jail (char *, char **)
 
void cleanup_out (CLEANUP_STATE *, int, const char *, ssize_t)
 
void cleanup_out_string (CLEANUP_STATE *, int, const char *)
 
void PRINTFLIKE (3, 4) cleanup_out_format(CLEANUP_STATE *
 
void const char void cleanup_out_header (CLEANUP_STATE *, VSTRING *)
 
void cleanup_envelope (CLEANUP_STATE *, int, const char *, ssize_t)
 
void cleanup_message (CLEANUP_STATE *, int, const char *, ssize_t)
 
void cleanup_extracted (CLEANUP_STATE *, int, const char *, ssize_t)
 
void cleanup_final (CLEANUP_STATE *)
 
int cleanup_rewrite_external (const char *, VSTRING *, const char *)
 
int cleanup_rewrite_internal (const char *, VSTRING *, const char *)
 
int cleanup_rewrite_tree (const char *, TOK822 *)
 
int cleanup_map11_external (CLEANUP_STATE *, VSTRING *, MAPS *, int)
 
int cleanup_map11_internal (CLEANUP_STATE *, VSTRING *, MAPS *, int)
 
int cleanup_map11_tree (CLEANUP_STATE *, TOK822 *, MAPS *, int)
 
ARGV * cleanup_map1n_internal (CLEANUP_STATE *, const char *, MAPS *, int)
 
int cleanup_masquerade_external (CLEANUP_STATE *, VSTRING *, ARGV *)
 
int cleanup_masquerade_internal (CLEANUP_STATE *, VSTRING *, ARGV *)
 
int cleanup_masquerade_tree (CLEANUP_STATE *, TOK822 *, ARGV *)
 
void cleanup_out_recipient (CLEANUP_STATE *, const char *, int, const char *, const char *)
 
off_t cleanup_addr_sender (CLEANUP_STATE *, const char *)
 
void cleanup_addr_recipient (CLEANUP_STATE *, const char *)
 
void cleanup_addr_bcc_dsn (CLEANUP_STATE *, const char *, const char *, int)
 
int cleanup_bounce (CLEANUP_STATE *)
 
void cleanup_milter_receive (CLEANUP_STATE *, int)
 
void cleanup_milter_inspect (CLEANUP_STATE *, MILTERS *)
 
void cleanup_milter_emul_mail (CLEANUP_STATE *, MILTERS *, const char *)
 
void cleanup_milter_emul_rcpt (CLEANUP_STATE *, MILTERS *, const char *)
 
void cleanup_milter_emul_data (CLEANUP_STATE *, MILTERS *)
 
void cleanup_region_init (CLEANUP_STATE *)
 
CLEANUP_REGION * cleanup_region_open (CLEANUP_STATE *, ssize_t)
 
void cleanup_region_close (CLEANUP_STATE *, CLEANUP_REGION *)
 
CLEANUP_REGION * cleanup_region_return (CLEANUP_STATE *, CLEANUP_REGION *)
 
void cleanup_region_done (CLEANUP_STATE *)
 
int cleanup_body_edit_start (CLEANUP_STATE *)
 
int cleanup_body_edit_write (CLEANUP_STATE *, int, VSTRING *)
 
int cleanup_body_edit_finish (CLEANUP_STATE *)
 
void cleanup_body_edit_free (CLEANUP_STATE *)
 

変数

MAPS * cleanup_comm_canon_maps
 
MAPS * cleanup_send_canon_maps
 
MAPS * cleanup_rcpt_canon_maps
 
int cleanup_comm_canon_flags
 
int cleanup_send_canon_flags
 
int cleanup_rcpt_canon_flags
 
MAPS * cleanup_header_checks
 
MAPS * cleanup_mimehdr_checks
 
MAPS * cleanup_nesthdr_checks
 
MAPS * cleanup_body_checks
 
MAPS * cleanup_virt_alias_maps
 
ARGV * cleanup_masq_domains
 
STRING_LIST * cleanup_masq_exceptions
 
int cleanup_masq_flags
 
MAPS * cleanup_send_bcc_maps
 
MAPS * cleanup_rcpt_bcc_maps
 
VSTRING * cleanup_reject_chars
 
VSTRING * cleanup_strip_chars
 
MILTERS * cleanup_milters
 
int cleanup_ext_prop_mask
 
char * cleanup_path
 
VSTRING * cleanup_trace_path
 
VSTRING * cleanup_bounce_path
 
const CONFIG_INT_TABLE cleanup_int_table []
 
const CONFIG_BOOL_TABLE cleanup_bool_table []
 
const CONFIG_STR_TABLE cleanup_str_table []
 
const CONFIG_TIME_TABLE cleanup_time_table []
 
void int
 
int hfrom_format_code
 

マクロ定義詳解

#define cleanup_addr_bcc (   state,
  addr 
)    cleanup_addr_bcc_dsn((state), (addr), NO_DSN_ORCPT, NO_DSN_NOTIFY)

cleanup.h の 304 行目に定義があります。

#define CLEANUP_CANON_FLAG_ENV_FROM   (1<<0) /* envelope sender */

cleanup.h の 178 行目に定義があります。

#define CLEANUP_CANON_FLAG_ENV_RCPT   (1<<1) /* envelope recipient */

cleanup.h の 179 行目に定義があります。

#define CLEANUP_CANON_FLAG_HDR_FROM   (1<<2) /* header sender */

cleanup.h の 180 行目に定義があります。

#define CLEANUP_CANON_FLAG_HDR_RCPT   (1<<3) /* header recipient */

cleanup.h の 181 行目に定義があります。

#define CLEANUP_FLAG_END_SEEN   (1<<18) /* REC_TYPE_END record seen */

cleanup.h の 142 行目に定義があります。

#define CLEANUP_FLAG_INRCPT   (1<<16) /* Processing recipient records */

cleanup.h の 140 行目に定義があります。

#define CLEANUP_FLAG_WARN_SEEN   (1<<17) /* REC_TYPE_WARN record seen */

cleanup.h の 141 行目に定義があります。

#define CLEANUP_MASQ_FLAG_ENV_FROM   (1<<0) /* envelope sender */

cleanup.h の 186 行目に定義があります。

#define CLEANUP_MASQ_FLAG_ENV_RCPT   (1<<1) /* envelope recipient */

cleanup.h の 187 行目に定義があります。

#define CLEANUP_MASQ_FLAG_HDR_FROM   (1<<2) /* header sender */

cleanup.h の 188 行目に定義があります。

#define CLEANUP_MASQ_FLAG_HDR_RCPT   (1<<3) /* header recipient */

cleanup.h の 189 行目に定義があります。

#define CLEANUP_MILTER_OK (   s)
値:
(((s)->flags & CLEANUP_FLAG_MILTER) != 0 \
&& (s)->errs == 0 && ((s)->flags & CLEANUP_FLAG_DISCARD) == 0)
#define CLEANUP_FLAG_MILTER
Definition: cleanup_user.h:24
#define CLEANUP_FLAG_DISCARD
Definition: cleanup_user.h:21

cleanup.h の 327 行目に定義があります。

#define CLEANUP_MSG_STATS (   stats,
  state 
)    MSG_STATS_INIT1(stats, incoming_arrival, state->arrival_time)

cleanup.h の 315 行目に定義があります。

#define CLEANUP_OUT_BUF (   s,
  t,
  b 
)    cleanup_out((s), (t), vstring_str((b)), VSTRING_LEN((b)))

cleanup.h の 236 行目に定義があります。

#define CLEANUP_OUT_OK (   s)    (!((s)->errs & (s)->err_mask) && !((s)->flags & CLEANUP_FLAG_DISCARD))

cleanup.h の 239 行目に定義があります。

#define CLEANUP_RECORD (   s,
  t,
  b,
  l 
)    ((s)->action((s), (t), (b), (l)))

cleanup.h の 226 行目に定義があります。

#define DEF_DSN_NOTIFY   (0)

cleanup.h の 302 行目に定義があります。

#define HFROM_FORMAT_CODE_OBS   1

cleanup.h の 356 行目に定義があります。

#define HFROM_FORMAT_CODE_STD   0

cleanup.h の 355 行目に定義があります。

#define NO_DSN_NOTIFY   DSN_NOTIFY_NEVER

cleanup.h の 301 行目に定義があります。

#define NO_DSN_ORCPT   ((char *) 0)

cleanup.h の 300 行目に定義があります。

型定義詳解

typedef struct CLEANUP_STATE CLEANUP_STATE

関数詳解

void cleanup_addr_bcc_dsn ( CLEANUP_STATE *  ,
const char *  ,
const char *  ,
int   
)

cleanup_addr.c の 253 行目に定義があります。

void cleanup_addr_recipient ( CLEANUP_STATE *  ,
const char *   
)

cleanup_addr.c の 190 行目に定義があります。

off_t cleanup_addr_sender ( CLEANUP_STATE *  ,
const char *   
)

cleanup_addr.c の 111 行目に定義があります。

void cleanup_all ( void  )

cleanup_init.c の 288 行目に定義があります。

int cleanup_body_edit_finish ( CLEANUP_STATE *  )

cleanup_body_edit.c の 218 行目に定義があります。

void cleanup_body_edit_free ( CLEANUP_STATE *  )
int cleanup_body_edit_start ( CLEANUP_STATE *  )

cleanup_body_edit.c の 94 行目に定義があります。

int cleanup_body_edit_write ( CLEANUP_STATE *  ,
int  ,
VSTRING *   
)

cleanup_body_edit.c の 153 行目に定義があります。

int cleanup_bounce ( CLEANUP_STATE *  )

cleanup_bounce.c の 85 行目に定義があります。

void cleanup_control ( CLEANUP_STATE *  ,
int   
)

cleanup_api.c の 184 行目に定義があります。

void cleanup_envelope ( CLEANUP_STATE *  ,
int  ,
const char *  ,
ssize_t   
)

cleanup_envelope.c の 89 行目に定義があります。

void cleanup_extracted ( CLEANUP_STATE *  ,
int  ,
const char *  ,
ssize_t   
)

cleanup_extracted.c の 83 行目に定義があります。

void cleanup_final ( CLEANUP_STATE *  )

cleanup_final.c の 45 行目に定義があります。

int cleanup_flush ( CLEANUP_STATE *  )

cleanup_api.c の 208 行目に定義があります。

void cleanup_free ( CLEANUP_STATE *  )

cleanup_api.c の 379 行目に定義があります。

int cleanup_map11_external ( CLEANUP_STATE *  ,
VSTRING *  ,
MAPS *  ,
int   
)

cleanup_map11.c の 96 行目に定義があります。

int cleanup_map11_internal ( CLEANUP_STATE *  ,
VSTRING *  ,
MAPS *  ,
int   
)

cleanup_map11.c の 166 行目に定義があります。

int cleanup_map11_tree ( CLEANUP_STATE *  ,
TOK822 *  ,
MAPS *  ,
int   
)

cleanup_map11.c の 144 行目に定義があります。

ARGV* cleanup_map1n_internal ( CLEANUP_STATE *  ,
const char *  ,
MAPS *  ,
int   
)

cleanup_map1n.c の 77 行目に定義があります。

int cleanup_masquerade_external ( CLEANUP_STATE *  ,
VSTRING *  ,
ARGV *   
)

cleanup_masquerade.c の 77 行目に定義があります。

int cleanup_masquerade_internal ( CLEANUP_STATE *  ,
VSTRING *  ,
ARGV *   
)

cleanup_masquerade.c の 171 行目に定義があります。

int cleanup_masquerade_tree ( CLEANUP_STATE *  ,
TOK822 *  ,
ARGV *   
)

cleanup_masquerade.c の 154 行目に定義があります。

void cleanup_message ( CLEANUP_STATE *  ,
int  ,
const char *  ,
ssize_t   
)

cleanup_message.c の 1033 行目に定義があります。

void cleanup_milter_emul_data ( CLEANUP_STATE *  ,
MILTERS *   
)

cleanup_milter.c の 2260 行目に定義があります。

void cleanup_milter_emul_mail ( CLEANUP_STATE *  ,
MILTERS *  ,
const char *   
)

cleanup_milter.c の 2162 行目に定義があります。

void cleanup_milter_emul_rcpt ( CLEANUP_STATE *  ,
MILTERS *  ,
const char *   
)

cleanup_milter.c の 2220 行目に定義があります。

void cleanup_milter_inspect ( CLEANUP_STATE *  ,
MILTERS *   
)

cleanup_milter.c の 2122 行目に定義があります。

void cleanup_milter_receive ( CLEANUP_STATE *  ,
int   
)

cleanup_milter.c の 1939 行目に定義があります。

CLEANUP_STATE* cleanup_open ( VSTREAM *  )

cleanup_api.c の 132 行目に定義があります。

void cleanup_out ( CLEANUP_STATE *  ,
int  ,
const char *  ,
ssize_t   
)

cleanup_out.c の 102 行目に定義があります。

void const char void cleanup_out_header ( CLEANUP_STATE *  ,
VSTRING *   
)

cleanup_out.c の 170 行目に定義があります。

void cleanup_out_recipient ( CLEANUP_STATE *  ,
const char *  ,
int  ,
const char *  ,
const char *   
)

cleanup_out_recipient.c の 129 行目に定義があります。

void cleanup_out_string ( CLEANUP_STATE *  ,
int  ,
const char *   
)

cleanup_out.c の 148 行目に定義があります。

void cleanup_post_jail ( char *  ,
char **   
)

cleanup_init.c の 434 行目に定義があります。

void cleanup_pre_jail ( char *  ,
char **   
)

cleanup_init.c の 321 行目に定義があります。

void cleanup_region_close ( CLEANUP_STATE *  ,
CLEANUP_REGION *   
)

cleanup_region.c の 196 行目に定義があります。

void cleanup_region_done ( CLEANUP_STATE *  )

cleanup_region.c の 226 行目に定義があります。

void cleanup_region_init ( CLEANUP_STATE *  )

cleanup_region.c の 122 行目に定義があります。

CLEANUP_REGION* cleanup_region_open ( CLEANUP_STATE *  ,
ssize_t   
)

cleanup_region.c の 145 行目に定義があります。

CLEANUP_REGION* cleanup_region_return ( CLEANUP_STATE *  ,
CLEANUP_REGION *   
)

cleanup_region.c の 214 行目に定義があります。

int cleanup_rewrite_external ( const char *  ,
VSTRING *  ,
const char *   
)

cleanup_rewrite.c の 84 行目に定義があります。

int cleanup_rewrite_internal ( const char *  ,
VSTRING *  ,
const char *   
)

cleanup_rewrite.c の 110 行目に定義があります。

int cleanup_rewrite_tree ( const char *  ,
TOK822 *   
)

cleanup_rewrite.c の 93 行目に定義があります。

void cleanup_sig ( int  )

cleanup_init.c の 295 行目に定義があります。

CLEANUP_STATE* cleanup_state_alloc ( VSTREAM *  )

cleanup_state.c の 65 行目に定義があります。

void cleanup_state_free ( CLEANUP_STATE *  )

cleanup_state.c の 146 行目に定義があります。

static int PRINTFLIKE ( 3  ,
4   
)

smtpd_proxy.c の 653 行目に定義があります。

変数詳解

MAPS* cleanup_body_checks

cleanup_init.c の 257 行目に定義があります。

const CONFIG_BOOL_TABLE cleanup_bool_table[]

cleanup_init.c の 187 行目に定義があります。

VSTRING* cleanup_bounce_path
int cleanup_comm_canon_flags

cleanup_init.c の 251 行目に定義があります。

MAPS* cleanup_comm_canon_maps

cleanup_init.c の 248 行目に定義があります。

int cleanup_ext_prop_mask

cleanup_init.c の 274 行目に定義があります。

MAPS* cleanup_header_checks

cleanup_init.c の 254 行目に定義があります。

const CONFIG_INT_TABLE cleanup_int_table[]

cleanup_init.c の 176 行目に定義があります。

ARGV* cleanup_masq_domains

cleanup_init.c の 259 行目に定義があります。

STRING_LIST* cleanup_masq_exceptions

cleanup_init.c の 260 行目に定義があります。

int cleanup_masq_flags

cleanup_init.c の 261 行目に定義があります。

MILTERS* cleanup_milters

cleanup_init.c の 279 行目に定義があります。

MAPS* cleanup_mimehdr_checks

cleanup_init.c の 255 行目に定義があります。

MAPS* cleanup_nesthdr_checks

cleanup_init.c の 256 行目に定義があります。

char* cleanup_path

cleanup_init.c の 111 行目に定義があります。

MAPS* cleanup_rcpt_bcc_maps

cleanup_init.c の 263 行目に定義があります。

int cleanup_rcpt_canon_flags

cleanup_init.c の 253 行目に定義があります。

MAPS* cleanup_rcpt_canon_maps

cleanup_init.c の 250 行目に定義があります。

VSTRING* cleanup_reject_chars

cleanup_init.c の 268 行目に定義があります。

MAPS* cleanup_send_bcc_maps

cleanup_init.c の 262 行目に定義があります。

int cleanup_send_canon_flags

cleanup_init.c の 252 行目に定義があります。

MAPS* cleanup_send_canon_maps

cleanup_init.c の 249 行目に定義があります。

const CONFIG_STR_TABLE cleanup_str_table[]

cleanup_init.c の 202 行目に定義があります。

VSTRING* cleanup_strip_chars

cleanup_init.c の 269 行目に定義があります。

const CONFIG_TIME_TABLE cleanup_time_table[]

cleanup_init.c の 194 行目に定義があります。

VSTRING* cleanup_trace_path

cleanup_init.c の 117 行目に定義があります。

MAPS* cleanup_virt_alias_maps

cleanup_init.c の 258 行目に定義があります。

int hfrom_format_code

cleanup_init.c の 284 行目に定義があります。

void int

cleanup.h の 233 行目に定義があります。