Ulogd2: ulogd2 warn when exiting on error

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

This patch adds a warning message to ulogd2 when it exits on error. It
simply tell to look at the configuration file.

BR,
-- 
Éric Leblond, eleblond@xxxxxx
Téléphone : 01 44 89 46 40, Fax : 01 44 89 45 01
INL, http://www.inl.fr
=== src/ulogd.c
==================================================================
--- src/ulogd.c	(revision 4880)
+++ src/ulogd.c	(revision 4881)
@@ -315,6 +315,13 @@
 	}
 }
 
+static void warn_and_exit(int daemonize)
+{
+	if (!daemonize)
+		fprintf(stderr, "Fatal error, check logfile.\n");
+	exit(1);
+}
+
 /* clean results (set all values to 0 and free pointers) */
 static void ulogd_clean_results(struct ulogd_pluginstance *pi)
 {
@@ -914,44 +921,44 @@
 	if (config_register_file(ulogd_configfile)) {
 		ulogd_log(ULOGD_FATAL, "error registering configfile \"%s\"\n",
 			  ulogd_configfile);
-		exit(1);
+		warn_and_exit(daemonize);
 	}
 	
 	/* parse config file */
 	if (parse_conffile("global", &ulogd_kset)) {
 		ulogd_log(ULOGD_FATAL, "parse_conffile\n");
-		exit(1);
+		warn_and_exit(daemonize);
 	}
 
 	if (llist_empty(&ulogd_pi_stacks)) {
 		ulogd_log(ULOGD_FATAL, 
 			  "not even a single working plugin stack\n");
-		exit(1);
+		warn_and_exit(daemonize);
 	}
 
 	if (change_uid) {
 		ulogd_log(ULOGD_NOTICE, "Changing UID / GID\n");
 		if (setgid(gid)) {
 			ulogd_log(ULOGD_FATAL, "can't set GID %u\n", gid);
-			exit(1);
+			warn_and_exit(daemonize);
 		}
 		if (setegid(gid)) {
 			ulogd_log(ULOGD_FATAL, "can't set effective GID %u\n",
 				  gid);
-			exit(1);
+			warn_and_exit(daemonize);
 		}
 		if (initgroups(user, gid)) {
 			ulogd_log(ULOGD_FATAL, "can't set user secondary GID\n");
-			exit(1);
+			warn_and_exit(daemonize);
 		}
 		if (setuid(uid)) {
 			ulogd_log(ULOGD_FATAL, "can't set UID %u\n", uid);
-			exit(1);
+			warn_and_exit(daemonize);
 		}
 		if (seteuid(uid)) {
 			ulogd_log(ULOGD_FATAL, "can't set effective UID %u\n",
 				  uid);
-			exit(1);
+			warn_and_exit(daemonize);
 		}
 	}
 

Attachment: signature.asc
Description: Ceci est une partie de message =?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e?=


[Index of Archives]     [Netfitler Users]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux