From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: "Kernel.org Tools" <tools@kernel.org>
Cc: Konstantin Ryabitsev <konstantin@linuxfoundation.org>
Subject: [PATCH b4 v2 0/5] b4: Implement BCC support for patch submissions and review
Date: Sun, 11 Oct 2026 22:58:25 -0700 [thread overview]
Message-ID: <20261011-send-series-bcc-v2-0-cd17584c40fb@gmail.com> (raw)
This series implements support for sending patch series and review
replies to blind carbon copy (BCC) recipients.
The work is split into four parts:
1. Server-side support in misc/send-receive.py to receive optional BCC
envelope destinations via the JSON submission payload and deliver
them over SMTP while enforcing anti-abuse limits (max-client-bcc)
and public mailing list destination checks (mustdest).
2. Client-side support in b4 to inject series-wide BCC addresses
directly into envelope recipients (destaddrs) in send_mail() without
adding or stripping temporary Bcc: headers. This extends BCC
capability across sending tools (b4 send, b4 review, b4 ty) and
supports web endpoint submission.
3. Per-message Bcc: header handling in send_mail() and the review/bugs
TUIs, extracting Bcc: headers into envelope recipients and stripping
them before signing and sending while rejecting them on the web
endpoint.
4. Safety guardrails in ez.py to reject Bcc: trailers in patches and
cover letters so they are never treated as person trailers and
leaked into public Cc: headers.
---
Changes in v2:
- Added server-side support in misc/send-receive.py for web endpoint
submissions.
- Handled series-wide BCC addresses directly in send_mail() as envelope
recipients instead of adding/deleting temporary Bcc: message headers.
- Extended BCC handling to work across all workflows including b4 review
and b4 bugs, properly extracting and stripping per-message Bcc:
headers set in TUI dialogs.
- Added explicit guardrails in b4 send to reject Bcc: trailers in
patches and cover letters to prevent privacy leaks.
- Added BCC recipient preview and count display in the review and bugs
TUIs.
- Added unit tests in src/tests/test___init__.py and
src/tests/test_ez.py.
- Link to v1: https://patch.msgid.link/20260307012748.1414702-1-dmitry.torokhov@gmail.com
To: "Kernel.org Tools" <tools@kernel.org>
Cc: Konstantin Ryabitsev <konstantin@linuxfoundation.org>
---
Dmitry Torokhov (5):
misc/send-receive: support BCC in web submission endpoint
b4: implement --bcc and send-series-bcc config option
b4: handle per-message Bcc headers in send_mail and TUIs
b4: reject Bcc trailers in patches and cover letter
misc/send-receive: require messages payload to be a list
docs/config.rst | 13 +++-
docs/contributor/send.rst | 11 +++-
misc/default.conf | 2 +
misc/send-receive.py | 34 +++++++++-
src/b4/__init__.py | 55 +++++++++++++---
src/b4/bugs/_tui.py | 8 ++-
src/b4/command.py | 3 +
src/b4/ez.py | 89 ++++++++++++++++++-------
src/b4/review_tui/_common.py | 4 +-
src/b4/review_tui/_modals.py | 25 ++++++-
src/tests/test___init__.py | 154 +++++++++++++++++++++++++++++++++++++++++++
src/tests/test_ez.py | 81 +++++++++++++++++++++++
12 files changed, 437 insertions(+), 42 deletions(-)
---
base-commit: 0dee38458cbaa10a378fda3fcdd15a626fd92f6d
change-id: 20260831-send-series-bcc-9df240d4f397
Thanks.
--
Dmitry
next reply other threads:[~2026-10-12 5:58 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-12 5:58 Dmitry Torokhov [this message]
2026-10-12 5:58 ` [PATCH b4 v2 1/5] misc/send-receive: support BCC in web submission endpoint Dmitry Torokhov
2026-10-12 5:58 ` [PATCH b4 v2 2/5] b4: implement --bcc and send-series-bcc config option Dmitry Torokhov
2026-10-12 5:58 ` [PATCH b4 v2 3/5] b4: handle per-message Bcc headers in send_mail and TUIs Dmitry Torokhov
2026-10-12 5:58 ` [PATCH b4 v2 4/5] b4: reject Bcc trailers in patches and cover letter Dmitry Torokhov
2026-10-12 5:58 ` [PATCH b4 v2 5/5] misc/send-receive: require messages payload to be a list Dmitry Torokhov
2026-11-13 2:00 ` [PATCH b4 v2 0/5] b4: Implement BCC support for patch submissions and review Dmitry Torokhov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20261011-send-series-bcc-v2-0-cd17584c40fb@gmail.com \
--to=dmitry.torokhov@gmail.com \
--cc=konstantin@linuxfoundation.org \
--cc=tools@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox