Jelajahi Sumber

More changes for Solaris and some misc. fixes

John C. Frickson 9 tahun lalu
induk
melakukan
426f720683
9 mengubah file dengan 83 tambahan dan 74 penghapusan
  1. 39 33
      Makefile.in
  2. 4 4
      README.SSL.md
  3. 2 2
      build-aux/ax_nagios_get_paths
  4. 2 2
      configure
  5. 5 1
      src/check_nrpe.c
  6. 5 1
      src/nrpe.c
  7. 4 4
      startup/solaris-inetd.xml.in
  8. 21 26
      startup/solaris-init.xml.in
  9. 1 1
      uninstall.in

+ 39 - 33
Makefile.in

@@ -97,18 +97,19 @@ install-inetd:
 	@if test $(INETD_TYPE) = inetd; then \
 	@if test $(INETD_TYPE) = inetd; then \
 		$(EGREP) -q "^\W*nrpe\s+" $(INETD_DIR)/$(INETD_FILE) || \
 		$(EGREP) -q "^\W*nrpe\s+" $(INETD_DIR)/$(INETD_FILE) || \
 		   cat startup/$(SRC_INETD) >> $(INETD_DIR)/$(INETD_FILE); \
 		   cat startup/$(SRC_INETD) >> $(INETD_DIR)/$(INETD_FILE); \
-	elifif test $(INETD_TYPE) = systemd; then \
+	elif test $(INETD_TYPE) = systemd; then \
 		SRC_INETD_FILE=`echo "$(SRC_INETD)" | sed -e 's/socket/socket-svc/'`; \
 		SRC_INETD_FILE=`echo "$(SRC_INETD)" | sed -e 's/socket/socket-svc/'`; \
 		echo $(INSTALL) -m 644 startup/$$SRC_INETD_FILE $(INETD_DIR)/$(INIT_FILE); \
 		echo $(INSTALL) -m 644 startup/$$SRC_INETD_FILE $(INETD_DIR)/$(INIT_FILE); \
 		$(INSTALL) -m 644 startup/$$SRC_INETD_FILE $(INETD_DIR)/$(INIT_FILE); \
 		$(INSTALL) -m 644 startup/$$SRC_INETD_FILE $(INETD_DIR)/$(INIT_FILE); \
-	elif test $(INETD_TYPE) = smf10 -o $(INETD_TYPE) = smf11; then \
-		echo svccfg import startup/$(SRC_INETD); \
-		svccfg import startup/$(SRC_INETD); \
-		echo svcadm enable nrpe; \
-		svcadm enable nrpe; \
 	else\
 	else\
 		echo $(INSTALL) -m 644 startup/$(SRC_INETD) $(INETD_DIR)/$(INETD_FILE); \
 		echo $(INSTALL) -m 644 startup/$(SRC_INETD) $(INETD_DIR)/$(INETD_FILE); \
 		$(INSTALL) -m 644 startup/$(SRC_INETD) $(INETD_DIR)/$(INETD_FILE); \
 		$(INSTALL) -m 644 startup/$(SRC_INETD) $(INETD_DIR)/$(INETD_FILE); \
+		if test $(INETD_TYPE) = smf10 -o $(INETD_TYPE) = smf11; then \
+			echo svccfg import $(INETD_DIR)/$(INETD_FILE); \
+			svccfg import $(INETD_DIR)/$(INETD_FILE); \
+			echo svcadm enable nrpe; \
+			svcadm enable nrpe; \
+		fi;\
 	fi
 	fi
 	@$(EGREP) -q "^nrpe[\t ]+5666/tcp" /etc/services || \
 	@$(EGREP) -q "^nrpe[\t ]+5666/tcp" /etc/services || \
 		echo "***** MAKE SURE 'nrpe 5666/tcp' IS IN YOUR /etc/services FILE"
 		echo "***** MAKE SURE 'nrpe 5666/tcp' IS IN YOUR /etc/services FILE"
