Hi tech@,

Setting, for example

# rcctl enable nfsd 
# rcctl set nfsd flags -tun 4

has no effect on /etc/rc.conf.local. This is also true for other cases
where the default flags for the daemon are equal to the flags you're
trying to set.

It seemed a problem at first, since there is no reference to this
behaviour on the man page. But looking at the source code
(usr.sbin/rcctl/rcctl.sh, r1.105, line 452), this is actually expected.  

                # unset flags if they match the default enabled ones
                [ "${_args}" = "$(svc_getdef ${_svc} ${_var})" ] && \
                        unset _args

Should this behaviour be on the man page? I don't think it's too obvious
to assume the flags wasn't set on /etc/rc.conf.local because it is
already the default for the daemon.

Having it documented or not, the diff below removes an unneeded step,
since "-tun 4" is already the default for nfsd.

Index: faq6.html
===================================================================
RCS file: /cvs/www/faq/faq6.html,v
retrieving revision 1.427
diff -u -p -r1.427 faq6.html
--- faq6.html   9 Feb 2017 17:22:19 -0000       1.427
+++ faq6.html   15 Feb 2017 16:05:30 -0000
@@ -607,7 +607,6 @@ services must be enabled on the server:

 <blockquote><pre>
 # <b>rcctl enable portmap mountd nfsd</b>
-# <b>rcctl set nfsd flags -tun 4</b>
 </pre></blockquote>

 The <tt>-t</tt> and <tt>-u</tt> flags for nfsd(8) enable TCP and UDP,

-- 
db

Reply via email to