[PATCH] fix audit oops with invalid operator
authorAmy Griffis <amy.griffis@hp.com>
Tue, 1 Aug 2006 21:52:26 +0000 (17:52 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Thu, 3 Aug 2006 14:54:43 +0000 (10:54 -0400)
Michael C Thompson wrote:  [Tue Aug 01 2006, 02:36:36PM EDT]
> The trigger for this oops is:
> # auditctl -a exit,always -S pread64 -F 'inode<1'

Setting the err value will fix it.

Signed-off-by: Amy Griffis <amy.griffis@hp.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
kernel/auditfilter.c

index 5b4e16276ca05a4bd91512762a6f2fc86e5509a1..32420f91402896712a063c810fa64cbb97b18739 100644 (file)
@@ -442,6 +442,7 @@ static struct audit_entry *audit_rule_to_entry(struct audit_rule *rule)
                case AUDIT_EQUAL:
                        break;
                default:
+                       err = -EINVAL;
                        goto exit_free;
                }
        }
@@ -579,6 +580,7 @@ static struct audit_entry *audit_data_to_entry(struct audit_rule_data *data,
                case AUDIT_EQUAL:
                        break;
                default:
+                       err = -EINVAL;
                        goto exit_free;
                }
        }