smtp_should_reject 및 discourse-smtp-fast-rejection 제거

Seeing smtp_should_reject "400 bad request" failures on bounce processing에서 이어지는 토론입니다:

내부에서 나눈 논의를 요약하기 위해 이 주제를 생성합니다.

smtp_should_reject의 코드 경로가 올바르게 작동하지 않아서, 거부되지 말아야 할 상황에서 메일이 거부되고 있음을 확인했습니다.

구체적으로:

  • 바운스 메시지 (null envelope-from을 가진)
  • 불일치로 인한 전달된 메일 (빠른 거부 체크는 envelope-to를 사용했지만, Discourse는 To/CC 헤더를 사용함)

이것은 이 기능을 사용하는 셀프호스터들에게 문제를 일으켰습니다:

이 코드를 유지보수할 의사가 없으므로, 이를 완전히 제거하는 것을 검토하고 있습니다.

Discourse PR:

(이것은 엔드포인트를 제거하지 않습니다. 사람들의 설치 환경에서 여전히 해당 엔드포인트를 호출하려고 할 것이기 때문입니다. 대신 "거부하지 않음"으로 항상 반환하도록 변경합니다.)

mail-receiver PR:

이 두 수정 사항은 서로 독립적으로 작동하는 것 같습니다(즉, 하나만 적용해도 문제가 해결됩니다). 또한, 자체 호스팅을 하는 사용자의 경우 정상적인 업데이트 외에는 특별한 노력이 필요하지 않은 것 같은데, 맞나요?

맞습니다. 제 동기는 사람들이 Discourse만큼 mail-receiver를 자주 업데이트하지 않을 수 있다고 생각해서, 그분들도 여전히 수정 사항을 받을 수 있도록 보장하고 싶기 때문입니다.