@@ -127,8 +128,10 @@ install-init:
 		echo $(INSTALL) -m 644 startup/$(SRC_INIT) $(INIT_DIR)/$(INIT_FILE); \
 		echo $(INSTALL) -m 644 startup/$(SRC_INIT) $(INIT_DIR)/$(INIT_FILE); \
 		$(INSTALL) -m 644 startup/$(SRC_INIT) $(INIT_DIR)/$(INIT_FILE); \
 		$(INSTALL) -m 644 startup/$(SRC_INIT) $(INIT_DIR)/$(INIT_FILE); \
 	elif test $(INETD_TYPE) = smf10 -o $(INETD_TYPE) = smf11; then \
 	elif test $(INETD_TYPE) = smf10 -o $(INETD_TYPE) = smf11; then \
-		echo svccfg import startup/$(SRC_INIT); \
-		svccfg import startup/$(SRC_INIT); \
+		echo $(INSTALL) -m 644 startup/$(SRC_INIT) $(INIT_DIR)/$(INIT_FILE); \
+		$(INSTALL) -m 644 startup/$(SRC_INIT) $(INIT_DIR)/$(INIT_FILE); \
+		echo svccfg import $(INIT_DIR)/$(INIT_FILE); \
+		svccfg import $(INIT_DIR)/$(INIT_FILE); \
 		echo svcadm enable nrpe; \
 		echo svcadm enable nrpe; \
 		svcadm enable nrpe; \
 		svcadm enable nrpe; \
 	else\
 	else\
@@ -140,17 +143,17 @@ install-config:
 	$(INSTALL) -m 775 $(NAGIOS_INSTALL_OPTS) -d $(CFGDIR)
 	$(INSTALL) -m 775 $(NAGIOS_INSTALL_OPTS) -d $(CFGDIR)
 	$(INSTALL) -m 644 $(NRPE_INSTALL_OPTS) sample-config/nrpe.cfg $(CFGDIR)
 	$(INSTALL) -m 644 $(NRPE_INSTALL_OPTS) sample-config/nrpe.cfg $(CFGDIR)
 
 
-install-group:
+install-groups:
 	@if test $(DIST) = aix; then\
 	@if test $(DIST) = aix; then\
 		echo mkgroup $(NAGIOS_GROUP);\
 		echo mkgroup $(NAGIOS_GROUP);\
-		mkgroup $(NAGIOS_GROUP);\
+		mkgroup $(NAGIOS_GROUP) || true;\
 		echo mkgroup $(NRPE_GROUP);\
 		echo mkgroup $(NRPE_GROUP);\
-		mkgroup $(NRPE_GROUP);\
+		mkgroup $(NRPE_GROUP) || true;\
 	elif test $(DIST) = hpux -o $(DIST) = solaris; then\
 	elif test $(DIST) = hpux -o $(DIST) = solaris; then\
 		echo groupadd $(NAGIOS_GROUP);\
 		echo groupadd $(NAGIOS_GROUP);\
-		groupadd $(NAGIOS_GROUP);\
+		groupadd $(NAGIOS_GROUP) || true;\
 		echo groupadd $(NRPE_GROUP);\
 		echo groupadd $(NRPE_GROUP);\
-		groupadd $(NRPE_GROUP);\
+		groupadd $(NRPE_GROUP) || true;\
 	elif test $(OPSYS) = osx; then\
 	elif test $(OPSYS) = osx; then\
 		newid=`dscl . -list /Groups gid | tr -s ' ' | cut -d' ' -f2 | sort -n | tail -1`;\
 		newid=`dscl . -list /Groups gid | tr -s ' ' | cut -d' ' -f2 | sort -n | tail -1`;\
 		newid=`expr 1 + $newid`;\
 		newid=`expr 1 + $newid`;\
@@ -162,27 +165,27 @@ install-group:
 		dscl . -create /Groups/$(NRPE_GROUP) gid $$newid;\
 		dscl . -create /Groups/$(NRPE_GROUP) gid $$newid;\
 	elif test $(DIST) = "freebsd"; then\
 	elif test $(DIST) = "freebsd"; then\
 		echo pw add group $(NAGIOS_GROUP);\
 		echo pw add group $(NAGIOS_GROUP);\
-		pw add group $(NAGIOS_GROUP);\
+		pw add group $(NAGIOS_GROUP) || true;\
 		echo pw add group $(NRPE_GROUP);\
 		echo pw add group $(NRPE_GROUP);\
