Mercurial > illumos > illumos-gate
changeset 3157:4bc139971e45
6493982 "routeadm -u" should restart running routing daemon services
6495324 SUNWroutr package doesn't have a copyright file
author | amaguire |
---|---|
date | Wed, 22 Nov 2006 12:50:53 -0800 |
parents | 30109e935ec8 |
children | f30a3849aa23 |
files | usr/src/cmd/cmd-inet/usr.sbin/routeadm/routeadm.c usr/src/pkgdefs/SUNWroutr/Makefile usr/src/pkgdefs/SUNWroutr/prototype_com |
diffstat | 3 files changed, 18 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/usr/src/cmd/cmd-inet/usr.sbin/routeadm/routeadm.c Wed Nov 22 11:47:19 2006 -0800 +++ b/usr/src/cmd/cmd-inet/usr.sbin/routeadm/routeadm.c Wed Nov 22 12:50:53 2006 -0800 @@ -1491,6 +1491,11 @@ (void) smf_refresh_instance(RA_INSTANCE_ROUTING_SETUP); } else { /* + * Refresh here to get latest property values prior + * to starting daemon. + */ + (void) smf_refresh_instance(inst_fmri); + /* * For current changes (result of -u), we * enable/disable depending on persistent value * stored in general/enabled. Here we disable @@ -1506,7 +1511,17 @@ myname, scf_strerror(scf_error())); return (-1); } - (void) smf_refresh_instance(inst_fmri); + if (current_state_enabled && persistent_state_enabled) { + /* + * Instance was already enabled, so we restart + * to get latest property values. This covers + * the case where users update properties + * via routeadm -m, and issue an update. The + * daemon should be running with the latest + * property values. + */ + (void) smf_restart_instance(inst_fmri); + } } } return (0);