Blob Blame History Raw
diff -urp audit-2.6.5.orig/src/auditd-config.c audit-2.6.5/src/auditd-config.c
--- audit-2.6.5.orig/src/auditd-config.c	2016-07-14 15:53:39.000000000 +0000
+++ audit-2.6.5/src/auditd-config.c	2017-01-20 15:59:31.719704789 +0000
@@ -841,8 +841,7 @@ static int log_format_parser(struct nv_p
 			if (config->log_format == LF_NOLOG) {
 				audit_msg(LOG_WARNING,
 				    "The NOLOG option to log_format is deprecated. Please use the write_logs option.");
-				if (config->log_format == LF_NOLOG &&
-					config->write_logs != 0)
+				if (config->write_logs != 0)
 					audit_msg(LOG_WARNING,
 					    "The NOLOG option is overriding the write_logs current setting.");
 				config->write_logs = 0;
diff -urp audit-2.6.5.orig/src/auditd-event.c audit-2.6.5/src/auditd-event.c
--- audit-2.6.5.orig/src/auditd-event.c	2017-01-20 15:54:57.969419865 +0000
+++ audit-2.6.5/src/auditd-event.c	2017-01-20 16:04:17.562133973 +0000
@@ -48,6 +48,8 @@
 extern volatile int stop;
 
 /* Local function prototypes */
+static void send_ack(const struct auditd_event *e, int ack_type,
+			const char *msg);
 static void write_to_log(const struct auditd_event *e);
 static void check_log_file_size(void);
 static void check_space_left(void);
@@ -496,7 +498,7 @@ void handle_event(struct auditd_event *e
 		if (config->write_logs == 0)
 			return;
 	}
-	if (!logging_suspended) {
+	if (!logging_suspended && config->write_logs) {
 		write_to_log(e);
 
 		/* See if we need to flush to disk manually */
@@ -537,7 +539,10 @@ void handle_event(struct auditd_event *e
 				}
 			}
 		}
-	}
+	} else if (!config->write_logs)
+		send_ack(e, AUDIT_RMW_TYPE_ACK, "");
+	// FIXME: When logging is suspended, what should remote do?
+	// Should probably be new response type
 }
 
 static void send_ack(const struct auditd_event *e, int ack_type,