From bf9f0e9f8901f0e9e960e367941d2ab53435f641 Mon Sep 17 00:00:00 2001 From: "M. Sean Finney" Date: Sun, 27 May 2007 13:46:32 +0000 Subject: added functions to utils_base: np_check_if_root() - returns nonzero if geteuid()==0 np_warn_if_not_root() - uses the above to print an informative warning added uses of these functions to check_dhcp and check_icmp. git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1718 f882894a-f735-0410-b71e-b25c423dba1c --- plugins-root/check_dhcp.c | 5 ++++- plugins-root/check_icmp.c | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'plugins-root') diff --git a/plugins-root/check_dhcp.c b/plugins-root/check_dhcp.c index 8559d634..7cb2d300 100644 --- a/plugins-root/check_dhcp.c +++ b/plugins-root/check_dhcp.c @@ -250,10 +250,13 @@ int main(int argc, char **argv){ int dhcp_socket; int result = STATE_UNKNOWN; + /* this plugin almost certainly needs root permissions. */ + np_warn_if_not_root(); + setlocale (LC_ALL, ""); bindtextdomain (PACKAGE, LOCALEDIR); textdomain (PACKAGE); - + if(process_arguments(argc,argv)!=OK){ usage4 (_("Could not parse arguments")); } diff --git a/plugins-root/check_icmp.c b/plugins-root/check_icmp.c index 7e3b00f3..7f9160c4 100644 --- a/plugins-root/check_icmp.c +++ b/plugins-root/check_icmp.c @@ -372,6 +372,9 @@ main(int argc, char **argv) int result; struct rta_host *host; + /* print a helpful error message if geteuid != 0 */ + np_warn_if_not_root(); + /* we only need to be setsuid when we get the sockets, so do * that before pointer magic (esp. on network data) */ icmp_sockerrno = udp_sockerrno = tcp_sockerrno = sockets = 0; -- cgit v1.2.3-74-g34f1