You have to consider the environment in which some of your applications above are running. There are security implications to running theses types of commands with PATHs that they are not expecting. A malicious user who has access to a directory early in the PATH may be able to substitute their own commands and gain access etc.
Startup scripts generally use full paths to the commands they want to run (some may set a restricted PATH) - this ensures that the expected commands are executed.
When invoking a service, the SCM doesn't use PATHS it uses manifests ( /var/svc/manifest/...
). Manifests are xml files and contain all the information required to define how to interact with a given service. Again, full paths to commands are used to ensure the expected commands are executed.
You can set a default PATH
(normal users) or SUPATH
(for root) in /etc/default/cron
. Again you should consider the security implications of doing so - it is much better to use full paths to commands and have the commands define their own PATH if required.
I believe that the default PATH that init passes to SMF and the init scripts is compiled into the init binary and cannot be changed. It is explicitly not read from /etc/default/init.