-		pw add group $(NRPE_GROUP);\
+		pw add group $(NRPE_GROUP) || true;\
 	else\
 	else\
 		echo groupadd -r $(NAGIOS_GROUP);\
 		echo groupadd -r $(NAGIOS_GROUP);\
-		groupadd -r $(NAGIOS_GROUP);\
+		groupadd -r $(NAGIOS_GROUP) || true;\
 		echo groupadd -r $(NRPE_GROUP);\
 		echo groupadd -r $(NRPE_GROUP);\
-		groupadd -r $(NRPE_GROUP);\
+		groupadd -r $(NRPE_GROUP) || true;\
 	fi
 	fi
 
 
-install-user:
+install-users:
 	@if test $(DIST) = aix; then\
 	@if test $(DIST) = aix; then\
 		echo useradd -g $(NAGIOS_GROUP) $(NAGIOS_USER);\
 		echo useradd -g $(NAGIOS_GROUP) $(NAGIOS_USER);\
-		useradd -g $(NAGIOS_GROUP) $(NAGIOS_USER);\
+		useradd -g $(NAGIOS_GROUP) $(NAGIOS_USER) || true;\
 		echo useradd -g $(NRPE_GROUP) $(NRPE_USER);\
 		echo useradd -g $(NRPE_GROUP) $(NRPE_USER);\
-		useradd -g $(NRPE_GROUP) $(NRPE_USER);\
+		useradd -g $(NRPE_GROUP) $(NRPE_USER) || true;\
 	elif test $(DIST) = hpux -o $(DIST) = solaris; then\
 	elif test $(DIST) = hpux -o $(DIST) = solaris; then\
-		echo useradd -g $(NAGIOS_GROUP) $(NAGIOS_USER);\
-		useradd -g $(NAGIOS_GROUP) $(NAGIOS_USER);\
-		echo useradd -g $(NRPE_GROUP) $(NRPE_USER);\
-		useradd -g $(NRPE_GROUP) $(NRPE_USER);\
+		echo useradd -m -g $(NAGIOS_GROUP) $(NAGIOS_USER);\
+		useradd -m -g $(NAGIOS_GROUP) $(NAGIOS_USER) || true;\
+		echo useradd -m -g $(NRPE_GROUP) $(NRPE_USER);\
+		useradd -m -g $(NRPE_GROUP) $(NRPE_USER) || true;\
 	elif test $(OPSYS) = osx; then\
 	elif test $(OPSYS) = osx; then\
 		newid=`dscl . -list /Users UniqueID | tr -s ' ' | cut -d' ' -f2 | sort -n | tail -1`;\
 		newid=`dscl . -list /Users UniqueID | tr -s ' ' | cut -d' ' -f2 | sort -n | tail -1`;\
 		newid=`expr 1 + $newid`;\
 		newid=`expr 1 + $newid`;\
@@ -201,19 +204,19 @@ install-user:
 		dscl . -append /Groups/$(NRPE_GROUP) GroupMembership $(NRPE_USER);\
 		dscl . -append /Groups/$(NRPE_GROUP) GroupMembership $(NRPE_USER);\
 	elif test $(DIST) = "freebsd"; then\
 	elif test $(DIST) = "freebsd"; then\
 		echo pw add user -g $(NAGIOS_GROUP) $(NAGIOS_USER);\
 		echo pw add user -g $(NAGIOS_GROUP) $(NAGIOS_USER);\
-		pw add user -g $(NAGIOS_GROUP) $(NAGIOS_USER);\
+		pw add user -g $(NAGIOS_GROUP) $(NAGIOS_USER) || true;\
 		echo pw add user -g $(NRPE_GROUP) $(NRPE_USER);\
 		echo pw add user -g $(NRPE_GROUP) $(NRPE_USER);\
-		pw add user -g $(NRPE_GROUP) $(NRPE_USER);\
+		pw add user -g $(NRPE_GROUP) $(NRPE_USER) || true;\
 	else\
 	else\
 		echo useradd -r -g $(NAGIOS_GROUP) $(NAGIOS_USER);\
 		echo useradd -r -g $(NAGIOS_GROUP) $(NAGIOS_USER);\
