[AUDIT] Allow filtering on system call success _or_ failure
authorDavid Woodhouse <dwmw2@shinybook.infradead.org>
Sat, 27 Aug 2005 09:25:43 +0000 (10:25 +0100)
committerDavid Woodhouse <dwmw2@shinybook.infradead.org>
Sat, 27 Aug 2005 09:25:43 +0000 (10:25 +0100)
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
kernel/auditsc.c

index 488ba3dea8bbf0e96993cb37a216d3481246c1ab..88696f639aab890140657aba7fcd2956ddfe6623 100644 (file)
@@ -440,8 +440,12 @@ static int audit_filter_rules(struct task_struct *tsk,
                                result = (ctx->return_code == value);
                        break;
                case AUDIT_SUCCESS:
-                       if (ctx && ctx->return_valid)
-                               result = (ctx->return_valid == AUDITSC_SUCCESS);
+                       if (ctx && ctx->return_valid) {
+                               if (value)
+                                       result = (ctx->return_valid == AUDITSC_SUCCESS);
+                               else
+                                       result = (ctx->return_valid == AUDITSC_FAILURE);
+                       }
                        break;
                case AUDIT_DEVMAJOR:
                        if (ctx) {