/*++ /* NAME /* bounce_notify_verp 3 /* SUMMARY /* send non-delivery report to sender, server side /* SYNOPSIS /* #include "bounce_service.h" /* /* int bounce_notify_verp(flags, service, queue_name, queue_id, /* encoding, sendopts, sender, /* dsn_envid, dsn_ret, verp_delims, /* templates) /* int flags; /* char *service; /* char *queue_name; /* char *queue_id; /* char *encoding; /* int sendopts; /* char *sender; /* char *dsn_envid; /* int dsn_ret; /* char *verp_delims; /* BOUNCE_TEMPLATES *templates; /* DESCRIPTION /* This module implements the server side of the bounce_notify() /* (send bounce message) request. The logfile /* is removed after and a warning is posted. /* The bounce recipient address is encoded in VERP format. /* This routine must be used for single bounces only. /* /* When a message bounces, a full copy is sent to the originator, /* and an optional copy of the diagnostics with message headers is /* sent to the postmaster. The result is non-zero when the operation /* should be tried again. /* /* When a bounce is sent, the sender address is the empty /* address. /* DIAGNOSTICS /* Fatal error: error opening existing file. /* SEE ALSO /* bounce(3) basic bounce service client interface /* LICENSE /* .ad /* .fi /* The Secure Mailer license must be distributed with this software. /* AUTHOR(S) /* Wietse Venema /* IBM T.J. Watson Research /* P.O. Box 704 /* Yorktown Heights, NY 10598, USA
/*--*/
/* bounce_notify_verp - send a bounce, VERP style */
int bounce_notify_verp(int flags, char *service, char *queue_name, char *queue_id, char *encoding, int sendopts, char *recipient, char *dsn_envid, int dsn_ret, char *verp_delims, BOUNCE_TEMPLATES *ts)
{ constchar *myname = "bounce_notify_verp";
BOUNCE_INFO *bounce_info; int bounce_status = 0; int postmaster_status;
VSTREAM *bounce; int notify_mask = name_mask(VAR_NOTIFY_CLASSES, mail_error_masks,
var_notify_classes); char *postmaster;
VSTRING *verp_buf;
VSTRING *new_id;
/* *Sanitychecks.Wemustbecalledonlyforundeliverablenon-bounce *messages.
*/ if (*recipient == 0)
msg_panic("%s: attempt to bounce a single bounce", myname); if (strcasecmp_utf8(recipient, mail_addr_double_bounce()) == 0)
msg_panic("%s: attempt to bounce a double bounce", myname);
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.13Bemerkung:
(vorverarbeitet am 2026-08-08)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.