## 2.8 The Bounce Processing Category

These policies control the automatic bounce processing system in Mailman. Here's an overview of how it works:

When a bounce is received, Mailman tries to extract two pieces of information from the message: the address of the member the message was intended for, and the severity of the problem causing the bounce. The severity can be either hard for fatal errors, or soft for transient errors. When in doubt, a hard severity is used.

If no member address can be extracted from the bounce, then the bounce message is usually discarded. Every member has a bounce score, initialized at zero, and every time we encounter a bounce from a member we increment that member's score. Hard bounces increment by 1 while soft bounces increment by 0.5. We only increment the bounce score once per day, so even if we receive ten hard bounces from a member per day, their score will increase by only 1 for that day.

When a member's bounce score is greater than the bounce score threshold (see below), the member's subscription is disabled. Once disabled, the member will not receive any postings from the list until their membership is explicitly re-enabled, either by the list administrator or the user. However, they will receive occasional reminders that their membership has been disabled, and these reminders will include information about how to re-enable their membership. You can control both the number of reminders the member will receive and the frequency with which these reminders are sent.

There is one other important configuration variable; after a certain period of time - during which no bounces from the member are received - the bounce information is considered stale and discarded. Thus by adjusting this value, and the score threshold, you can control how quickly bouncing members are disabled. You should tune both of these to the frequency and traffic volume of your list.

bounce_processing
  Specifies whether or not this list should do automatic bounce processing.

bounce_score_threshold
  This is the bounce score above which a member's subscription will be automatically disabled. When the subscription is re-enabled, their bounce score will be reset to zero. This value can be a floating point number.

bounce_info_stale_after
  The number of days after which a member's bounce information is considered stale. If no new bounces have been received in the interim, the bounce score is reset to zero. This value must be an integer.

bounce_you_are_disabled_warnings
  The number of notices a disabled member will receive before their address is removed from the mailing list's roster. Set this to 0 to immediately remove an address from the list once their bounce score exceeds the threshold. This value must be an integer.

bounce_you_are_disabled_warnings_interval
  The number of days between each disabled notification.

bounce_unrecognized_goes_to_list_owner
  This variable controls whether unrecognized bounces are discarded, or forwarded on the list administrator. The bounce detector isn't perfect, although personalization can make it much more accurate. The list owner may want to receive unrecognized bounces so that they can manually disable or remove such members.

bounce_notify_owner_on_disable
  This option controls whether or not the list owner is notified when a member's subscription is automatically disabled due to their bounce threshold being reached.

bounce_notify_owner_on_removal
  This option controls whether or not the list owner is notified when a member is removed from the list after their disabled notifications have been exhausted.