Author: hrs
Date: Sat Oct 27 19:09:09 2012
New Revision: 242184
URL: http://svn.freebsd.org/changeset/base/242184

Log:
  Add setfib(1) support for services as <name>_fib in rc.conf.

Modified:
  head/etc/rc.subr
  head/share/man/man5/rc.conf.5

Modified: head/etc/rc.subr
==============================================================================
--- head/etc/rc.subr    Sat Oct 27 17:43:30 2012        (r242183)
+++ head/etc/rc.subr    Sat Oct 27 19:09:09 2012        (r242184)
@@ -462,6 +462,8 @@ check_startmsgs()
 #                              NOTE:   $flags from the parent environment
 #                                      can be used to override this.
 #
+#      ${name}_fib     n       Routing table number to run ${command} with.
+#
 #      ${name}_nice    n       Nice level to run ${command} at.
 #
 #      ${name}_user    n       User to run ${command} as, using su(1) if not
@@ -640,7 +642,8 @@ run_rc_command()
        fi
        eval _chdir=\$${name}_chdir     _chroot=\$${name}_chroot \
            _nice=\$${name}_nice        _user=\$${name}_user \
-           _group=\$${name}_group      _groups=\$${name}_groups
+           _group=\$${name}_group      _groups=\$${name}_groups \
+           _fib=\$${name}_fib
 
        if [ -n "$_user" ]; then        # unset $_user if running as that user
                if [ "$_user" = "$(eval $IDCMD)" ]; then
@@ -721,11 +724,13 @@ run_rc_command()
                        if [ -n "$_chroot" ]; then
                                _doit="\
 ${_nice:+nice -n $_nice }\
+${_fib:+setfib -F $_fib }\
 chroot ${_user:+-u $_user }${_group:+-g $_group }${_groups:+-G $_groups }\
 $_chroot $command $rc_flags $command_args"
                        else
                                _doit="\
 ${_chdir:+cd $_chdir && }\
+${_fib:+setfib -F $_fib }\
 $command $rc_flags $command_args"
                                if [ -n "$_user" ]; then
                                    _doit="su -m $_user -c 'sh -c \"$_doit\"'"

Modified: head/share/man/man5/rc.conf.5
==============================================================================
--- head/share/man/man5/rc.conf.5       Sat Oct 27 17:43:30 2012        
(r242183)
+++ head/share/man/man5/rc.conf.5       Sat Oct 27 19:09:09 2012        
(r242184)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd July 22, 2012
+.Dd October 27, 2012
 .Dt RC.CONF 5
 .Os
 .Sh NAME
@@ -179,6 +179,11 @@ Run the service under this user account.
 .Pq Vt str
 Run the chrooted service under this system group. Unlike the _user
 setting, this setting has no effect if the service is not chrooted.
+.It Ao Ar name Ac Ns Va _fib
+.Pq Vt int
+The
+.Xr setfib 1
+value to run the service under.
 .It Ao Ar name Ac Ns Va _nice
 .Pq Vt int
 The
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to