-		useradd -r -g $(NAGIOS_GROUP) $(NAGIOS_USER);\
+		useradd -r -g $(NAGIOS_GROUP) $(NAGIOS_USER) || true;\
 		echo useradd -r -g $(NRPE_GROUP) $(NRPE_USER);\
 		echo useradd -r -g $(NRPE_GROUP) $(NRPE_USER);\
-		useradd -r -g $(NRPE_GROUP) $(NRPE_USER);\
+		useradd -r -g $(NRPE_GROUP) $(NRPE_USER) || true;\
 	fi
 	fi
 
 
-install-group-user:
-	$(MAKE) install-group
-	$(MAKE) install-user
+install-groups-users:
+	$(MAKE) install-groups
+	$(MAKE) install-users
 
 
 
 
 solaris-package:
 solaris-package:
@@ -235,8 +238,11 @@ distclean: clean
 	rm -rf autom4te.cache
 	rm -rf autom4te.cache
 	rm -f config.log config.status config.cache sample-config/nrpe.cfg $(SRC_INCLUDE)/config.h
 	rm -f config.log config.status config.cache sample-config/nrpe.cfg $(SRC_INCLUDE)/config.h
 	rm -f startup/bsd-init startup/debian-init startup/default-init startup/default-inetd
 	rm -f startup/bsd-init startup/debian-init startup/default-init startup/default-inetd
-	rm -f startup/default-service startup/default-xinetd startup/mac-org.nagios.PKG_NAME.plist
-	rm -f startup/openrc-conf startup/openrc-init startup/solaris-PKG_NAME.xml
+	rm -f startup/default-service startup/default-socket startup/default-socket-svc
+	rm -f startup/default-xinetd startup/mac-org.nagios.PKG_NAME.plist startup/newbsd-init
+	rm -f startup/openrc-conf startup/openrc-init startup/rh-upstart-init
+	rm -f startup/solaris-init.xml startup/solaris-inetd.xml startup/tmpfile.conf
+	rm -f startup/upstart-init
 	rm -f Makefile
 	rm -f Makefile
 
 
 devclean: distclean
 devclean: distclean

+ 4 - 4
README.SSL.md

@@ -41,7 +41,7 @@ key generated.
 
 
 The NRPE configuration file has added new SSL/TLS options. The
 The NRPE configuration file has added new SSL/TLS options. The
 defaults currently will allow old check_nrpe clients to continue to
 defaults currently will allow old check_nrpe clients to continue to
-connect to the nrpe daemon, but can report on "old style" 
+connect to the nrpe daemon, but can report on "old style"
 connections, or enforce more secure communication as your migration
 connections, or enforce more secure communication as your migration
 progresses. The new options are in the "SSL/TLS OPTIONS" section of
 progresses. The new options are in the "SSL/TLS OPTIONS" section of
 nrpe.cfg, about two-thirds of the way down.
 nrpe.cfg, about two-thirds of the way down.
@@ -241,7 +241,7 @@ Now, sign the CSRs. As root, do the following:
            -out server_certs/db_server.pem
            -out server_certs/db_server.pem
         chown root.nagios server_certs/db_server.pem
         chown root.nagios server_certs/db_server.pem
         chmod 440 server_certs/db_server.pem
         chmod 440 server_certs/db_server.pem
-        openssl ca -days 365 -notext -md sha256
+        openssl ca -days 365 -notext -md sha256 \
            -keyfile ca/ca_key.pem -cert ca/ca_cert.pem \
            -keyfile ca/ca_key.pem -cert ca/ca_cert.pem \
            -in server_certs/bobs_workstation.csr \
            -in server_certs/bobs_workstation.csr \
            -out server_certs/bobs_workstation.pem
            -out server_certs/bobs_workstation.pem
@@ -264,10 +264,10 @@ running the check_nrpe program.
            -out nag_serv.csr -nodes
            -out nag_serv.csr -nodes
 
 
         cd /usr/local/nagios/etc/ssl
         cd /usr/local/nagios/etc/ssl
