On Wed, Nov 14, 2007 at 07:29:40AM -0800, Liane Praza wrote: > The only concrete complaint I've seen about Mark's updated proposal in > the "doesn't match expectations" vein is from Peter about including > current -s behaviour. Current enable -s behaviour is in line with how > init scripts used to behave -- it makes the action synchronous with > respect to the caller. running "init.d/foo start" was also synchronous > with respect to the caller. It seems to meet traditional expectations > closely enough to be useful.
The pre-SMF /etc/init.d/sshd script starts sshd in the background, so "/etc/init.d/sshd start" is actually asynchronous. The stop operation of init.d scripts usually use kill(1) and don't wait for the process(es) to exit, so those are usually asynchronous. I think we could say that the init.d scripts, pre-SMF, varied w.r.t. whether they are synchronous, and for what operations. In any case, IMO, svcadm start/stop should be: a) non-persistent (but with a warning about the non-persistence telling the user to use enable/disable for persistent behaviour), b) synchronous. And, also IMO, enable/disable need to have a flag to affect only the state on next boot. Nico --