Sun Cluster Data Services Developer's Guide for Solaris OS

xfnts_stop Method

Because the xfnts_start method uses scds_pmf_start() to start the service under the PMF, xfnts_stop uses scds_pmf_stop() to stop the service.


Note –

The first call in xfnts_stop is to scds_initialize(), which performs some necessary housekeeping functions. scds_initialize() Function and the scds_initialize(3HA) man page contain more information.


The xfnts_stop method calls the svc_stop() method, which is defined in the xfnts.c file, as follows:

scds_syslog(LOG_ERR, "Issuing a stop request.");
   err = scds_pmf_stop(scds_handle,
       SCDS_PMF_TYPE_SVC, SCDS_PMF_SINGLE_INSTANCE, SIGTERM,
       scds_get_rs_stop_timeout(scds_handle));

   if (err != SCHA_ERR_NOERR) {
      scds_syslog(LOG_ERR,
          "Failed to stop HA-XFS.");
      return (1);
   }

   scds_syslog(LOG_INFO,
       "Successfully stopped HA-XFS.");
   return (SCHA_ERR_NOERR); /* Successfully stopped */

Note the following points about the call in svc_stop() to the scds_pmf_stop() function:


Note –

Before it exits, the xfnts_stop method calls scds_close() to reclaim resources that are allocated by scds_initialize(). scds_initialize() Function and the scds_close(3HA) man page contain more information.