-        openssl ca -extension usr_cert -days 365 -notext -md sha256 \
+        openssl ca -extensions usr_cert -days 365 -notext -md sha256 \
            -keyfile ca/ca_key.pem -cert ca/ca_cert.pem \
            -keyfile ca/ca_key.pem -cert ca/ca_cert.pem \
            -in client_certs/nag_serv.csr \
            -in client_certs/nag_serv.csr \
-           -out client_certs/nag_serv.pem \
+           -out client_certs/nag_serv.pem
         chown root.nagios client_certs/nag_serv.pem
         chown root.nagios client_certs/nag_serv.pem
         chmod 440 client_certs/nag_serv.pem
         chmod 440 client_certs/nag_serv.pem
 
 

+ 2 - 2
build-aux/ax_nagios_get_paths

@@ -698,9 +698,9 @@ AS_CASE([$inetd_type],
 
 
 	[smf*],
 	[smf*],
 		if test $init_type = smf10; then
 		if test $init_type = smf10; then
-			inetddir=${inetddir="/var/svc/manifest/network"}
+			inetddir=${inetddir="/var/svc/manifest/network/nagios"}
 		else
 		else
-			inetddir=${inetddir="/lib/svc/manifest/network"}
+			inetddir=${inetddir="/lib/svc/manifest/network/nagios"}
 		fi
 		fi
 		inetdname=${inetdname="$PKG_NAME.xml"},
 		inetdname=${inetdname="$PKG_NAME.xml"},
 
 

+ 2 - 2
configure

@@ -3763,9 +3763,9 @@ case $inetd_type in #(
 		netdname=${inetdname="$PKG_NAME.socket"} ;; #(
 		netdname=${inetdname="$PKG_NAME.socket"} ;; #(
   smf*) :
   smf*) :
     if test $init_type = smf10; then
     if test $init_type = smf10; then
-			inetddir=${inetddir="/var/svc/manifest/network"}
+			inetddir=${inetddir="/var/svc/manifest/network/nagios"}
 		else
 		else
-			inetddir=${inetddir="/lib/svc/manifest/network"}
+			inetddir=${inetddir="/lib/svc/manifest/network/nagios"}
 		fi
 		fi
 		inetdname=${inetdname="$PKG_NAME.xml"} ;; #(
 		inetdname=${inetdname="$PKG_NAME.xml"} ;; #(
   #	[upstart],
   #	[upstart],

+ 5 - 1
src/check_nrpe.c

