svn commit: r447784 - in head/security/sudo: . files

Bryan Drewery bdrewery at FreeBSD.org
Fri Aug 11 18:32:59 UTC 2017


Author: bdrewery
Date: Fri Aug 11 18:32:57 2017
New Revision: 447784
URL: https://svnweb.freebsd.org/changeset/ports/447784

Log:
  - 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

Added:
  head/security/sudo/files/patch-src_exec__nopty.c   (contents, props changed)
Modified:
  head/security/sudo/Makefile

Modified: head/security/sudo/Makefile
==============================================================================
--- head/security/sudo/Makefile	Fri Aug 11 18:17:53 2017	(r447783)
+++ head/security/sudo/Makefile	Fri Aug 11 18:32:57 2017	(r447784)
@@ -3,7 +3,7 @@
 
 PORTNAME=	sudo
 PORTVERSION=	1.8.20p2
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	security
 MASTER_SITES=	SUDO
 

Added: head/security/sudo/files/patch-src_exec__nopty.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/security/sudo/files/patch-src_exec__nopty.c	Fri Aug 11 18:32:57 2017	(r447784)
@@ -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


More information about the svn-ports-head mailing list