- Fix sudo sending a 2nd SIGINFO on ^T to processes, which is already
handled by the kernel sending it to the entire controlling terminal's process group. - This fixes ^T with 'sudo poudriere ...' showing a status log twice. - This is intended to be upstreamed. Approved by: garga (maintainer) Tested by: swills, bdrewery Reviewed/Discussed with: kib Reported by: kwm, swills, bapt, dim, kib, many others MFH: 2017Q3
This commit is contained in:
parent
b2f4914a22
commit
3adb452fd9
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=447784
@ -3,7 +3,7 @@
|
||||
|
||||
PORTNAME= sudo
|
||||
PORTVERSION= 1.8.20p2
|
||||
PORTREVISION= 2
|
||||
PORTREVISION= 3
|
||||
CATEGORIES= security
|
||||
MASTER_SITES= SUDO
|
||||
|
||||
|
26
security/sudo/files/patch-src_exec__nopty.c
Normal file
26
security/sudo/files/patch-src_exec__nopty.c
Normal file
@ -0,0 +1,26 @@
|
||||
--- src/exec_nopty.c.orig 2017-08-09 17:20:41 UTC
|
||||
+++ src/exec_nopty.c
|
||||
@@ -201,7 +201,7 @@ exec_nopty(struct command_details *details, struct com
|
||||
sudo_warn(U_("unable to set handler for signal %d"), SIGCHLD);
|
||||
if (sudo_sigaction(SIGCONT, &sa, NULL) != 0)
|
||||
sudo_warn(U_("unable to set handler for signal %d"), SIGCONT);
|
||||
-#ifdef SIGINFO
|
||||
+#if defined(SIGINFO) && !defined(__FreeBSD__)
|
||||
if (sudo_sigaction(SIGINFO, &sa, NULL) != 0)
|
||||
sudo_warn(U_("unable to set handler for signal %d"), SIGINFO);
|
||||
#endif
|
||||
@@ -222,6 +222,14 @@ exec_nopty(struct command_details *details, struct com
|
||||
sudo_warn(U_("unable to set handler for signal %d"), SIGQUIT);
|
||||
if (sudo_sigaction(SIGTSTP, &sa, NULL) != 0)
|
||||
sudo_warn(U_("unable to set handler for signal %d"), SIGTSTP);
|
||||
+#if defined(SIGINFO) && defined(__FreeBSD__)
|
||||
+ /*
|
||||
+ * FreeBSD's ^T will generate a SIGINFO to the controlling terminal's
|
||||
+ * process group.
|
||||
+ */
|
||||
+ if (sudo_sigaction(SIGINFO, &sa, NULL) != 0)
|
||||
+ sudo_warn(U_("unable to set handler for signal %d"), SIGINFO);
|
||||
+#endif
|
||||
|
||||
/*
|
||||
* The policy plugin's session init must be run before we fork
|
Loading…
Reference in New Issue
Block a user