@@ -671,9 +671,13 @@ int connect_to_remote()
 			syslog(LOG_NOTICE, "Remote %s - SSL Version: %s", rem_host, SSL_get_version(ssl));
 			syslog(LOG_NOTICE, "Remote %s - SSL Version: %s", rem_host, SSL_get_version(ssl));
 
 
 		if (sslprm.log_opts & SSL_LogCipher) {
 		if (sslprm.log_opts & SSL_LogCipher) {
+# if defined(__sun) || defined(_AIX) || defined(__hpux)
+			SSL_CIPHER *c = SSL_get_current_cipher(ssl);
+# else
 			const SSL_CIPHER *c = SSL_get_current_cipher(ssl);
 			const SSL_CIPHER *c = SSL_get_current_cipher(ssl);
+# endif
 			syslog(LOG_NOTICE, "Remote %s - %s, Cipher is %s", rem_host,
 			syslog(LOG_NOTICE, "Remote %s - %s, Cipher is %s", rem_host,
-				   (char*)SSL_CIPHER_get_version(c), (char*)SSL_CIPHER_get_name(c));
+				   SSL_CIPHER_get_version(c), SSL_CIPHER_get_name(c));
 		}
 		}
 
 
 		if ((sslprm.log_opts & SSL_LogIfClientCert) || (sslprm.log_opts & SSL_LogCertDetails)) {
 		if ((sslprm.log_opts & SSL_LogIfClientCert) || (sslprm.log_opts & SSL_LogCertDetails)) {

+ 5 - 1
src/nrpe.c

@@ -1728,7 +1728,11 @@ void init_handle_conn(void)
 int handle_conn_ssl(int sock, void *ssl_ptr)
 int handle_conn_ssl(int sock, void *ssl_ptr)
 {
 {
 #ifdef HAVE_SSL
 #ifdef HAVE_SSL
+#if defined(__sun) || defined(_AIX) || defined(__hpux)
+	SSL_CIPHER *c;
+#else
 	const SSL_CIPHER *c;
 	const SSL_CIPHER *c;
+#endif
 	char      buffer[MAX_INPUT_BUFFER];
 	char      buffer[MAX_INPUT_BUFFER];
 	SSL      *ssl = (SSL*)ssl_ptr;
 	SSL      *ssl = (SSL*)ssl_ptr;
 	X509     *peer;
 	X509     *peer;
@@ -1772,7 +1776,7 @@ int handle_conn_ssl(int sock, void *ssl_ptr)
 	if (sslprm.log_opts & SSL_LogCipher) {
 	if (sslprm.log_opts & SSL_LogCipher) {
 		c = SSL_get_current_cipher(ssl);
 		c = SSL_get_current_cipher(ssl);
 		syslog(LOG_NOTICE, "Remote %s - %s, Cipher is %s", remote_host,
 		syslog(LOG_NOTICE, "Remote %s - %s, Cipher is %s", remote_host,
-			   (char*)SSL_CIPHER_get_version(c), (char*)SSL_CIPHER_get_name(c));
+			   SSL_CIPHER_get_version(c), SSL_CIPHER_get_name(c));
 	}
 	}
 
 
 	if ((sslprm.log_opts & SSL_LogIfClientCert)
 	if ((sslprm.log_opts & SSL_LogIfClientCert)

+ 4 - 4
startup/solaris-inetd.xml.in

@@ -12,8 +12,6 @@
 		type='service'
 		type='service'
 		version='1'>
 		version='1'>
 
 
-		<create-default-instance enabled='true' />
-
 		<restarter>
 		<restarter>
 			<service_fmri value='svc:/network/inetd:default' />
 			<service_fmri value='svc:/network/inetd:default' />
 		</restarter>
 		</restarter>
@@ -30,11 +28,11 @@
 			type='method'
 			type='method'
 			name='inetd_start'
 			name='inetd_start'
 			exec='@sbindir@/nrpe -c @pkgsysconfdir@/nrpe.cfg -i'
 			exec='@sbindir@/nrpe -c @pkgsysconfdir@/nrpe.cfg -i'
-			timeout_seconds='0'
+			timeout_seconds='0'>
 			<method_context>
 			<method_context>
 				<method_credential user='@nrpe_user@' group='@nrpe_group@'/>
 				<method_credential user='@nrpe_user@' group='@nrpe_group@'/>
 			</method_context>
 			</method_context>
-		/>
+		</exec_method>
 
 
 		<exec_method
 		<exec_method
 			type='method'
 			type='method'
@@ -69,6 +67,8 @@
 				value='solaris.smf.manage.nrpe'/>
 				value='solaris.smf.manage.nrpe'/>
 		</property_group>
 		</property_group>
 
 
+		<instance name='default' enabled='true' />
+
 		<stability value='Unstable' />
 		<stability value='Unstable' />
 
 
 		<template>
 		<template>

+ 21 - 26
startup/solaris-init.xml.in

@@ -32,40 +32,45 @@
 			<service_fmri value='svc:/system/filesystem/autofs' />
 			<service_fmri value='svc:/system/filesystem/autofs' />
 		</dependency>
 		</dependency>
 
 
-		<dependency name='net-loopback'
+		<dependency
+			name='net-loopback'
 			grouping='require_all'
 			grouping='require_all'
 			restart_on='none'
 			restart_on='none'
 			type='service'>
 			type='service'>
 			<service_fmri value='svc:/network/loopback' />
 			<service_fmri value='svc:/network/loopback' />
 		</dependency>
 		</dependency>
 
 
-		<dependency name='net-physical'
+		<dependency
+			name='net-physical'
 			grouping='require_all'
 			grouping='require_all'
 			restart_on='none'
 			restart_on='none'
 			type='service'>
 			type='service'>
 			<service_fmri value='svc:/network/physical' />
 			<service_fmri value='svc:/network/physical' />
 		</dependency>
 		</dependency>
 
 
-		<dependency name='cryptosvc'
+		<dependency
+			name='cryptosvc'
 			grouping='require_all'
 			grouping='require_all'
 			restart_on='none'
 			restart_on='none'
 			type='service'>
 			type='service'>
 			<service_fmri value='svc:/system/cryptosvc' />
 			<service_fmri value='svc:/system/cryptosvc' />
 		</dependency>
 		</dependency>
 
 
-		<dependency name='utmp'
+		<dependency
+			name='utmp'
 			grouping='require_all'
 			grouping='require_all'
 			restart_on='none'
 			restart_on='none'
 			type='service'>
 			type='service'>
 			<service_fmri value='svc:/system/utmp' />
 			<service_fmri value='svc:/system/utmp' />
 		</dependency>
 		</dependency>
 
 
-		<dependency name='config_data'
+		<dependency
+			name='config_data'
 			grouping='require_all'
 			grouping='require_all'
 			restart_on='restart'
 			restart_on='restart'
 			type='path'>
 			type='path'>
 			<service_fmri
 			<service_fmri
-			    value='file://localhost/pkg@sysconfdir@/nrpe.cfg' />
+			    value='file://localhost@sysconfdir@/nrpe.cfg' />
 		</dependency>
 		</dependency>
 
 
 		<dependency
 		<dependency
@@ -80,20 +85,18 @@
 			name='nrpe_multi-user-server'
 			name='nrpe_multi-user-server'
 			grouping='optional_all'
 			grouping='optional_all'
 			restart_on='none'>
 			restart_on='none'>
-				<service_fmri
-				    value='svc:/milestone/multi-user-server' />
+			<service_fmri value='svc:/milestone/multi-user-server'/>
 		</dependent>
 		</dependent>
 
 
-		<method_context>
-			<method_credential user='@nrpe_user@' group='@nrpe_group@'/>
-		</method_context>
-
 		<exec_method
 		<exec_method
 			type='method'
 			type='method'
 			name='start'
 			name='start'
 			exec='@sbindir@/nrpe -c @pkgsysconfdir@/nrpe.cfg -f'
 			exec='@sbindir@/nrpe -c @pkgsysconfdir@/nrpe.cfg -f'
-			timeout_seconds='60'
-		/>
+			timeout_seconds='60'>
+			<method_context>
+				<method_credential user='@nrpe_user@' group='@nrpe_group@'/>
+			</method_context>
+		</exec_method>
 
 
 		<exec_method
 		<exec_method
 			type='method'
 			type='method'
@@ -108,25 +111,17 @@
 			timeout_seconds='60'/>
 			timeout_seconds='60'/>
 
 
 		<property_group name='startd' type='framework'>
 		<property_group name='startd' type='framework'>
-			<propval name='ignore_error'
-				type='astring'
-				value='core,signal' />
+			<propval name='ignore_error' type='astring' value='core,signal'/>
 		</property_group>
 		</property_group>
 
 
 		<property_group name='general' type='framework'>
 		<property_group name='general' type='framework'>
-			<propval name='enabled'
-				type='boolean'
-				value='true'/>
-			<propval name='action_authorization'
-				type='astring'
+			<propval name='enabled' type='boolean' value='true'/>
+			<propval name='action_authorization' type='astring'
 				value='solaris.smf.manage.nrpe'/>
 				value='solaris.smf.manage.nrpe'/>
-			<propval name='value_authorization'
-				type='astring'
+			<propval name='value_authorization' type='astring'
 				value='solaris.smf.manage.nrpe'/>
 				value='solaris.smf.manage.nrpe'/>
 		</property_group>
 		</property_group>
 
 
-		<instance name='default' enabled='true' />
-
 		<stability value='Unstable' />
 		<stability value='Unstable' />
 
 
 		<template>
 		<template>

+ 1 - 1
uninstall.in

@@ -308,7 +308,7 @@ rm_user() {
 	elif test ${DIST} = "freebsd"; then
 	elif test ${DIST} = "freebsd"; then
 		pw del user ${USERID}
 		pw del user ${USERID}
 	else
 	else
-		userdel ${USERID}
+		userdel -r ${USERID}
 	fi
 	fi
 }
 }