packages: nagios-plugin-check_asterisk_skype/check_asterisk_skype - avoid i...

glen glen at pld-linux.org
Mon Mar 1 16:14:55 CET 2010


Author: glen                         Date: Mon Mar  1 15:14:54 2010 GMT
Module: packages                      Tag: HEAD
---- Log message:
- avoid invoking shell, thx samchi

---- Files affected:
packages/nagios-plugin-check_asterisk_skype:
   check_asterisk_skype (1.1 -> 1.2) 

---- Diffs:

================================================================
Index: packages/nagios-plugin-check_asterisk_skype/check_asterisk_skype
diff -u packages/nagios-plugin-check_asterisk_skype/check_asterisk_skype:1.1 packages/nagios-plugin-check_asterisk_skype/check_asterisk_skype:1.2
--- packages/nagios-plugin-check_asterisk_skype/check_asterisk_skype:1.1	Mon Mar  1 16:02:53 2010
+++ packages/nagios-plugin-check_asterisk_skype/check_asterisk_skype	Mon Mar  1 16:14:49 2010
@@ -26,8 +26,20 @@
 }
 
 sub check_skype_license {
-	open(my $fh , "asterisk -rx 'skype show licenses' 2>&1 |") or die $!;
-	my $channels = 0;
+
+	my $pid = open(my $fh, '-|');
+	if ($pid == 0) {
+		# child
+		# redirect stderr
+		open STDERR, '>&STDOUT';
+		exec('asterisk', '-rx', 'skype show licenses') or die $!;
+		die("could not execute asterisk");
+
+	} elsif($pid == -1) {
+		die("fork() failed");
+	}
+
+	# parent
 	while (<$fh>) {
 		chomp;
 
@@ -52,7 +64,7 @@
 			return;
 		}
 	}
-	close $fh;
+	close $fh || die "asterisk exited with: $?\n";
 }
 
 #####################################################################
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/nagios-plugin-check_asterisk_skype/check_asterisk_skype?r1=1.1&r2=1.2&f=u



More information about the pld-cvs-commit mailing list