tree 11d68bb08584fbbae02a7bf22599bdd67da4408e
parent bd414ee605ff3ac5fcd79f57269a897879ee4cde
author Jan Engelhardt <jengelh@medozas.de> 1269531285 +0100
committer Jan Engelhardt <jengelh@medozas.de> 1269532549 +0100

netfilter: xtables: change targets to return error code

Part of the transition of done by this semantic patch:
// <smpl>
@ rule1 @
struct xt_target ops;
identifier check;
@@
 ops.checkentry = check;

@@
identifier rule1.check;
@@
 check(...) { <...
-return true;
+return 0;
 ...> }

@@
identifier rule1.check;
@@
 check(...) { <...
-return false;
+return -EINVAL;
 ...> }
// </smpl>

Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
