Page MenuHomeFreeBSD

mail: Don't trap signals we shouldn't.
ClosedPublic

Authored by des on Apr 24 2025, 10:03 PM.
Tags
None
Referenced Files
F126936250: D50011.id154342.diff
Mon, Aug 25, 7:52 PM
F126895415: D50011.id154342.diff
Mon, Aug 25, 9:04 AM
Unknown Object (File)
Sat, Aug 23, 9:16 PM
Unknown Object (File)
Fri, Aug 22, 1:35 PM
Unknown Object (File)
Sat, Aug 16, 10:35 PM
Unknown Object (File)
Thu, Aug 14, 4:23 AM
Unknown Object (File)
Tue, Aug 12, 6:55 AM
Unknown Object (File)
Wed, Aug 6, 5:36 AM
Subscribers

Details

Summary

When in interactive mode, trap SIGINT, SIGHUP, and tty-related signals.
Otherwise, leave signals untouched as required by POSIX.

MFC after: 1 week
Sponsored by: Klara, Inc.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 63712
Build 60596: arc lint + arc unit

Event Timeline

des requested review of this revision.Apr 24 2025, 10:03 PM
kevans added inline comments.
usr.bin/mail/collect.c
82

Looking at the standard, it's not clear to me that this is actually correct. ASYNCHRONOUS EVENTS explciitly spells out ignore handling only in the interactive case as something evaluated when a SIGINT rolls in, and otherwise has:

When mailx is in Send Mode and standard input is not a terminal, it shall take the standard action for all signals.

I think we should continue to leave SIGINT alone in the non-interactive case.

This revision is now accepted and ready to land.Apr 25 2025, 1:56 PM
This revision was automatically updated to reflect the committed changes.