svn commit: r328331 - head/etc

Dmitry Marakasov amdmi3 at FreeBSD.org
Wed Jan 24 14:15:07 UTC 2018


Author: amdmi3 (ports committer)
Date: Wed Jan 24 14:15:06 2018
New Revision: 328331
URL: https://svnweb.freebsd.org/changeset/base/328331

Log:
  Support configuring arbitrary limits(1) for any daemon in rc.conf
  
  Usage is ${name}_limits, and the argument is any flags accepted by
  limits(1), such as `-n 100' (e.g. only allow 100 open files).
  
  Approved by:	cy
  Differential Revision:	https://reviews.freebsd.org/D14015

Modified:
  head/etc/rc.subr

Modified: head/etc/rc.subr
==============================================================================
--- head/etc/rc.subr	Wed Jan 24 13:57:01 2018	(r328330)
+++ head/etc/rc.subr	Wed Jan 24 14:15:06 2018	(r328331)
@@ -775,6 +775,8 @@ check_startmsgs()
 #
 #	${name}_login_class n	Login class to use, else "daemon".
 #
+#	${name}_limits	n	limits(1) to apply to ${command}.
+#
 #	${rc_arg}_cmd	n	If set, use this as the method when invoked;
 #				Otherwise, use default command (see below)
 #
@@ -952,7 +954,7 @@ run_rc_command()
 	    _group=\$${name}_group	_groups=\$${name}_groups \
 	    _fib=\$${name}_fib		_env=\$${name}_env \
 	    _prepend=\$${name}_prepend	_login_class=\${${name}_login_class:-daemon} \
-	    _oomprotect=\$${name}_oomprotect
+	    _limits=\$${name}_limits    _oomprotect=\$${name}_oomprotect
 
 	if [ -n "$_user" ]; then	# unset $_user if running as that user
 		if [ "$_user" = "$(eval $IDCMD)" ]; then
@@ -1073,7 +1075,7 @@ $command $rc_flags $command_args"
 			fi
 
 					# Prepend default limits
-			_doit="$_cd limits -C $_login_class $_doit"
+			_doit="$_cd limits -C $_login_class $_limits $_doit"
 
 					# run the full command
 					#


More information about the svn-src-all mailing list